Rozwiązywanie problemów z usługą Azure Sphere

Poniżej przedstawiono niektóre kroki rozwiązywania problemów, które mogą wystąpić podczas instalacji i konfiguracji.

Problemy z komunikacją między urządzeniami

Niepowodzenie połączenia z urządzeniem z komputera hosta może wystąpić z wielu powodów i może spowodować uruchomienie dowolnego z kilku komunikatów o błędach, w zależności od tego, które narzędzia lub aplikacje napotkają. Następujące komunikaty o błędach mogą wskazywać na nieudane połączenie:

  • 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.

Istnieją trzy składniki, które mogą powodować problemy z komunikacją urządzenia: (1) sam interfejs wiersza polecenia; (2) usługa komunikacji między urządzeniami (DCS), która ułatwia komunikację z urządzeniem; i (3) urządzenie.

Aby odizolować przyczynę, wykonaj następujące kroki diagnostyczne:

  1. Sprawdź, czy możesz komunikować się bezpośrednio z urządzeniem. Przejdź do https://192.168.35.2/status w przeglądarce internetowej. Ignoruj i odrzuć wszelkie wyświetlane ostrzeżenia SSL. W oknie przeglądarki sieci Web powinny być wyświetlane dane wyjściowe podobne do {"uptime":56} następujących.

Uwaga

Możesz również wykonać ten krok z poziomu wiersza polecenia przy użyciu .curl https://192.168.35.2/status --insecure

Uwaga

Ten krok można również wykonać za pomocą programu PowerShell (wersja 6 lub większa). Invoke-WebRequest https://192.168.35.2/status -SkipCertificateCheck

  1. Potwierdź, że usługa komunikacji urządzenia wykryła urządzenie. Przejdź do http://localhost:48938/api/service/devices w przeglądarce internetowej i potwierdź, że co najmniej jedno urządzenie jest wyświetlane w wynikach JSON.

Ostrzeżenie

Linux DCS jest dołączony tylko do SDK w wersji 23.05 i nowszych. Postępuj zgodnie ze starszymi instrukcjami rozwiązywania problemów dotyczącymi pakietu SDK w wersji 22.11 i wcześniejszych.

Uwaga

Ten krok można również wykonać za pomocą programu PowerShell za pośrednictwem Invoke-WebRequest http://localhost:48938/api/service/devicesusługi .

Nie można komunikować się bezpośrednio z urządzeniem, a urządzenie nie jest wykrywane przez dcs

Jeśli nie można nawiązać połączenia z urządzeniem (krok 1) i urządzenie nie może zostać wykryte przez kontroler domeny (krok 2), prawdopodobnie występuje problem z konfiguracją fizycznego urządzenia.

Po pierwsze, sprawdź, czy urządzenie zostało wykryte przez urządzenie.

Z terminalu:

  1. Uruchom sudo lsusb. Sprawdź, czy w wyjściu jest wyświetlany interfejs Future Technology Devices International, Ltd FT4232H Quad HS USB-UART/FIFO IC .

Korzystanie z okna programu PowerShell:

  1. Uruchom Get-PnpDevice -PresentOnly | Where-Object { $_. InstanceId -match '^USB' }. Sprawdź, czy interfejs MSFT MT3620 Std jest wyświetlany w wynikach.

Jeśli wcześniejsze polecenie nie zwraca oczekiwanego wyjścia, podłącz urządzenie do innego portu USB. Jeśli to nie rozwiąże problemu, sprawdź, czy urządzenie ma poprawnie skonfigurowane zworki. Na przykład zestawy programistyczne Seeed MT3620 są dostarczane z fabryki z nagłówkiem swetra na styki 2 i 3 J3, które zasilają zegar z głównego zasilacza. Sprawdź, czy nagłówek nie został usunięty lub usunięty.

Nie można komunikować się bezpośrednio z urządzeniem, ale urządzenie jest wykrywane przez dcs

Jeśli nie można nawiązać połączenia z urządzeniem (krok 1), ale urządzenie zostało wykryte przez dcs (krok 2), prawdopodobnie usługa komunikacji urządzenia lub urządzenia jest w złym stanie.

Jeśli właśnie podłączono urządzenie do Internetu i system operacyjny urządzenia jest nieaktualny, być może urządzenie stosuje aktualizację systemu operacyjnego. Istnieje również niewielka szansa, że urządzenie pobiera aktualizację systemu operacyjnego, jeśli czas zbiega się z oknem wydania. Podczas aktualizacji systemu operacyjnego nie będzie można komunikować się z urządzeniem.

Jeśli podejrzewasz, że urządzenie jest aktualne i/lub nie ma połączenia z Internetem, najlepszym rozwiązaniem jest odłączenie i ponowne podłączenie urządzenia do komputera. Powinno to spowodować, że kontroler domeny odnowi połączenie z urządzeniem i urządzeniem zostanie zresetowane do stanu początkowego.

Jeśli nie możesz odłączyć i ponownie podłączyć urządzenia, najlepszą opcją jest ponowne uruchomienie dcs. Z terminalu:

  1. Uruchom sudo azspheredctl restart. Sprawdź, czy polecenie zostało ukończone pomyślnie.
    1. Jeśli polecenie nie powiedzie się, uruchom polecenie sudo systemctl restart azsphered.

Jeśli nie możesz odłączyć i ponownie podłączyć urządzenia, następną najlepszą opcją jest wydanie polecenia ponownego przeskanowania kontrolera domeny. Po otrzymaniu tego polecenia dcs będzie cyklicznie i resetować układ interfejsu FTDI używany do komunikowania się z MT3620. Korzystanie z okna programu PowerShell:

  1. Uruchamianie polecenia az sphere device rescan-attached

Teraz uruchom ponownie polecenie, które początkowo próbowano wykonać. Jeśli problem nadal nie został rozwiązany, następną najlepszą opcją jest próba ponownego uruchomienia kontrolera domeny. W oknie programu Powershell na poziomie administratora:

  1. Uruchom Restart-Service -Name AzureSphereDeviceCommunicationService. Sprawdź, czy polecenie zostało ukończone pomyślnie.

Ewentualnie uruchom ponownie kontrolery domeny przy użyciu graficznego interfejsu użytkownika.

  1. Naciśnij przycisk Start i wprowadź ciąg Usługi. Kliknij prawym przyciskiem myszy usługę komunikacji urządzeń Azure Sphere i wybierz pozycję Uruchom ponownie.

Teraz uruchom ponownie polecenie, które początkowo próbowano wykonać.

Jeśli polecenie nadal kończy się niepowodzeniem lub az sphere device list-attached ma dane wyjściowe podobne do:

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

Uruchomić az sphere device recover

Może komunikować się bezpośrednio z urządzeniem, a urządzenie jest wykrywane przez dcs

Prawdopodobnie oznacza to problem z interfejsem. Upewnij się, że masz najnowszą wersję klawiatury SDK.

Jeśli masz najnowszą wersję pakietu SDK, a Twój problem nadal nie został rozwiązany, zadaj pytanie na forum Q&A.

Porzucone połączenia lub brakujące urządzenia

Jeśli komputer może połączyć się z urządzeniem Azure Sphere, ale często odrzuca połączenie, może występować konflikt w podsieci IP.

Azure Sphere używa podsieci 192.168.35.*. Jeśli masz inne oprogramowanie korzystające z tej samej podsieci, wyłącz to oprogramowanie lub ogranicz zakres używanych przez niego adresów IP. Obecnie nie można zmienić zakresu adresów IP używanych przez usługę Azure Sphere.

Nie można zastosować funkcji urządzenia

Jeśli podczas próby zastosowania funkcji urządzenia do urządzenia Azure Sphere wystąpią błędy, może to oznaczać, że system operacyjny na urządzeniu jest nieaktualny. Ten problem może wystąpić, jeśli urządzenie było w trybie offline przez dłuższy czas, podczas którego firma Microsoft zaktualizowała swoje klucze wewnętrzne. Następujące błędy są objawami tego problemu:

Polecenia az sphere device enable-development lub az sphere device enable-cloud-test zwracają błąd podobny do następującego:

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

Polecenie aktualizacji funkcji urządzenia azsphere zwraca błąd podobny do następującego:

error: Could not apply device capability configuration to device.

Wynika to z tego, że zaufany klucztor na urządzeniu jest nieaktualny. Aby rozwiązać ten problem, postępuj zgodnie z instrukcjami przedstawionymi tutaj.

Nie można utworzyć czterech konwerterów szeregowych USB

Po skonfigurowaniu tablicy deweloperskiej MT3620 w Menedżer urządzeń powinny być widoczne cztery konwertery szeregowe USB. Jeśli widzisz mniej niż cztery, możesz mieć problem ze sterownikiem FTDI.

Uwaga

Jeśli ta tablica była wcześniej używana do projektowania RTApp, mogą być widoczne trzy konwertery zamiast czterech. Jest to normalne i nie oznacza błędu.

Jeśli sterownik FTDI nie jest zainstalowany poprawnie, konwertery mogą być wyświetlane w nieprawidłowej lokalizacji, na przykład Na innych urządzeniach, lub mogą w ogóle nie być wyświetlane.

Aby rozwiązać ten problem:

  1. Aby otworzyć Menedżer urządzeń, kliknij przycisk Start i wprowadź Menedżer urządzeń.

  2. W obszarze Kontrolery uniwersalnej magistrali szeregowej wybierz pozycję Konwerter szeregowy USB A. Kliknij prawym przyciskiem myszy nazwę, wybierz pozycję Odinstaluj urządzenie i usuń sterownik, jeśli jest dostępna odpowiednia opcja:

    Odinstaluj urządzenie i usuń sterownik

    Powtórz ten krok dla konwertera szeregowego USB B na szeregowy konwerter D USB.

  3. Odłącz tablicę programową od komputera i podłącz ją ponownie. "MSFT MT3620 Std Interface" powinien zostać wyświetlony z trójkątną ikoną ostrzeżenia, która wskazuje, że nie jest dostępny żaden sterownik.

  4. Kliknij prawym przyciskiem myszy jedno z urządzeń MSFT MT3620 Std Interface i wybierz pozycję Aktualizuj sterownik. Wybierz pozycję Search automatycznie dla zaktualizowanego oprogramowania sterownika. Zaktualizowanie jednego z nich powinno rozwiązać wszystkie problemy. Teraz w sekcji Kontrolery uniwersalnej magistrali szeregowej powinny być widoczne cztery konwertery szeregowe USB. Jeśli wszystkie cztery konwertery nie są wyświetlane, powtórz ten krok dla każdego konwertera.

Nie można zainstalować sterowników FTDI

Sterowniki FTDI powinny być automatycznie pobierane i instalowane przez system Windows, gdy urządzenie Azure Sphere jest po raz pierwszy podłączone do komputera. Jeśli sterowniki są zainstalowane poprawnie, w obszarze Kontrolery uniwersalnej magistrali szeregowej w Menedżer urządzeń zostaną wyświetlone cztery konwertery szeregowe USB, zgodnie z opisem w artykule Konfigurowanie zestawu deweloperów.

Windows 10, wersja 2004, nie szuka sterowników. W takim przypadku sterowniki nie są pobierane i instalowane automatycznie, a w Menedżer urządzeń będą widoczne następujące elementy:

Elementy MT3620 wymienione w Menedżer urządzeń

Aby zainstalować sterowniki, ręcznie pobierz sterowniki z future technology devices international (FTDI). Wybierz sterownik zgodny z instalacją systemu Windows (32- lub 64-bitowa).

Aby uzyskać informacje o datach dostępności i numerach kompilacji Windows 10 wersji, zobacz Windows 10 informacje o wersji. Te informacje mogą pomóc w określeniu, czy wersja Windows 10 jest wcześniejsza, czy późniejsza niż wersja 2004.

Problemy z połączeniem spowodowane przez konfigurację karty TAP-Windows

Narzędzia Azure Sphere komunikują się z dołączonymi tablicami deweloperów za pomocą sieci IP przez USB. Wymaga to adaptera TAP-Windows firmy OpenVPN Technologies. Procedura instalacji zestawu Azure Sphere SDK instaluje tę kartę na komputerze, jeśli nie jest jeszcze dostępna.

Zgłoszono dwa różne typy problemów z adapterem TAP-Windows:

  • Jeśli inna wersja adaptera TAP-Windows jest już zainstalowana lub urządzenie Azure Sphere nie jest podłączone do pierwszego wystąpienia adaptera TAP-Windows, narzędzia Azure Sphere mogą się nie połączyć z urządzeniem.

  • Jeśli używasz wirtualnej sieci prywatnej Cisco AnyConnect (VPN), karta TAP-Windows może wydawać się odłączona, a komunikacja z urządzeniem może nie działać. Jest to spowodowane tym, że sieć VPN może przekierowywać ruch z dala od adresu IP karty TAP.

Upewnij się, że urządzenie Azure Sphere jest podłączone do odpowiedniej karty TAP-Windows

Aby ustalić, czy problem jest związany z adapterem TAP, najpierw dowiedz się, ile kart TAP jest zainstalowanych na komputerze, a następnie w razie potrzeby zmodyfikuj instalację.

Aby ustalić, ile adapterów TAP jest zainstalowanych na komputerze:

  1. Otwórz okno Ustawienia systemu Windows i wybierz grupę Sieć & Internet .

  2. W obszarze Zaawansowane ustawienia sieciowe wybierz pozycję Zmień opcje karty. Powinien być widoczny tylko jeden adapter TAP, jak pokazano na poniższym zrzucie ekranu:

    One TAP Adapter

    Jeśli widzisz więcej niż jeden adapter TAP lub widzisz tylko jeden adapter TAP, ale jego nazwa nie to Azure Sphere, wykonaj poniższe czynności, aby odinstalować wszystkie karty TAP i ponownie zainstalować SDK. Jeśli nie widzisz żadnej karty TAP, ponownie zainstaluj klawiaturę SDK.

Aby odinstalować adaptery TAP:

  1. Kliknij przycisk Start i wprowadź Menedżer urządzeń.

  2. W Menedżer urządzeń otwórz kartę sieciową i wybierz pozycję NACIŚNIJ kartę systemu Windows:

    Menedżer urządzeń z adapterem TAP

  3. Kliknij prawym przyciskiem myszy kartę TAP-Windows i wybierz polecenie Odinstaluj urządzenie. W oknie dialogowym wybierz pozycję Usuń oprogramowanie sterownika dla tego urządzenia, a następnie kliknij pozycję Odinstaluj.

  4. Otwórz wiersz polecenia jako administrator i uruchom następujący skrypt instalatora programu Powershell:

     powershell -ExecutionPolicy RemoteSigned -File "%ProgramData%\Microsoft\Azure Sphere\TapDriverInstaller\TapDriverInstaller.ps1" Install
    
  5. Jeśli instalacja zakończy się pomyślnie, uruchom ponownie usługę komunikacji urządzeń Azure Sphere:

    net stop AzureSphereDeviceCommunicationService

    net start AzureSphereDeviceCommunicationService

  6. Ponownie zainstaluj pakiet Azure Sphere SDK.

Naprawianie stanu odłączonych podczas korzystania z klienta VPN Cisco AnyConnect

Podczas korzystania z klienta cisco AnyConnect VPN adapter TAP-Windows może wydawać się odłączony i komunikacja z urządzeniem może nie działać. Problem można rozwiązać w następujący sposób:

  1. Upewnij się, że masz uprawnienia administratora na komputerze.

  2. Otwórz okno Ustawienia systemu Windows i wybierz grupę Sieć & Internet .

  3. W obszarze Zaawansowane ustawienia sieciowe wybierz pozycję Zmień opcje karty.

  4. Kliknij prawym przyciskiem myszy pozycję Azure Sphere TAP-Windows Adapter V9 i wybierz pozycję Właściwości.

  5. Na karcie Sieć znajdź wpis sterownika filtru filtru Cisco AnyConnect Network Access Manager i wyczyść ten element.

    Tap-Windows adapter properties showing Cisco AnyConnect item unselected

  6. Wybierz przycisk OK , aby zapisać ustawienie i zamknąć właściwości.

  7. Sprawdź, czy komunikacja z urządzeniem Azure Sphere działa teraz, otwierając wiersz polecenia i wprowadzając az sphere device show-attached polecenie.

Urządzenie nie odpowiada

Co najmniej jeden z następujących błędów z polecenia azsphere może wskazywać, że nie można uruchomić usługi komunikacji urządzenia Azure Sphere:

  • 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.

Upewnij się, że wykonano kroki rozwiązywania problemów z komunikacją urządzenia.

Jeśli problem nadal nie został rozwiązany, a na komputerze niedawno została zainstalowana aktualizacja systemu Windows, usługa komunikacji urządzenia może się nie uruchamiać po aktualizacji systemu Windows i w przypadkach, gdy jeden z wewnętrznych plików ustawień JSON lub plik konfiguracji uległ uszkodzeniu.

Błąd po Windows Update

Te błędy mogą wystąpić po zaktualizowaniu systemu Windows na komputerze. Czasami Windows Update odinstalowuje sterowniki FTDI wymagane dla usługi komunikacyjnej.

Aby rozwiązać ten problem:

  1. Odłącz urządzenie Azure Sphere od portu USB i podłącz je ponownie. Po ponownym zainstalowaniu urządzenia prawidłowe sterowniki powinny zostać ponownie instalowane.
  2. Jeśli odłączenie i ponowne odklejenie urządzenia nie rozwiąże problemu, odinstaluj i ponownie zainstaluj klawiaturę Azure Sphere SDK.

Plik JSON

Jeśli nie zaktualizowano ostatnio systemu Windows, przyczyną błędu może być restore.json plik używany w usłudze.

Aby rozwiązać ten problem:

  1. Zapisz kopię następującego pliku:

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

  2. Usuń plik z jego pierwotnej lokalizacji.

  3. Zatrzymaj, a następnie uruchom ponownie usługę komunikacji urządzeń Azure Sphere:

    net stop AzureSphereDeviceCommunicationService

    net start AzureSphereDeviceCommunicationService

Uszkodzony plik konfiguracji

Jeśli podczas próby uruchomienia polecenia zostanie zgłoszony błąd, uszkodzony plik konfiguracji może uniemożliwiać poprawne działanie urządzenia.

Aby rozwiązać ten problem, usuń uszkodzony plik konfiguracji znajdujący się w domenie .azsphere\config w systemie Windows lub ~/.azsphere/config w systemie Linux.

System Windows ulega awarii podczas podłączania lub odłączania urządzenia

Tablica deweloperska MT3620 posiada mikroukład FT4232HQ Future Technology Devices International (FTDI), który ułatwia komunikację między urządzeniem a komputerem. Oficjalny sterownik FTDI , Combined Driver Model (CMD), zawiera dwa sterowniki: jeden zapewnia dostęp za pośrednictwem interfejsu API D2XX, a drugi udostępnia wirtualny port com (VCP) dla tego samego urządzenia. Oba sterowniki są instalowane domyślnie, jeśli mikroukład FTDI ma włączony tryb VCP. Może to spowodować awarię systemu Windows, gdy mikroukład jest zasilany cyklicznie.

Aby rozwiązać ten problem, możesz wyłączyć tryb VCP dla mikroukładu FTDI. Konieczne będzie użycie narzędzia FT_PROG w celu przeprogramowania mikroukładu FTDI EEPROM.

  1. Zobacz FTDI FT_PROG narzędzie do programowania , aby dowiedzieć się, jak pobrać i zainstalować to narzędzie.

  2. Uruchom FT_PROG i znajdź dołączone urządzenie zgodnie z opisem w aplikacji interfejsu graficznego FT_PROG.

  3. W widoku Drzewo urządzeń rozwiń sekcję Specyficzne dla sprzętu . Powinny być widoczne cztery porty.

    FtProg Hardware Specific cztery porty

  4. Wybierz pozycję Port A i wybierz pozycję D2XX Direct zamiast Virtual Com Port.

    Wybierz port A i D2XX direct

  5. Powtórz poprzedni krok dla portów C i Port D. Port B powinien już być w trybie bezpośrednim D2XX.

  6. Wybierz ikonę Urządzenia programu (przypomina błyskawicę), aby wejść w tryb programowania.

    kliknij pozycję urządzenia programowe

  7. Wybierz pozycję Program , aby zaprogramować program EEPROM, a następnie poczekaj, aż zakończy się.

    urządzenia programowe

  8. Odłącz urządzenie od portu USB, a następnie podłącz je ponownie do cyklu zasilania urządzenia i wywołaj zmiany. W systemie Windows Menedżer urządzeń w sekcji Porty (COM & LPT) powinny być teraz wyświetlane trzy porty COM mniej. Liczba urządzeń uniwersalnej magistrali szeregowej powinna pozostać taka sama.

Utracone połączenie z urządzeniami FTDI innych niż Azure Sphere po włączeniu debugowania RTApp

Niektórzy użytkownicy usługi Azure Sphere zgłaszali, że nie mogą już komunikować się z innymi dołączonymi urządzeniami FTDI spoza usługi Azure Sphere po użyciu funkcji włączania i rozwijania urządzeń az sphere — polecenia enable-rt-core-debugging do opracowywania i debugowania aplikacji RTApps z komputera hosta.

Jeśli na przykład do komputera jest podłączone zarówno urządzenie Azure Sphere, jak i inne urządzenie FTDI, przed uruchomieniem polecenia w systemie Menedżer urządzeń Windows mogą być widoczne dwa uniwersalne kontrolery szeregowe o nazwie USB Serial Converter B.

menedżer urządzeń z dwoma konwerterami seryjnymi B

Po wykonaniu polecenia oba urządzenia usb szeregowego konwertera B znikają z sekcji kontrolera uniwersalnej magistrali szeregowej, a dwa nowe urządzenia są wyświetlane na wyświetlaczu uniwersalnej magistrali szeregowej w Menedżer urządzeń.

menedżer urządzeń dwa urządzenia USB

Spowodować

Ten problem występuje, ponieważ az sphere device enable-development --enable-rt-core-debugging command installs a new driver for Port B of the FTDI chip on the MT3620; port stanie się MSFT MT3620 Std Interface. Jednak instalacja tego sterownika nieumyślnie zmienia sterownik portu B innego urządzenia sphere innego niż Azure. Ze względu na ograniczenie w bibliotece źródłowej wszystkie urządzenia FTDI z tym samym VID (0x0403) i identyfikatorem PID (0x6011) zostaną zastąpione sterownikiem portu B.

Rozwiązanie

Wykonaj poniższe czynności, aby ręcznie przywrócić sterownik dla wszystkich urządzeń innych niż Azure Sphere do poprzedniej wersji:

  1. W Menedżer urządzeń wybierz urządzenie Sphere inne niż Azure (w przykładzie inny quad FTDI GZ), a następnie kliknij prawym przyciskiem myszy i wybierz polecenie Aktualizuj sterownik.

  2. W obszarze Aktualizuj sterowniki wybierz pozycję Przeglądaj mój komputer w poszukiwaniu oprogramowania sterownika.

    przeglądanie komputera w poszukiwaniu sterowników

  3. Wybierz pozycję Pozwól mi wybrać z listy dostępnych sterowników na moim komputerze.

    pozwól mi wybrać

  4. Wybierz sterownik konwertera szeregowego USB B z listy, a następnie kliknij przycisk Dalej.

    konwerter szeregowy usb b

  5. Kliknij przycisk Zamknij w oknie potwierdzenia.

  6. Menedżer urządzeń powinien pokazywać port B dla innego urządzenia FTDI jako konwerter szeregowy USB B, co wskazuje, że używa oficjalnego sterownika FTDI. Sterownik mt3620 pozostaje MSFT MT3620 Std Interface.

    Port B został przywrócony

Dodatkowe informacje

  • Jeśli podłączysz inne nowe urządzenie FTDI spoza azure Sphere po uruchomieniu urządzenia azsphere enable-development -- enable-rt-core-debugging command, to urządzenie zostanie przypisane do sterownika Azure Sphere MT3620 w ten sam sposób. Powtórz powyższe kroki, aby przywrócić urządzenie do oficjalnego sterownika FTDI.

  • Jeśli odłączysz i ponownie podłączysz urządzenie FTDI spoza azure Sphere po zwróceniu go do oficjalnego sterownika FTDI, urządzenie zachowa oficjalny sterownik FTDI.

  • Jeśli uruchomisz az sphere device enable-development --enable-rt-core-debugging command again after youvert the driver, the non-Azure Sphere FTDI device will again have its driver replaced, and you'll need to follow the Solution to revert to the official FTDI driver. Dzieje się tak niezależnie od tego, czy urządzenie FTDI spoza azure Sphere jest podłączone do komputera, gdy jest uruchomione polecenie włącz-rozwijanie urządzenia az sphere — enable-rt-core-debugging .

Nie rozpoznano poleceń

Jeśli podczas wprowadzania polecenia azsphere zostanie wyświetlony następujący błąd, upewnij się, że używasz programu PowerShell lub standardowego wiersza polecenia w systemie Windows.

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

Instalator zawiesza się na poziomie 60 procent

Instalator zawiesza się na poziomie 60% i powiedziano Ci, że usługa komunikacji między urządzeniami nie została uruchomiona. Dzieje się tak zazwyczaj, gdy instalacja sterownika TAP kończy się niepowodzeniem w dziwny sposób, pozostawiając system w stanie nieokreślonej.

Potwierdź, że problem dotyczy sterownika TAP

  1. Otwórz Podgląd zdarzeń Windows, aby sprawdzić dzienniki.

  2. W dzienniku aplikacji i w dzienniku usługi komunikacji urządzeń Azure Sphere poszukaj następującego komunikatu o błędzie:

    "SerialSlipToTun.TunInterfaceSetupException: Error access tun registry settings ---> System.Collections.Generic.KeyNotFoundException: Tun tap device not found ---> System.Security.SecurityException: Requested registry access is not allowed."

    Zrzut ekranu przedstawiający Podgląd zdarzeń systemu Windows.

  3. Podczas sprawdzania dziennika aplikacji przefiltruj dziennik, aby uniknąć wyświetlania wielu niepowiązanych wiadomości. Na karcie Akcja wybierz pozycję Filtruj bieżący dziennik.

  4. Wybierz pozycję Błąd, a następnie wybierz pozycję AzureSphereDeviceCommunicationService , aby wyświetlić tylko komunikaty o błędach z usługi Azure Sphere Device Communication Service.

    Zrzut ekranu przedstawiający okno dialogowe Filtrowanie bieżącego dziennika.

  5. Jeśli nie możesz znaleźć błędu w dzienniku aplikacji lub w dzienniku usługi komunikacji urządzeń Azure Sphere, może to nie być problem ze sterownikiem FUNKCJI TAP.

Aby rozwiązać problem ze sterownikami TAP, wykonaj następujące czynności:

  1. Przejdź do Centrum sieci i udostępniania i wybierz pozycję Zmień ustawienia karty.

    Zrzut ekranu przedstawiający Centrum udostępniania sieci.

  2. W Connections sieci w obszarze Azure Sphere wybierz pozycję TAP-WIndows Adapter V9 i otwórz jej właściwości.

    Zrzut ekranu przedstawiający Connections sieciowe.

  3. W obszarze Właściwości azure Sphere wybierz pozycję Protokół internetowy w wersji 4 (TCP/IPv4), a następnie wybierz pozycję Właściwości , aby wyświetlić ustawienia protokołu.

    Zrzut ekranu przedstawiający właściwości usługi Azure Sphere.

  4. Upewnij się, że dla adresu IP jest ustawiona wartość 192.168.35.1, a maska podsieci — 255.255.255.0.

  5. Spróbuj ponownie użyć instalatora. Jeśli nadal się zawiesza, spróbuj zresetować połączenia sieciowe. Aby zresetować ustawienia, przejdź do pozycji Ustawienia>sieci & stan internetu> i wybierz pozycję Resetowanie sieci u dołu strony.

    Ważne

    Zresetowanie sieci spowoduje zresetowanie wszystkich ustawień sieci.

Zatrzymywanie usługi komunikacji między urządzeniami w usłudze Azure Sphere

Jeśli instalator się zawiesi, możesz zatrzymać usługę komunikacji urządzeń Azure Sphere za pomocą polecenia taskkill .

Wykonaj następujące czynności:

  1. Skopiuj identyfikator PID dla usługi AzureSphereDeviceCommunicationService.

    • Przejdź do kartyUsługiMenedżera> zadań i zanotuj identyfikator PID dla usługi AzureSphereDeviceCommunicationService lub
    • W wierszu polecenia wpisz tasklist /fi "SERVICES eq AzureSphereDeviceCommunicationService*" i skopiuj identyfikator PID z danych wyjściowych.
  2. Wpisz następujące polecenie w wierszu polecenia, aby zakończyć usługę. Polecenie taskkill kończy proces odpowiadający numerowi identyfikatora procesu. Opcja jest używana /f do zdecydowanego zakończenia procesu.

    taskkill /PID <DCS_PID> /f

  3. Spróbuj ponownie użyć instalatora.

Nie można zatrzymać usługi komunikacji urządzeń Azure Sphere

Podczas uaktualniania istniejącego zestawie SDK Azure Sphere może zostać wyświetlony komunikat informujący, że nie można zatrzymać usługi "Azure Sphere Device Communication Service" (AzureSphereDeviceCommunicationService). Sprawdź, czy masz wystarczające uprawnienia, aby zatrzymać usługi systemowe". Jeśli zostanie wyświetlony ten komunikat, uruchom ponownie instalatora i uruchom go ponownie.

Komunikacja między urządzeniami jest przerywana podczas zastosowano tunelowanie dzielone

Gdy komputer dewelopera jest połączony z firmową siecią VPN, a konfiguracja sieci VPN wyłącza tunelowanie dzielone, komputer dewelopera może nie być w stanie komunikować się z urządzeniem Azure Sphere.

Aby rozwiązać ten problem, wykonaj jedną z następujących czynności:

  • Odłącz od firmowej sieci VPN i spróbuj ponownie nawiązać połączenie z urządzeniem Azure Sphere.
  • Zmień konfigurację sieci VPN, aby umożliwić tunelowanie dzielone.

Problemy z komunikacją mogą być również spowodowane przez konfigurację karty TAP-Windows. Zobacz sekcję Problemy z połączeniem spowodowane przez TAP-Windows rozwiązywanie problemów z konfiguracją adaptera .

Nie można zainstalować ani odinstalować narzędzia Azure Sphere SDK na Windows 11

Po uaktualnieniu do Windows 11 użytkownicy nie mogą zainstalować ani odinstalować pakietu Azure Sphere SDK. Aby rozwiązać ten problem, zainstaluj najnowszą wersję zestawu SDK Azure Sphere dla systemu Windows. Po zainstalowaniu aktualizacji 21.07 Update 2 lub nowszej będzie można odinstalować pakiet SDK.

Nie można kompilować ani debugować aplikacji RTApps

Jeśli usługa CMake zgłasza błędy podczas znajdowania narzędzi lub openocd podczas próby utworzenia lub debugowania aplikacji RTApp, upewnij się, że:

Rozwiązywanie problemów z komunikacją urządzenia sprzed 23.05

Ostrzeżenie

Te kroki są przeznaczone dla użytkowników z pakietem SDK w wersji 22.11 lub starszej. Sprawdź, czy zainstalowana wersja SDK to 22.11 lub wcześniejsza, uruchamiając pokazową wersję azsphere.

W systemach Linux z dodatkiem SDK w wersji 22.11 lub starszej skrypt azsphere_connect.sh musi być uruchamiany za każdym razem, gdy podłączysz urządzenie albo odłączysz je lub odłączysz od zasilania. Skrypt odświeża połączenia urządzenia i uruchamia sterownik jądra, który mapuje ruch sieciowy na urządzeniu.

Jeśli występują problemy z komunikacją, zacznij od następujących podstawowych czynności:

  1. Upewnij się, że urządzenie jest podłączone za pomocą portu USB.

  2. Uruchom skrypt azsphere_connect.sh , jeśli jeszcze tego nie zrobiono.

  3. Sprawdź, czy możesz komunikować się bezpośrednio z urządzeniem. Przejdź do https://192.168.35.2/status w przeglądarce internetowej. Ignoruj i odrzuć wszelkie wyświetlane ostrzeżenia SSL. W oknie przeglądarki sieci Web powinny być wyświetlane dane wyjściowe podobne do {"uptime":56} następujących.

Uwaga

Możesz również wykonać ten krok z poziomu wiersza polecenia przy użyciu .curl https://192.168.35.2/status --insecure

  1. Jeśli błąd będzie się powtarzał, odłącz urządzenie od portu USB, podłącz je ponownie i poczekaj na jego ponowne uruchomienie. Następnie uruchom skrypt azsphere_connect.sh .

  2. Jeśli błąd będzie się powtarzać, upewnij się, że nie występują konflikty podsieci z innymi narzędziami sieciowymi.