다음을 통해 공유


Azure Sphere 문제 해결

설치 및 설치 중에 발생할 수 있는 문제에 대한 몇 가지 문제 해결 단계는 다음과 같습니다.

디바이스 통신 문제

호스트 컴퓨터에서 디바이스에 연결하지 못하는 경우 여러 가지 이유로 발생할 수 있으며 어떤 도구 또는 애플리케이션에서 디바이스를 발견했는지에 따라 몇 가지 오류 메시지가 트리거될 수 있습니다. 다음 오류 메시지는 연결 실패를 나타낼 수 있습니다.

  • An error occurred. Please check your device is connected and your PC has been configured correctly, then retry.
  • Could not connect to the device. Check if your device is connected to the PC. The device may be unresponsive if it is applying an Azure Sphere operating system update; wait a few minutes and then retry. If this issue persists, try uninstalling and reinstalling the Azure Sphere SDK.
  • An unexpected issue occurred. Please try again; if the issue persists, please refer to aka.ms/azurespheresupport for troubleshooting suggestions and support.
  • Failed to retrieve device ID from attached device: 'Could not connect to the device; please ensure it is attached.'
  • Failed to establish communication with device after recovery.

디바이스 통신 문제를 일으킬 수 있는 세 가지 구성 요소가 있습니다. (1) 명령줄 인터페이스 자체; (2) 디바이스와의 통신을 용이하게 하는 DCS(디바이스 통신 서비스) 및 (3) 디바이스.

원인을 격리하려면 다음 진단 단계를 수행합니다.

  1. 디바이스와 직접 통신할 수 있는지 확인합니다. https://192.168.35.2/status 웹 브라우저에서 로 이동합니다. 표시된 모든 SSL 경고를 무시하고 해제합니다. 웹 브라우저 창에 다음과 유사한 {"uptime":56} 출력이 표시됩니다.

참고

를 사용하여 curl https://192.168.35.2/status --insecure명령줄에서 이 단계를 수행할 수도 있습니다.

참고

PowerShell(v6 이상) Invoke-WebRequest https://192.168.35.2/status -SkipCertificateCheck에서 이 단계를 수행할 수도 있습니다.

  1. 디바이스 통신 서비스에서 디바이스를 감지했는지 확인합니다. 웹 브라우저에서 으로 http://localhost:48938/api/service/devices 이동하여 하나 이상의 디바이스가 JSON 출력에 표시되는지 확인합니다.

경고

Linux DCS는 SDK 릴리스 23.05 이상에만 포함되어 있습니다. SDK 버전 22.11 이하의 레거시 문제 해결 단계를 따릅니다.

참고

를 통해 Invoke-WebRequest http://localhost:48938/api/service/devicesPowerShell에서 이 단계를 수행할 수도 있습니다.

디바이스와 직접 통신할 수 없으며 DCS에서 디바이스가 검색되지 않음

디바이스와의 연결을 설정할 수 없고(1단계) DCS(2단계)에서 디바이스를 검색할 수 없는 경우 실제 디바이스 구성에 문제가 있을 수 있습니다.

첫째, 검사 디바이스가 머신에서 검색되었습니다.

터미널에서:

  1. sudo lsusb를 실행합니다. Future Technology Devices International, Ltd FT4232H Quad HS USB-UART/FIFO IC가 출력에 표시되는지 확인합니다.

PowerShell 창 사용:

  1. Get-PnpDevice -PresentOnly | Where-Object { $_를 실행합니다. InstanceId -match '^USB' }. MSFT MT3620 Std 인터페이스가 출력에 표시되는지 확인합니다.

이전 명령이 예상 출력을 반환 하지 않으면 디바이스를 다른 USB 포트에 연결합니다. 그래도 문제가 resolve 않으면 디바이스에 점퍼가 올바르게 구성되어 검사. 예를 들어 Seeed MT3620 Development Kits는 기본 전원 공급 장치에서 시계를 구동하는 J3의 핀 2와 3에 걸쳐 점퍼 헤더가 있는 공장에서 배송됩니다. 헤더가 삭제되거나 제거되지 않은지 확인합니다.

디바이스와 직접 통신할 수 없지만 DCS에서 디바이스가 검색됨

디바이스와의 연결을 설정할 수 없지만(1단계) DCS(2단계)에서 디바이스를 검색한 경우 디바이스 또는 디바이스 통신 서비스가 잘못된 상태일 수 있습니다.

방금 디바이스를 인터넷에 연결했고 디바이스의 운영 체제가 만료된 경우 디바이스가 OS 업데이트를 적용하고 있을 수 있습니다. 시간이 릴리스 기간과 일치하는 경우 디바이스가 OS 업데이트를 수행할 가능성도 적습니다. 운영 체제 업데이트 중에는 디바이스와 통신할 수 없습니다.

디바이스가 최신 상태이거나 인터넷에 연결되어 있지 않은 것으로 의심되는 경우 다음으로 가장 좋은 옵션은 디바이스를 분리하고 PC에 다시 연결하는 것입니다. 이렇게 하면 DCS가 디바이스에 대한 연결을 갱신하고 디바이스가 초기 상태로 다시 설정됩니다.

디바이스를 분리하고 다시 연결할 수 없는 경우 다음으로 가장 좋은 옵션은 DCS를 다시 시작하는 것입니다. 터미널에서:

  1. 를 실행합니다 sudo azspheredctl restart. 명령이 성공적으로 완료되었는지 확인합니다.
    1. 명령이 실패하면 를 실행합니다 sudo systemctl restart azsphered.

디바이스를 분리하고 다시 연결할 수 없는 경우 다음으로 가장 좋은 옵션은 DCS에 대한 rescan 명령을 발급하는 것입니다. 이 명령을 받으면 DCS는 MT3620과 통신하는 데 사용되는 FTDI 인터페이스 칩을 순환하고 다시 설정합니다. PowerShell 창 사용:

  1. azsphere device rescan-attached 실행

이제 처음에 시도한 명령을 다시 실행합니다. 그래도 문제가 해결되지 않으면 DCS를 다시 시작하는 것이 가장 좋습니다. 관리자 수준 Powershell 창에서:

  1. 를 실행합니다 Restart-Service -Name AzureSphereDeviceCommunicationService. 명령이 성공적으로 완료되었는지 확인합니다.

또는 그래픽 사용자 인터페이스를 사용하여 DCS를 다시 시작합니다.

  1. 시작을 누르고 서비스를 입력합니다. Azure Sphere Device Communication Service를 마우스 오른쪽 단추로 클릭하고 다시 시작을 선택합니다.

이제 처음에 시도한 명령을 다시 실행합니다.

명령이 계속 실패하거나 azsphere device list-attached 에 다음과 유사한 출력이 있는 경우:

1 device attached:
--> Device ID: Cannot get device ID
  --> Is responsive: no
  --> IP address: 192.168.35.2
  --> Connection path: 213

azsphere device recover 실행

디바이스와 직접 통신할 수 있고 DCS에서 디바이스를 검색합니다 .

이는 CLI에 문제가 있음을 나타냅니다. 최신 버전의 SDK가 있는지 확인하세요.

최신 버전의 SDK가 있고 문제가 아직 해결되지 않은 경우 Q&A 포럼에 질문을 게시합니다.

연결이 끊어지거나 디바이스가 누락됨

컴퓨터가 Azure Sphere 디바이스에 연결할 수 있지만 연결이 끊어지는 경우가 많으면 IP 서브넷에서 충돌이 발생할 수 있습니다.

Azure Sphere는 서브넷 192.168.35.*를 사용합니다. 동일한 서브넷을 사용하는 다른 소프트웨어가 있는 경우 해당 소프트웨어를 사용하지 않도록 설정하거나 사용하는 IP 주소 범위를 제한합니다. 현재는 Azure Sphere에서 사용하는 IP 주소 범위를 변경할 수 없습니다.

디바이스 기능을 적용할 수 없음

Azure Sphere 디바이스에 디바이스 기능을 적용하려고 할 때 오류가 발생하면 디바이스의 OS가 최신 상태가 아닐 수 있습니다. 이 문제는 Microsoft가 내부 키를 업데이트하는 동안 디바이스가 장기간 오프라인 상태인 경우에 발생할 수 있습니다. 다음 오류는 이 문제의 증상입니다.

azsphere device enable-development 또는 azsphere device enable-cloud-test 명령은 다음과 유사한 오류를 반환합니다.

error: The device did not accept the device capability configuration. Please check the Azure Sphere OS on your device is up-to-date using 'azsphere device show-deployment-status'.

azsphere device capability update 명령은 다음과 유사한 오류를 반환합니다.

error: Could not apply device capability configuration to device.

이는 디바이스의 신뢰할 수 있는 키 저장소가 만료되어 있기 때문입니다. 이 문제를 해결하려면 여기의 지침을 따르세요.

4개의 USB 직렬 변환기를 만들지 못했습니다.

MT3620 개발 보드를 설정한 후 장치 관리자 4개의 USB 직렬 변환기가 표시됩니다. 4개 미만이 표시되면 FTDI 드라이버에 문제가 있을 수 있습니다.

참고

이 보드가 이전에 RTApp 개발에 사용된 경우 4개가 아닌 세 개의 변환기가 표시되었을 수 있습니다. 이는 정상이며 오류를 나타내지 않습니다.

FTDI 드라이버가 올바르게 설치되지 않은 경우 변환기가 다른 디바이스와 같은 잘못된 위치에 표시되거나 전혀 표시되지 않을 수 있습니다.

이 문제를 resolve:

  1. 장치 관리자 열려면 시작을 클릭하고 장치 관리자 입력합니다.

  2. 유니버설 직렬 버스 컨트롤러에서 USB 직렬 변환기 A를 선택합니다. 다음 옵션이 제공되면 이름을 마우스 오른쪽 단추로 클릭하고 디바이스 제거를 선택한 다음 드라이버를 삭제합니다.

    디바이스 제거 및 드라이버 삭제

    USB 직렬 변환기 D를 통해 USB 직렬 변환기 B에 대해 이 단계를 반복합니다.

  3. PC에서 개발 보드를 분리하고 다시 연결합니다. "MSFT MT3620 Std 인터페이스"는 사용할 수 있는 드라이버가 없음을 나타내는 삼각형 경고 아이콘과 함께 표시됩니다.

  4. MSFT MT3620 Std 인터페이스 디바이스 중 하나를 마우스 오른쪽 단추로 클릭하고 드라이버 업데이트를 선택합니다. 업데이트된 드라이버 소프트웨어에 대해 자동으로 Search 선택합니다. 하나를 업데이트하면 모두 수정되어야 합니다. 이제 유니버설 직렬 버스 컨트롤러 섹션에 4개의 USB 직렬 변환기가 표시됩니다. 4개의 변환기가 모두 표시되지 않으면 각 변환기에서 이 단계를 반복합니다.

FTDI 드라이버 설치 실패

AZURE Sphere 디바이스를 PC에 처음 연결할 때 FTDI 드라이버를 Windows에서 자동으로 다운로드하고 설치해야 합니다. 드라이버가 올바르게 설치되면 개발 키트 설정에 설명된 대로 장치 관리자 유니버설 직렬 버스 컨트롤러 아래에 4개의 USB 직렬 변환기가 나열됩니다.

버전 2004인 Windows 10 드라이버를 검색하지 않습니다. 이 경우 드라이버가 자동으로 다운로드 및 설치되지 않으며 장치 관리자 나열된 다음 항목이 표시됩니다.

장치 관리자 나열된 MT3620 항목

드라이버를 설치하려면 FTDI(Future Technology Devices International)에서 드라이버를 수동으로 다운로드합니다. Windows 설치(32비트 또는 64비트)와 일치하는 드라이버를 선택합니다.

가용성 날짜 및 Windows 10 버전의 빌드 번호는 릴리스 정보 Windows 10 참조하세요. 이 정보는 Windows 10 버전이 버전 2004보다 이전 버전인지 또는 이후 버전인지를 확인하는 데 도움이 될 수 있습니다.

TAP-Windows 어댑터 구성으로 인한 연결 문제

Azure Sphere 도구는 USB를 통해 IP 네트워크를 사용하여 연결된 개발 보드와 통신합니다. 이렇게 하려면 OpenVPN Technologies의 TAP-Windows 어댑터가 필요합니다. Azure Sphere SDK 설치 절차는 이 어댑터가 아직 없는 경우 PC에 설치합니다.

TAP-Windows 어댑터와 함께 두 가지 유형의 문제가 보고되었습니다.

  • 다른 버전의 TAP-Windows 어댑터가 이미 설치되어 있거나 Azure Sphere 디바이스가 TAP-Windows 어댑터의 첫 번째 instance 연결되어 있지 않은 경우 Azure Sphere 도구가 디바이스에 연결하지 못할 수 있습니다.

  • Cisco AnyConnect VPN(가상 사설망)을 사용하는 경우 TAP-Windows 어댑터가 분리되어 표시되고 디바이스 통신이 작동하지 않을 수 있습니다. 이는 VPN이 TAP 어댑터의 IP 주소에서 트래픽을 리디렉션할 수 있기 때문입니다.

Azure Sphere 디바이스가 적절한 TAP-Windows 어댑터에 연결되어 있는지 확인합니다.

문제가 TAP 어댑터와 관련이 있는지 확인하려면 먼저 PC에 설치된 TAP 어댑터 수를 확인한 다음 필요한 경우 설치를 수정합니다.

PC에 설치된 TAP 어댑터 수를 확인하려면 다음을 수행합니다.

  1. Windows 설정을 열고 네트워크 & 인터넷 그룹을 선택합니다.

  2. 고급 네트워크 설정에서 어댑터 옵션 변경을 선택합니다. 다음 스크린샷과 같이 TAP 어댑터가 하나만 표시됩니다.

    TAP 어댑터 1개

    TAP 어댑터가 두 개 이상 표시되거나 TAP 어댑터가 하나만 표시되지만 이름이 Azure Sphere가 아닌 경우 다음 단계에 따라 모든 TAP 어댑터를 제거하고 SDK를 다시 설치합니다. TAP 어댑터가 표시되지 않으면 SDK를 다시 설치합니다.

TAP 어댑터를 제거하려면 다음을 수행합니다.

  1. 시작을 클릭하고 장치 관리자 입력합니다.

  2. 장치 관리자 네트워크 어댑터를 열고 TAP-Windows 어댑터를 선택합니다.

    TAP 어댑터를 사용하여 장치 관리자

  3. TAP-Windows 어댑터를 마우스 오른쪽 단추로 클릭하고 디바이스 제거를 선택합니다. 대화 상자에서 이 디바이스에 대한 드라이버 소프트웨어 삭제를 선택한 다음 제거를 클릭합니다.

  4. 관리자 권한으로 명령 프롬프트를 열고 다음 Powershell 설치 관리자 스크립트를 실행합니다.

     powershell -ExecutionPolicy RemoteSigned -File "%ProgramData%\Microsoft\Azure Sphere\TapDriverInstaller\TapDriverInstaller.ps1" Install
    
  5. 설치에 성공하면 Azure Sphere Device Communication Service를 다시 시작합니다.

    net stop AzureSphereDeviceCommunicationService

    net start AzureSphereDeviceCommunicationService

  6. Azure Sphere SDK를 다시 설치합니다.

Cisco AnyConnect VPN 클라이언트를 사용할 때 분리되지 않은 상태 수정

Cisco AnyConnect VPN 클라이언트를 사용하는 경우 TAP-Windows 어댑터가 분리되어 표시되고 디바이스 통신이 작동하지 않을 수 있습니다. 다음과 같이 문제를 해결할 수 있습니다.

  1. 컴퓨터에 관리자 권한이 있는지 확인합니다.

  2. Windows 설정을 열고 네트워크 & 인터넷 그룹을 선택합니다.

  3. 고급 네트워크 설정에서 어댑터 옵션 변경을 선택합니다.

  4. Azure Sphere TAP-Windows 어댑터 V9를 마우스 오른쪽 단추로 클릭하고 속성을 선택합니다.

  5. 네트워킹 탭에서 Cisco AnyConnect 네트워크 액세스 관리자 필터 드라이버 항목을 찾아 항목을 지웁니다.

    선택되지 않은 Cisco AnyConnect 항목을 보여 주는 TAP-Windows 어댑터 속성

  6. 확인을 선택하여 설정을 저장하고 속성을 종료합니다.

  7. 이제 명령 프롬프트를 열고 명령을 입력하여 Azure Sphere 디바이스와의 통신이 azsphere device show-attached 작동하는지 확인합니다.

디바이스가 응답하지 않음

azsphere 명령의 다음 오류 중 하나 이상이 Azure Sphere Device Communication Service를 시작하지 못했음을 나타낼 수 있습니다.

  • warn: Device is not responding. Could not perform version check.
  • Device is not responding. Cannot get device ID.​
  • error: Could not connect to the Azure Sphere Device Communication Service. If this issue persists, try uninstalling and reinstalling the Azure Sphere SDK.​
  • error: The device is not responding. The device may be unresponsive if it is applying an Azure Sphere operating system update; please retry in a few minutes.

디바이스 통신 문제 해결 단계를 수행했는지 확인합니다.

그래도 문제가 해결되지 않고 컴퓨터가 최근에 Windows 업데이트를 수행한 경우 Windows 업데이트 후 및 내부 JSON 설정 파일 또는 구성 파일 중 하나가 손상된 경우 디바이스 통신 서비스가 시작되지 않을 수 있습니다.

Windows 업데이트 후 실패

이러한 오류는 PC에서 Windows를 업데이트한 후에 발생할 수 있습니다. 경우에 따라 Windows 업데이트 통신 서비스에 필요한 FTDI 드라이버를 제거합니다.

문제를 resolve:

  1. USB에서 Azure Sphere 디바이스를 분리하고 다시 연결합니다. 디바이스를 다시 플러시하면 올바른 드라이버가 다시 설치됩니다.
  2. 디바이스의 플러깅 및 다시 플러깅으로 인해 문제가 해결되지 않으면 Azure Sphere SDK를 제거하고 다시 설치합니다.

JSON 파일

최근에 Windows를 업데이트하지 않은 경우 오류의 원인은 서비스에 사용되는 파일일 restore.json 수 있습니다.

이 문제를 resolve:

  1. 다음 파일의 복사본을 저장합니다.

    c:\windows\serviceprofiles\localservice\appdata\local\Azure Sphere Tools\restore.json

  2. 원래 위치에서 파일을 삭제합니다.

  3. Azure Sphere Device Communication Service를 중지한 다음 다시 시작합니다.

    net stop AzureSphereDeviceCommunicationService

    net start AzureSphereDeviceCommunicationService

손상된 구성 파일

명령을 실행하려고 할 때 오류가 보고되면 손상된 구성 파일로 인해 디바이스가 올바르게 실행되지 않을 수 있습니다.

이 문제를 resolve Windows의 .azsphere\config 또는 Linux의 ~/.azsphere/config에 있는 손상된 구성 파일을 삭제합니다.

디바이스를 연결하거나 언플루깅할 때 Windows 작동이 중단됩니다.

MT3620 개발자 보드에는 디바이스와 PC 간의 통신을 용이하게 하는 FTDI(미래 기술 디바이스 국제) FT4232HQ 칩이 있습니다. 공식 FTDI 드라이버 CMD(결합 드라이버 모델)에는 두 개의 드라이버가 포함되어 있습니다. 하나는 D2XX API를 통해 액세스를 제공하고 다른 하나는 동일한 디바이스에 대한 VCP(Virtual Com 포트)를 제공합니다. FTDI 칩에 VCP 모드가 사용하도록 설정된 경우 두 드라이버가 기본적으로 설치됩니다. 이로 인해 칩이 전원 순환될 때 Windows가 충돌할 수 있습니다.

이 문제를 resolve 위해 FTDI 칩에 대한 VCP 모드를 사용하지 않도록 설정할 수 있습니다. FTDI 칩의 EEPROM을 다시 프로그래밍하려면 FT_PROG 도구를 사용해야 합니다.

  1. 이 도구를 다운로드하고 설치하는 방법을 알아보려면 FTDI FT_PROG 프로그래밍 도구를 참조하세요.

  2. FT_PROG GUI 애플리케이션에 설명된 대로 FT_PROG 실행하고 연결된 디바이스를 찾습니다.

  3. 디바이스 트리 보기에서 하드웨어별 섹션을 확장합니다. 네 개의 포트가 표시됩니다.

    FTProg 하드웨어 특정 4개 포트

  4. 포트 A를 선택하고 Virtual Com 포트 대신 D2XX Direct를 선택합니다.

    포트 A 및 D2XX 직접 선택

  5. 포트 C 및 포트 D에 대해 이전 단계를 반복합니다. 포트 B는 이미 D2XX 직접 모드에 있어야 합니다.

  6. 프로그래밍 모드로 전환하려면 프로그램 디바이스 아이콘(번개 모양)을 선택합니다.

    프로그램 디바이스 클릭

  7. 프로그램을 선택하여 EEPROM을 프로그래밍한 다음, EEPROM이 완료되기를 기다립니다.

    프로그램 디바이스

  8. USB 포트에서 디바이스를 분리한 다음 다시 연결하여 디바이스의 전원을 순환하고 변경 내용을 적용합니다. Windows 장치 관리자 이제 포트(COM & LPT) 섹션에 3개의 COM 포트가 더 적게 표시됩니다. 유니버설 직렬 버스 디바이스의 수는 동일하게 유지되어야 합니다.

RTApp 디버그를 사용하도록 설정한 후 비 Azure Sphere FTDI 디바이스에 대한 연결 끊김

일부 Azure Sphere 사용자는 azsphere device enable-development --enable-rt-core-debugging 명령을 사용하여 호스트 PC에서 RTApps를 개발하고 디버그한 후 더 이상 연결된 다른 비 Azure Sphere FTDI 디바이스와 통신할 수 없다고 보고했습니다.

예를 들어 Azure Sphere 디바이스와 다른 FTDI 디바이스가 PC에 연결된 경우 명령을 실행하기 전에 Windows 장치 관리자 USB 직렬 변환기 B 디바이스라는 두 개의 유니버설 직렬 컨트롤러가 표시 될 수 있습니다.

두 직렬 변환기 B가 있는 디바이스 관리자

명령을 실행한 후 USB 직렬 변환기 B 디바이스가 모두 유니버설 직렬 버스 컨트롤러 섹션에서 사라지고 장치 관리자 유니버설 직렬 버스 디바이스에 두 개의 새 디바이스가 표시됩니다.

디바이스 관리자 두 개의 USB 디바이스

원인

이 문제는 azsphere device enable-development --enable-rt-core-debugging 명령이 MT3620에 FTDI 칩의 포트 B에 대한 새 드라이버를 설치하기 때문에 발생합니다. 그러면 포트가 MSFT MT3620 Std 인터페이스가 됩니다. 그러나 이 드라이버를 설치하면 다른 비 Azure Sphere 디바이스의 포트 B에 대한 드라이버가 실수로 변경됩니다. 기본 라이브러리의 제한으로 인해 동일한 VID(0x0403) 및 PID(0x6011)를 사용하는 모든 FTDI 디바이스는 포트 B 드라이버를 대체합니다.

솔루션

다음 단계에 따라 비 Azure Sphere 디바이스의 드라이버를 이전 버전으로 수동으로 되돌리기.

  1. 장치 관리자 비 Azure Sphere 디바이스(예제의 다른 FTDI Quad GZ)를 선택한 다음 마우스 오른쪽 단추를 클릭하고 드라이버 업데이트를 선택합니다.

  2. 드라이버 업데이트에서 내 컴퓨터에서 드라이버 소프트웨어 찾아보기를 선택합니다.

    내 컴퓨터에서 드라이버 찾아보기

  3. 내 컴퓨터에서 사용 가능한 드라이버 목록에서 선택하도록 허용을 선택합니다.

    내가 선택하자

  4. 목록에서 USB 직렬 변환기 B 드라이버를 선택한 다음 , 다음을 클릭합니다.

    usb 직렬 변환기 b

  5. 확인 창에서 닫기를 클릭합니다.

  6. 장치 관리자 다른 FTDI 디바이스의 포트 B를 USB 직렬 변환기 B로 표시해야 합니다. 이는 공식 FTDI 드라이버를 사용한다는 것을 나타냅니다. MT3620의 드라이버는 MSFT MT3620 Std 인터페이스로 유지됩니다.

    포트 B가 되돌아갔습니다.

추가 정보

  • azsphere device enable-development --enable-rt-core-debugging 명령을 실행한 후 다른 비 Azure Sphere FTDI 디바이스를 연결하면 해당 디바이스에 동일한 방식으로 Azure Sphere MT3620의 드라이버가 할당됩니다. 위의 단계를 반복하여 디바이스를 공식 FTDI 드라이버에 되돌리기.

  • 공식 FTDI 드라이버로 반환한 후 비 Azure Sphere FTDI 디바이스를 분리하고 다시 연결하는 경우 디바이스는 공식 FTDI 드라이버를 유지합니다.

  • 드라이버를 되돌리기 후 azsphere device enable-development --enable-rt-core-debugging 명령을 다시 실행하는 경우 비 Azure Sphere FTDI 디바이스는 다시 한 번 해당 드라이버를 교체하고 솔루션의 단계를 따라 공식 FTDI 드라이버로 되돌리기 합니다. 이는 azsphere device enable-development --enable-rt-core-debugging 명령을 실행할 때 비 Azure Sphere FTDI 디바이스가 PC에 연결되어 있는지 여부에 관계없이 발생합니다.

명령이 인식되지 않음

azsphere 명령을 입력할 때 다음 오류가 표시되는 경우 Windows에서 PowerShell 또는 표준 명령 프롬프트를 사용하고 있는지 확인합니다.

'azsphere' is not recognized as an internal or external command, operable program or batch file.

설치 관리자가 60% 중단

설치 관리자가 60%에 걸려 디바이스 통신 서비스를 시작하지 못했다는 말을 들었습니다. 일반적으로 TAP 드라이버 설치가 이상한 방식으로 실패하여 시스템이 확정되지 않은 상태로 남을 때 발생합니다.

문제가 TAP 드라이버인지 확인합니다.

  1. Windows 이벤트 뷰어 열어 로그를 검사.

  2. 애플리케이션 로그 및 Azure Sphere Device Communication Service 로그에서 다음 오류 메시지를 확인합니다.

    "SerialSlipToTun.TunInterfaceSetupException: System.Collections.Generic.KeyNotFoundException ---> 오류 액세스 툰 레지스트리 설정: System.Security.SecurityException: 요청된 레지스트리 액세스가 허용되지 --- 툰 탭 디바이스를 찾을> 수 없습니다."

    Windows 이벤트 뷰어 스크린샷

  3. 애플리케이션 로그를 확인할 때 관련 없는 메시지가 많이 표시되지 않도록 로그를 필터링합니다. 작업 탭에서 현재 로그 필터링을 선택합니다.

  4. 오류를 선택한 다음, AzureSphereDeviceCommunicationService를 선택하여 Azure Sphere Device Communication Service의 오류 메시지만 나열합니다.

    현재 로그 필터링 대화 상자의 스크린샷.

  5. 애플리케이션 로그 또는 Azure Sphere Device Communication Service 로그에서 오류를 찾을 수 없는 경우 TAP 드라이버 문제가 아닐 수 있습니다.

TAP 드라이버 문제를 resolve 다음 단계를 수행합니다.

  1. 네트워크 및 공유 센터로 이동하여 어댑터 설정 변경을 선택합니다.

    네트워크 공유 센터의 스크린샷.

  2. Azure Sphere 아래의 네트워크 Connections TAP-WIndows 어댑터 V9를 선택하고 해당 속성을 엽니다.

    네트워크 Connections 스크린샷

  3. Azure Sphere 속성에서 인터넷 프로토콜 버전 4(TCP/IPv4)를 선택한 다음 속성을 선택하여 프로토콜 설정을 확인합니다.

    Azure Sphere 속성의 스크린샷

  4. IP 주소가 192.168.35.1로 설정되고 서브넷 마스크가 255.255.255.0으로 설정되어 있는지 확인합니다.

  5. 설치 관리자를 다시 시도합니다. 그래도 중단된 경우 네트워크 연결을 다시 설정해 보세요. 다시 설정을 수행하려면 설정>네트워크 & 인터넷>상태로 이동하고 페이지 아래쪽에서 네트워크 재설정 을 선택합니다.

    중요

    네트워크를 다시 설정하면 모든 네트워크 설정이 다시 설정됩니다.

Azure Sphere Device Communication Service 중지

설치 관리자가 중단되면 taskkill 명령을 사용하여 Azure Sphere Device Communication Service를 중지할 수 있습니다.

같이:

  1. AzureSphereDeviceCommunicationService에 대한 PID를 복사합니다.

    • 작업 관리자>서비스 탭으로 이동하여 AzureSphereDeviceCommunicationService 서비스에 대한 PID를 적어둡니다. 또는
    • 명령줄에서 출력에서 PID를 입력 tasklist /fi "SERVICES eq AzureSphereDeviceCommunicationService*" 하고 복사합니다.
  2. 명령줄에 다음을 입력하여 서비스를 종료합니다. taskkill 명령은 프로세스 ID 번호에 해당하는 프로세스를 종료합니다. 옵션은 /f 프로세스를 강제로 종료하는 데 사용됩니다.

    taskkill /PID <DCS_PID> /f

  3. 설치 관리자를 다시 시도합니다.

Azure Sphere Device Communication Service를 중지할 수 없음

기존 Azure Sphere SDK를 업그레이드할 때 "서비스 'Azure Sphere Device Communication Service'(AzureSphereDeviceCommunicationService)를 중지할 수 없습니다.라는 메시지가 표시될 수 있습니다. 시스템 서비스를 중지할 수 있는 충분한 권한이 있는지 확인합니다." 이 메시지가 표시되면 다시 부팅하고 설치 관리자를 다시 실행합니다.

분할 터널링을 사용할 때 디바이스 통신이 끊어짐

개발 컴퓨터가 회사 VPN에 연결되고 VPN 구성에서 분할 터널링을 사용하지 않도록 설정하면 개발 컴퓨터가 Azure Sphere 디바이스와 통신하지 못할 수 있습니다.

이 문제를 resolve 다음 중 하나를 수행합니다.

  • 회사 VPN에서 연결을 끊고 Azure Sphere 디바이스에 대한 연결을 다시 시도합니다.
  • 분할 터널링을 허용하도록 VPN 구성을 변경합니다.

통신 문제는 TAP-Windows 어댑터 구성으로 인해 발생할 수도 있습니다. TAP-Windows 어댑터 구성 문제 해결 섹션으로 인한 연결 문제를 참조하세요.

Windows 11 Azure Sphere SDK를 설치하거나 제거할 수 없습니다.

Windows 11 업그레이드한 후 사용자는 Azure Sphere SDK를 설치하거나 제거할 수 없습니다. 이 문제를 resolve 최신 버전의 Windows용 Azure Sphere SDK를 설치합니다. 21.07 업데이트 2 이상을 설치한 후에는 SDK를 제거할 수 있습니다.

RTApps를 컴파일하거나 디버그할 수 없음

CMake가 도구 체인을 찾는 오류를 보고하거나 openocd RTApp을 빌드하거나 디버그하려고 할 때 다음을 확인합니다.

23.05 이전 디바이스 통신 문제 해결

경고

이러한 단계는 SDK 버전 22.11 이하의 사용자를 위한 것입니다. azsphere show-version을 실행하여 설치된 SDK 버전이 22.11 이하인지 확인합니다.

SDK 버전 22.11 이하를 실행하는 Linux 시스템에서는 디바이스를 연결하거나 플러그를 뽑거나 다시 만들 때마다 azsphere_connect.sh 스크립트를 실행해야 합니다. 이 스크립트는 디바이스 연결을 새로 고치고 네트워크 트래픽을 디바이스에 매핑하는 커널 드라이버를 생성합니다.

통신 문제가 발생하는 경우 다음 기본 단계로 시작합니다.

  1. 디바이스가 USB로 연결되어 있는지 확인합니다.

  2. 아직 azsphere_connect.sh 스크립트를 실행하지 않은 경우 실행합니다.

  3. 디바이스와 직접 통신할 수 있는지 확인합니다. https://192.168.35.2/status 웹 브라우저에서 로 이동합니다. 표시된 모든 SSL 경고를 무시하고 해제합니다. 웹 브라우저 창에 다음과 유사한 {"uptime":56} 출력이 표시됩니다.

참고

를 사용하여 curl https://192.168.35.2/status --insecure명령줄에서 이 단계를 수행할 수도 있습니다.

  1. 오류가 지속되면 USB 포트에서 디바이스를 분리하고 다시 연결한 다음 다시 시작될 때까지 기다립니다. 그런 다음 , azsphere_connect.sh 스크립트를 실행합니다.

  2. 오류가 계속되면 다른 네트워킹 도구와 서브넷 충돌이 없는지 확인합니다.