Apparaatmogelijkheden en communicatie
Belangrijk
Dit is de Documentatie voor Azure Sphere (verouderd). Azure Sphere (verouderd) wordt op 27 september 2027 buiten gebruik gesteld en gebruikers moeten tegen deze tijd migreren naar Azure Sphere (geïntegreerd). Gebruik de versiekiezer boven de inhoudsweergave om de Documentatie van Azure Sphere (geïntegreerd) weer te geven.
De apparaatmogelijkheden bepalen apparaatspecifiek besturingssysteembeleid voor service-UART-communicatie . Alle communicatie tussen de hostcomputer en een gekoppeld apparaat vindt plaats via de UART-service. De hostcomputer communiceert met een gekoppeld apparaat om bewerkingen op het apparaat uit te voeren. Fabrikanten, softwareontwikkelaars en fieldservice technici gebruiken mogelijkheden om service-UART-communicatie te ontgrendelen voor de bewerkingen die ze nodig hebben, terwijl ze ervoor zorgen dat het apparaat wordt beschermd tegen kwaadwillende gebruikers.
Apparaatfabrikanten en OEM's kunnen service-UART-communicatie vergrendelen om onbevoegd gebruik te voorkomen door personen die fysieke toegang tot het apparaat hebben. Het vergrendelen van dergelijke communicatie maakt deel uit van de apparaatafsluiting. Na het voltooien kan een gebruiker de id van een apparaat ophalen, maar niets meer; voor alle andere bewerkingen is een apparaatmogelijkheid vereist. De afronding wordt doorgaans uitgevoerd op de fabrieksvloer voordat de fabrikant het apparaat naar een klantsite verzendt.
Een apparaatmogelijkheidsbestand bevat alleen nul of meer mogelijkheden voor één apparaat. Het mogelijkheidsbestand werkt niet als het wordt toegepast op een apparaat dat niet het apparaat is waarvoor het is bedoeld. Een apparaat kan de volgende mogelijkheden hebben, die verderop in dit onderwerp worden beschreven:
Notitie
Apparaatmogelijkheden zijn niet gerelateerd aan toepassingsmogelijkheden. Toepassingsmogelijkheden geven de resources op die een toepassing tijdens runtime nodig heeft. Zie het toepassingsmanifest voor meer informatie over toepassingsmogelijkheden.
Apparaatmogelijkheden of productiestatus bepalen
Gebruik de opdracht azsphere device capability show-attached om de mogelijkheidsconfiguratie te bepalen die is opgeslagen op het gekoppelde apparaat. Met de opdracht worden de mogelijkheden weergegeven die zijn geconfigureerd met behulp van een mogelijkheidsbestand en sommige, maar niet alle, mogelijkheden die standaard aanwezig zijn op borden. Zie de tabel in het CLI-overzicht voor een volledige lijst met azsphere-opdrachten waarvoor een apparaatmogelijkheid is vereist.
De apparaatmogelijkheden kunnen worden beïnvloed door de productiestatus van het apparaat. Gebruik de opdracht azsphere device manufacturing-state show om de productiestatus van het apparaat te bepalen. Als de opdracht laat zien dat het apparaat de productiestatus DeviceComplete heeft of retourneert Device access is forbidden
, is service-UART-communicatie vergrendeld en hebt u een apparaatmogelijkheid nodig om vanaf uw computer met het apparaat te communiceren. Wanneer een apparaat de productiestatus DeviceComplete heeft, zijn productiebewerkingen alleen toegestaan wanneer het apparaat wordt ontgrendeld via een mogelijkheidsbestand.
Notitie
Als u een apparaat op een klantsite installeert, moet u ervoor zorgen dat het apparaat vóór de installatie is voltooid naar de productiestatus DeviceComplete . Zie Het Azure Sphere-apparaat voltooien.
De apparaatcomplete-fabrikantstatus is normaal gesproken niet geschikt voor een dev kit. Om het testen van de productiebewerkingen die worden ontwikkeld door productietechnici mogelijk te maken, moet een dev kit de status Blank manufacturing of Module1Complete manufacturing state hebben.
Hoe apparaten mogelijkheden verkrijgen
Apparaten kunnen op drie manieren mogelijkheden verkrijgen:
Standaard geopend. Een apparaat met de status Lege productie of module1Complete-productiestatus heeft standaard enkele mogelijkheden die zijn geopend. Dit wordt gedaan zodat apparaten die zich nog in de productiefase bevinden, niet hoeven te worden verbonden met de cloud of in tenants hoeven te worden geclaimd, zoals vereist is voor het proces van het gebruik van apparaatmogelijkheidsbestanden om mogelijkheden te ontgrendelen. Naarmate de productie vordert, kunnen fabrikanten de productiestatus van het apparaat wijzigen om mogelijkheden te vergrendelen die niet meer geschikt zijn, zoals beschreven in taken op de fabrieksvloer.
Sideloaden op het apparaat. Een apparaat kan een mogelijkheidsbestand sideloaden op het apparaat vanaf de hostcomputer. Gebruik de opdracht azsphere device capability download om het mogelijkheidsbestand op te halen. Deze sideloaded set mogelijkheden blijft behouden totdat een nieuw mogelijkheidsbestand (dat mogelijk een leeg bestand zonder mogelijkheden is) sideloaden. Dit is de gebruikelijke situatie tijdens het ontwikkelen van toepassingen, bijvoorbeeld wanneer de opdracht azsphere device enable-development wordt uitgevoerd. Toepassingsontwikkeling wordt geholpen door het apparaat in een ontgrendelde status te hebben, waar de ontwikkelaar bewerkingen kan uitvoeren, zoals foutopsporing en eenvoudig sideloadversies van de toepassing kan verwijderen en implementeren.
Doorgegeven aan het apparaat met elke bewerking. Op een apparaat kunnen lokaal geselecteerde mogelijkheden per bewerking worden toegepast. De opdracht azsphere-apparaatselectie selecteert een mogelijkheidsbestand dat lokaal is opgeslagen op de hostcomputer. Zodra deze opdracht is uitgevoerd, wordt de geselecteerde mogelijkheid vanaf de computer doorgegeven aan het apparaat met elke volgende opdracht. Dit is de aanbevolen manier om mogelijkheden te gebruiken voor apparaten die zich in het veld bevinden, omdat de mogelijkheden op de computer worden opgeslagen in plaats van op het apparaat. Het risico dat een veldtechnicus het apparaat per ongeluk in een onbeveiligde toestand verlaat door te vergeten de mogelijkheid te verwijderen, wordt vermeden.
Voordat een mogelijkheidsbestand kan worden sideloaden op een apparaat of aan een apparaat met een bewerking kan worden doorgegeven, moet het worden gedownload van de Azure Sphere-beveiligingsservice (AS3), zoals wordt beschreven in Wijzigingen aanbrengen in een apparaat na de vervaardiging. Gedownloade mogelijkheidsbestanden zijn apparaatspecifiek; zodra het bestand is gedownload, kan een mogelijkheidsbestand herhaaldelijk op het bijbehorende apparaat worden gebruikt.
De mogelijkheid enableRfTestMode
De enableRfTestMode-functie is standaard aanwezig op het apparaat wanneer de productiestatus van het apparaat leeg is. Deze mogelijkheid maakt het programmeren van e-fuses en de configuratie en het testen van RF-bewerking mogelijk. Het is niet mogelijk voor tenanteigenaren om deze mogelijkheid te downloaden naar een hostcomputer. Neem contact op met uw Microsoft-vertegenwoordiger als u deze mogelijkheid nodig hebt.
Wanneer de productiestatus van het apparaat leeg is, wordt met de opdracht azsphere device capability show-attached de enableRfTestMode-mogelijkheid weergegeven.
De appOntwikkelingsmogelijkheid
De appOntwikkelingsapparaatfunctie ontgrendelt service-UART-communicatie en wijzigt het type ondertekening dat het apparaat vertrouwt. Het is bedoeld voor gebruik tijdens het ontwikkelen van toepassingen.
Standaard vertrouwen Azure Sphere-apparaten op productieondertekende installatiekopieën die worden gedownload door de Azure Sphere-beveiligingsservice, maar vertrouwen sdk-ondertekende installatiekopieën niet. Daarom kunt u geen installatiekopieënpakket met de SDK maken en het sideloaden op uw Azure Sphere-apparaat voor foutopsporing, tenzij het apparaat de mogelijkheid app Development heeft. De appOntwikkelingsfunctie zorgt ervoor dat het apparaat het installatiekopieënpakket vertrouwt en u in staat stelt een toepassing te starten, te stoppen, fouten op te sporen of te verwijderen van het apparaat.
Kortom, de appOntwikkelingsfunctie ontgrendelt service-UART-communicatie om de volgende bewerkingen toe te staan:
Sideloading van een installatiekopiepakket dat is gebouwd met Visual Studio, Visual Studio Code, de CLI of de opdracht azsphere image-package.
Starten, stoppen, foutopsporing of het verwijderen van een installatiekopieënpakket van het Azure Sphere-apparaat, ongeacht hoe het installatiekopieënpakket is ondertekend.
Gebruik de opdracht azsphere device enable-development om de app Development-mogelijkheid toe te voegen. Met deze opdracht wordt de app Development-mogelijkheid voor het gekoppelde apparaat gedownload, wordt de mogelijkheid naar het apparaat sideload en wordt het apparaat verplaatst naar de standaardgroep Ontwikkelapparaten. Als u een andere apparaatgroep wilt opgeven, neemt u de --device-group
parameter op.
Wanneer u azsphere device enable-development gebruikt, blijft het apparaat ontgrendeld totdat u het expliciet vergrendelt. Gebruik de opdracht azsphere device enable-cloud-test om het apparaat opnieuw te koppelen. Met deze opdracht wordt de mogelijkheid verwijderd en wordt de apparaatgroep gewijzigd, afhankelijk van de opgegeven opdrachtregelparameters.
De opdrachten azsphere device enable-development en azsphere device enable-cloud-test voeren een reeks acties uit waarmee een apparaat wordt voorbereid op ontwikkeling en foutopsporing of voor cloudimplementaties. In plaats van deze opdrachten te gebruiken, kunt u de opdracht azsphere device capability gebruiken om een apparaatmogelijkheid te downloaden of bij te werken, of om erachter te komen welke mogelijkheden een apparaat momenteel heeft.
De fieldServicing-mogelijkheid
De fieldServicing-functie is standaard aanwezig op een apparaat wanneer het apparaat de productiestatus Leeg of Module1Complete heeft. Wanneer een apparaat de productiestatus DeviceComplete heeft, kan de fieldServicing-functie worden ge sideloaden, maar wordt meestal bij elke bewerking aan het apparaat doorgegeven tijdens een onderhoudssessie. Zie Wijzigingen aanbrengen in een apparaat na de vervaardiging voor meer informatie over het starten van een onderhoudssessie.
Ongeacht de productiestatus van het apparaat, ontgrendelt de fieldServicing-functie service-UART-communicatie om de volgende bewerkingen toe te staan:
- Sideloaden van een installatiekopieënpakket met productieondertekende installatiekopieën.
- Starten, stoppen en verwijderen van een installatiekopieënpakket dat als tijdelijk is gemarkeerd.
- Routineonderhoudstaken uitvoeren, zoals het configureren van Wi-Fi.
Hoewel de fieldServicing-mogelijkheid standaard aanwezig is op het apparaat wanneer de productiestatus van het apparaat leeg is of Module1Complete, wordt met de opdracht azsphere device capability show-attached de fieldServicing-mogelijkheid niet weergegeven.
Afhankelijkheid van up-to-date vertrouwde sleutelarchief
Wanneer een mogelijkheidsbestand wordt gemaakt door AS3, wordt het ondertekend met behulp van de huidige handtekeningsleutel voor afbeeldingen. Elk apparaat heeft een vertrouwde sleutelarchief als onderdeel van het besturingssysteem waarin deze sleutels worden bewaard. Als het apparaat echter niet is verbonden met internet, is het mogelijk dat een mogelijkheid niet wordt vertrouwd door het apparaat als het vertrouwde sleutelarchief van dat apparaat verouderd is.
Om dit probleem op te lossen, is het mogelijk te maken dat het apparaat verbinding maakt met internet, zodat het de vertrouwde sleutelopslag bijwerken. Verbind uw apparaat met internet en druk op Reset om een update van het besturingssysteem te activeren.
Als dit niet mogelijk is, kunt u een bijgewerkte vertrouwde sleutelarchief sideloaden. Als u dit wilt doen, accepteert u de licentievoorwaarden en downloadt u vervolgens de meest recente installatiekopieën van het besturingssysteem en haalt u uit dit zip-bestand alleen het bestand 'trusted-keystore.bin'. Vervolgens kunt u de opdracht azsphere device sideload deploy --image-package <path-to-trustedkeystore.bin-file> gebruiken om het vertrouwde sleutelarchief sideloaden. De mogelijkheid moet nu worden vertrouwd door het apparaat.
Een derde methode is het herstellen van de systeemsoftware om het Azure Sphere-besturingssysteem bij te werken naar de nieuwste uitgebrachte versie, inclusief de meest recente vertrouwde sleutelopslag.