Možnosti a komunikace zařízení
Důležité
Toto je dokumentace k Azure Sphere (starší verze). Azure Sphere (starší verze) se vyřazuje 27. září 2027 a uživatelé musí do této doby migrovat do Azure Sphere (integrované). K zobrazení dokumentace k Azure Sphere (integrované) použijte selektor verzí umístěný nad obsahem.
Možnosti zařízení určují zásady operačního systému specifické pro konkrétní zařízení pro komunikaci service-UART . Veškerá komunikace mezi hostitelským počítačem a připojeným zařízením je prostřednictvím rozhraní UART služby. Hostitelský počítač komunikuje s připojeným zařízením za účelem provádění operací na zařízení. Výrobci, vývojáři softwaru a technici služby u zákazníků používají funkce k odemknutí komunikace typu service-UART pro operace, které vyžadují, a zároveň zajišťují ochranu zařízení před škodlivými uživateli.
Výrobci zařízení a výrobci OEM můžou uzamknout komunikaci service-UART, aby zabránili neoprávněnému použití uživatelům, kteří mají fyzický přístup k zařízení. Uzamčení takové komunikace je součástí finalizace zařízení. Po dokončení může uživatel získat ID zařízení, ale nic dalšího; všechny ostatní operace vyžadují schopnost zařízení. Finalizace se obvykle provádí na výrobní podlahě před tím, než výrobce dodává zařízení do místa zákazníka.
Soubor schopností zařízení obsahuje pouze nula nebo více funkcí pro jedno zařízení. Soubor schopností nebude fungovat, pokud se použije na zařízení, které není určené. Zařízení může mít následující funkce, z nichž každý je popsaný dále v tomto tématu:
Poznámka:
Možnosti zařízení nesouvisejí s možnostmi aplikace. Možnosti aplikace určují prostředky, které aplikace vyžaduje za běhu. Další informace o možnostech aplikace najdete v manifestu aplikace.
Určení možností zařízení nebo výrobního stavu
Pokud chcete určit konfiguraci schopností uloženou na připojeném zařízení, použijte příkaz azsphere device capability show-attached. Příkaz zobrazí možnosti, které jsou nakonfigurované pomocí souboru schopností a některých, ale ne všech funkcí, které jsou ve výchozím nastavení k dispozici na panelech. Úplný seznam příkazů azsphere , které vyžadují schopnost zařízení, najdete v tabulce v přehledu rozhraní příkazového řádku.
Možnosti zařízení mohou být ovlivněny stavem výroby zařízení. K určení stavu výroby zařízení použijte příkaz azsphere device manufacturing-state show. Pokud příkaz ukazuje, že zařízení je ve stavu výroby DeviceComplete nebo vrací Device access is forbidden
, komunikace service-UART je uzamčená a potřebujete schopnost zařízení komunikovat se zařízením z počítače. Pokud je zařízení ve stavu výroby DeviceComplete , jsou výrobní operace povoleny pouze v případě, že je zařízení odemknuté prostřednictvím souboru schopností.
Poznámka:
Pokud zařízení nainstalujete v lokalitě zákazníka, měli byste před instalací zajistit, aby bylo zařízení dokončeno do výrobního stavu DeviceComplete . Viz Dokončení zařízení Azure Sphere.
Stav manufacuring deviceComplete není obvykle vhodný pro vývojovou sadu. Aby bylo možné testování výrobních operací vyvinutých výrobními inženýry, musí být vývojová sada v prázdném stavu výroby nebo ve stavu výroby Module1Complete .
Jak zařízení získávají možnosti
Zařízení můžou získat možnosti jedním ze tří způsobů:
Ve výchozím nastavení je otevřeno. Zařízení, které je v prázdném stavu výroby nebo ve stavu výroby Module1Complete, má ve výchozím nastavení některé možnosti otevřené. To se provádí tak, aby zařízení stále ve fázi výroby nemusela být připojená ke cloudu nebo k tenantům nárokována, jak to vyžaduje proces použití souborů schopností zařízení k odemknutí schopností. V průběhu výroby mohou výrobci změnit stav výroby zařízení tak, aby uzamkli funkce, které už nejsou vhodné, jak je popsáno v úlohách výrobního prostředí.
Na zařízení je načítané bokem. Zařízení může mít na zařízení bokem načtený soubor z hostitelského počítače. Pomocí příkazu azsphere device capability download načtěte soubor schopností. Tato sada funkcí se zkušebním načtením přetrvává, dokud se nenačte nový soubor schopností (což může být prázdný soubor bez schopností). Jedná se o obvyklou situaci při vývoji aplikací, například při spuštění příkazu azsphere device enable-development. Vývoj aplikací se pomáhá tím, že zařízení je odemčené, kde vývojář může provádět operace, jako je ladění a snadné odstranění a nasazení verzí aplikace se zkušebním načtením.
Předáno do zařízení s každou operací. Zařízení může mít místně vybrané funkce použité pro jednotlivé operace. Příkaz azsphere device capability select vybere soubor schopností uložený místně na hostitelském počítači. Po spuštění tohoto příkazu se vybraná funkce předá z počítače do zařízení s každým dalším příkazem. Jedná se o doporučený způsob použití funkcí pro zařízení, která jsou v terénu, protože možnosti jsou uložené v počítači, nikoli na zařízení. Riziko náhodného opuštění zařízení v nezabezpečeném stavu technikem v terénu tím, že zapomenete odebrat schopnost, se vyhnete.
Před zkušebním načtením souboru schopností do zařízení nebo předáním do zařízení s operací je nutné ho stáhnout ze služby zabezpečení Azure Sphere (AS3), jak je popsáno v tématu Provedení změn zařízení po výrobě. Stažené soubory funkcí jsou specifické pro zařízení; po stažení lze soubor schopností použít opakovaně na přidruženém zařízení.
Funkce enableRfTestMode
Funkce enableRfTestMode je ve výchozím nastavení k dispozici na zařízení, když je stav výroby zařízení prázdný. Tato schopnost umožňuje programování e-pojistk a konfigurace a testování operace RF. Není možné, aby si vlastníci tenantů tuto funkci stáhli do hostitelského počítače. Pokud tuto funkci potřebujete, obraťte se na zástupce Microsoftu.
Pokud je stav výroby zařízení prázdný, příkaz azsphere device capability show-attached zobrazí funkci enableRfTestMode .
Funkce appDevelopment
Funkce zařízení appDevelopment odemkne komunikaci service-UART a změní typ podepisování, kterému zařízení důvěřuje. Je určen pro použití při vývoji aplikací.
Zařízení Azure Sphere ve výchozím nastavení důvěřují balíčkům imagí podepsaných v produkčním prostředí, které stáhnou služba zabezpečení Azure Sphere, ale nedůvěřují balíčkům imagí podepsaným sadou SDK. Proto nemůžete vytvořit balíček image se sadou SDK a načíst ho do zařízení Azure Sphere pro ladění, pokud zařízení nemá schopnost appDevelopment . Funkce appDevelopment způsobí, že zařízení důvěřuje balíčku image a umožňuje spustit, zastavit, ladit nebo odebrat aplikaci ze zařízení.
V souhrnu funkce appDevelopment odemkne komunikaci service-UART, aby umožňovala následující operace:
Zkušební načtení balíčku image vytvořeného pomocí sady Visual Studio, Visual Studio Code, rozhraní příkazového řádku nebo příkazu azsphere image-package.
Spuštění, zastavení, ladění nebo odebrání balíčku image ze zařízení Azure Sphere bez ohledu na to, jak je balíček image podepsaný.
Pokud chcete přidat funkci appDevelopment , použijte příkaz azsphere device enable-development . Tento příkaz stáhne funkci appDevelopment pro připojené zařízení, načte do zařízení možnost bokem a přesune zařízení do výchozí skupiny vývojových zařízení. Pokud chcete zadat jinou skupinu zařízení, zahrňte parametr --device-group
.
Pokud použijete azsphere device enable-development, zůstane zařízení odemknuté, dokud ho explicitně nezamknete. Pokud chcete zařízení znovu zamknout, použijte příkaz azsphere device enable-cloud-test. Tento příkaz odebere schopnost a změní skupinu zařízení v závislosti na zadaných parametrech příkazového řádku.
Příkazy azsphere device enable-development a azsphere device enable-cloud-test provádějí posloupnost akcí, které připraví zařízení na vývoj a ladění nebo pro nasazení v cloudu. Místo použití těchto příkazů můžete pomocí příkazu azsphere device capability stáhnout nebo aktualizovat funkce zařízení nebo zjistit, které funkce zařízení aktuálně má.
Funkce fieldServicing
Funkce fieldServicing je ve výchozím nastavení k dispozici na zařízení, pokud má zařízení stav výroby Prázdné nebo Module1Complete. Pokud je zařízení ve stavu výroby DeviceComplete , může být možnost fieldServicingu bokem načtena, ale obvykle se předává do zařízení s každou operací během servisní relace. Podrobnosti o tom, jak spustit servisní relaci, najdete v tématu Provedení změn zařízení po výrobě.
Bez ohledu na stav výroby zařízení odemyká fieldServicing komunikaci service-UART tak, aby umožňovala následující operace:
- Zkušební načtení balíčku image podepsaného v produkčním prostředí
- Spuštění, zastavení a odstranění balíčku image podepsaného v produkčním prostředí, který je označený jako dočasný.
- Provádění rutinních úloh údržby, jako je konfigurace Wi-Fi.
Přestože je v zařízení ve výchozím nastavení k dispozici schopnost fieldServicing, když je stav výroby zařízení Prázdný nebo Module1Complete, příkaz azsphere device capability show-attached nezobrazuje schopnost fieldServicing.
Závislost na aktuálním důvěryhodném úložišti klíčů
Když je soubor funkcí vytvořený službou AS3, je podepsaný pomocí aktuálního podpisového klíče image. Každé zařízení má důvěryhodné úložiště klíčů jako součást operačního systému, kde jsou tyto klíče uchovány. Pokud ale zařízení není připojené k internetu, je možné, že zařízení nebude důvěryhodné, pokud je důvěryhodné úložiště klíčů daného zařízení zastaralé.
Jedním z způsobů, jak to napravit, je umožnit zařízení připojit se k internetu, aby aktualizovalo důvěryhodné úložiště klíčů. Připojte zařízení k internetu a stisknutím resetování aktivujte aktualizaci operačního systému.
Pokud to není možné, můžete provést zkušební načtení aktualizovaného důvěryhodného úložiště klíčů. Pokud to chcete udělat, přijměte licenční podmínky a stáhněte si nejnovější image pro obnovení operačního systému a z tohoto souboru ZIP extrahujte jenom soubor "trusted-keystore.bin". Potom můžete použít příkaz azsphere device sideload deploy --image-package <path-to-trustedkeystore.bin-file> k bočnímu načtení důvěryhodného úložiště klíčů a funkce by teď měla být důvěryhodná zařízením.
Třetí metodou je Obnovení systémového softwaru pro aktualizaci operačního systému Azure Sphere na nejnovější vydanou verzi, včetně nejnovějšího důvěryhodného úložiště klíčů.