Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Erstellen Sie IDT kostenlos einen Gerätepool RTOS
Zu testende Geräte werden in Gerätepools organisiert. Jeder Gerätepool besteht aus einem oder mehreren identischen Geräten. Sie können IDT kostenlos konfigurierenRTOS, um ein einzelnes Gerät in einem Pool oder mehrere Geräte in einem Pool zu testen. Um den Qualifizierungsprozess zu beschleunigen, RTOS kann IDT For Free Geräte mit denselben Spezifikationen parallel testen. Er verwendet eine Round Robin-Methode, um auf jedem Gerät in einem Gerätepool eine andere Testgruppe auszuführen.
Sie können ein oder mehrere Geräte zu einem Gerätepool hinzufügen, indem Sie den Abschnitt devices
der Vorlage device.json
im Ordner configs
bearbeiten.
Anmerkung
Alle Geräte im selben Pool müssen dieselbe technische Spezifikation haben undSKU.
Um parallel Builds des Quellcodes für verschiedene Testgruppen zu ermöglichen, RTOS kopiert IDT For Free den Quellcode in einen Ergebnisordner innerhalb des RTOS extrahierten IDT For Free-Ordners. Der Quellcodepfad in Ihrem Build- oder Flash-Befehl muss entweder mit der sdkPath
Variablen testdata.sourcePath
oder referenziert werden. IDTfor Free RTOS ersetzt diese Variable durch einen temporären Pfad des kopierten Quellcodes. Weitere Informationen finden Sie unter IDTfür kostenlose Variablen RTOS.
Im Folgenden sehen Sie, wie eine device.json
-Datei zur Erstellung eines Gerätepools mit mehreren Geräten verwendet wird:
[
{
"id": "pool-id
",
"sku": "sku
",
"features": [
{
"name": "WIFI",
"value": "Yes | No"
},
{
"name": "Cellular",
"value": "Yes | No"
},
{
"name": "OTA",
"value": "Yes | No",
"configs": [
{
"name": "OTADataPlaneProtocol",
"value": "HTTP | MQTT"
}
]
},
{
"name": "BLE",
"value": "Yes | No"
},
{
"name": "TCP/IP",
"value": "On-chip | Offloaded | No"
},
{
"name": "TLS",
"value": "Yes | No"
},
{
"name": "PKCS11",
"value": "RSA | ECC | Both | No"
},
{
"name": "KeyProvisioning",
"value": "Import | Onboard | No"
}
],
"devices": [
{
"id": "device-id
",
"connectivity": {
"protocol": "uart",
"serialPort": "/dev/tty*
"
},
***********Remove the section below if the device does not support onboard key generation***************
"secureElementConfig" : {
"publicKeyAsciiHexFilePath": "absolute-path-to/public-key-txt-file: contains-the-hex-bytes-public-key-extracted-from-onboard-private-key
",
"secureElementSerialNumber": "secure-element-serialNo-value
",
"preProvisioned" : "Yes | No"
},
**********************************************************************************************************
"identifiers": [
{
"name": "serialNo",
"value": "serialNo-value
"
}
]
}
]
}
]
Die folgenden Attribute werden in der Datei device.json
verwendet:
id
-
Eine benutzerdefinierte alphanumerische ID, die einen Gerätepool eindeutig identifiziert. Geräte, die zu einem Pool gehören, müssen vom gleichen Typ sein. Bei der Ausführung einer Reihe von Tests werden Geräte im Pool verwendet, um den Workload zu parallelisieren.
sku
-
Ein alphanumerischer Wert, mit dem das getestete Board eindeutig identifiziert wird. Das SKU wird verwendet, um qualifizierte Foren zu verfolgen.
Anmerkung
Wenn Sie Ihr Board im Gerätekatalog für AWS Partner auflisten möchten, muss das, was SKU Sie hier angeben, dem entsprechenSKU, das Sie bei der Angebotserstellung verwendet haben.
features
-
Ein Array, das die vom Gerät unterstützten Funktionen enthält. AWS IoT Device Tester verwendet diese Informationen, um die durchzuführenden Qualifikationstests auszuwählen.
Unterstützte Werte sind:
TCP/IP
-
Zeigt an, ob Ihr Motherboard einen TCP /IP-Stack unterstützt und ob er auf dem Chip (MCU) oder auf ein anderes Modul ausgelagert wird. TCP/IP ist für die Qualifizierung erforderlich.
WIFI
-
Gibt an, ob Ihr Board über WiFi-Funktionen verfügt. Muss auf gesetzt werden,
No
wenn auf gesetztCellular
ist.Yes
Cellular
-
Zeigt an, ob Ihr Board über Mobilfunkfunktionen verfügt. Muss auf eingestellt sein,
No
wenn auf eingestelltWIFI
istYes
. Wenn diese Funktion auf eingestellt istYes
, wird der FullSecureSockets Test mithilfe von AWS EC2 t2.micro-Instances ausgeführt. Dies kann zu zusätzlichen Kosten für Ihr Konto führen. Weitere Informationen finden Sie unter EC2Amazon-Preise. TLS
-
Zeigt an, ob Ihr Board dies unterstütztTLS. TLSist für die Qualifikation erforderlich.
PKCS11
-
Gibt den Kryptographie-Algorithmus für öffentliche Schlüssel an, der vom Board unterstützt wird. PKCS11ist für die Qualifikation erforderlich. Unterstützte Werte sind
ECC
,RSA
,Both
undNo
.Both
zeigt an, dass das Board sowohl denECC
- als auch denRSA
-Algorithmus unterstützt. KeyProvisioning
-
Gibt an, wie ein vertrauenswürdiges X.509-Clientzertifikat auf das Board geschrieben werden kann. Gültige Werte sind
Import
,Onboard
undNo
. Schlüsselbereitstellung ist für die Qualifizierung erforderlich.-
Verwenden Sie
Import
, wenn Ihr Board den Import von privaten Schlüsseln erlaubt. IDTerstellt einen privaten Schlüssel und baut diesen mit dem kostenlosen RTOS Quellcode zusammen. -
Verwenden Sie
Onboard
, wenn Ihr Board die interne Erstellung von privaten Schlüsseln unterstützt (z. B. wenn Ihr Gerät über ein sicheres Element verfügt oder wenn Sie es vorziehen, ein eigenes Geräte-Schlüsselpaar und ein eigenes Zertifikat zu generieren). Stellen Sie sicher, dass Sie in jedem der Geräteabschnitte einsecureElementConfig
-Element hinzufügen und fügen Sie den absoluten Pfad zur Datei des öffentlichen Schlüssels in das FeldpublicKeyAsciiHexFilePath
ein. -
Wenn Ihr Board die Schlüsselbereitstellung nicht unterstützt, verwenden Sie die Option
No
.
-
OTA
-
Zeigt an, ob Ihr Board die Aktualisierungsfunktion over-the-air (OTA) unterstützt. Das
OtaDataPlaneProtocol
Attribut gibt an, welches OTA Datenebenenprotokoll das Gerät unterstützt. Das Attribut wird ignoriert, wenn die OTA Funktion vom Gerät nicht unterstützt wird. Wenn diese Option ausgewählt"Both"
ist, verlängert sich die OTA Testausführungszeit, da sowohl MQTTHTTP, als auch gemischte Tests ausgeführt werden.Anmerkung
Ab IDT Version 4.1.0 werden nur
HTTP
undMQTT
als unterstützte WerteOtaDataPlaneProtocol
akzeptiert. BLE
-
Zeigt an, ob Ihr Motherboard Bluetooth Low Energy () BLE unterstützt.
devices.id
-
Eine benutzerdefinierte eindeutige Kennung für das zu testende Gerät.
devices.connectivity.protocol
-
Das Kommunikationsprotokoll, das für die Kommunikation mit diesem Gerät verwendet wird. Unterstützter Wert:
uart
. devices.connectivity.serialPort
-
Der serielle Port des Host-Computers, der zur Herstellung einer Verbindung mit den getesteten Geräten verwendet wird.
devices.secureElementConfig.PublicKeyAsciiHexFilePath
-
Der absolute Pfad zu der Datei, die den öffentlichen Hex-Byte-Schlüssel enthält, der aus dem integrierten privaten Schlüssel extrahiert wurde.
Beispielformat:
3059 3013 0607 2a86 48ce 3d02 0106 082a 8648 ce3d 0301 0703 4200 04cd 6569 ceb8 1bb9 1e72 339f e8cf 60ef 0f9f b473 33ac 6f19 1813 6999 3fa0 c293 5fae 08f1 1ad0 41b7 345c e746 1046 228e 5a5f d787 d571 dcb2 4e8d 75b3 2586 e2cc 0c
Wenn Ihr öffentlicher Schlüssel im.der-Format vorliegt, können Sie den öffentlichen Schlüssel direkt hexcodieren, um die Hex-Datei zu generieren.
Beispielbefehl für den öffentlichen Schlüssel .der zur Generierung einer Hex-Datei:
xxd -p pubkey.der > outFile
Wenn Ihr öffentlicher Schlüssel im.pem-Format vorliegt, können Sie den Base64-kodierten Teil extrahieren, ihn in das Binärformat dekodieren und ihn dann hexadezimalkodieren, um die Hex-Datei zu generieren.
Verwenden Sie beispielsweise diese Befehle, um eine Hex-Datei für einen öffentlichen PEM-Schlüssel zu generieren:
-
Nehmen Sie den base64-codierten Teil des Schlüssels heraus (entfernen Sie die Kopf- und Fußzeile) und speichern Sie ihn in einer Datei. Geben Sie ihm beispielsweise einen Namen, führen Sie diesen Befehl aus
base64key
, um ihn in das Format.der zu konvertieren:base64 —decode base64key > pubkey.der
-
Führen Sie den
xxd
Befehl aus, um ihn in das Hex-Format zu konvertieren.xxd -p pubkey.der > outFile
-
devices.secureElementConfig.SecureElementSerialNumber
-
(Optional) Die Seriennummer des sicheren Elements. Geben Sie dieses Feld an, wenn die Seriennummer zusammen mit dem öffentlichen Schlüssel des Geräts ausgedruckt wird, wenn Sie das kostenlose RTOS Demo-/Testprojekt ausführen.
devices.secureElementConfig.preProvisioned
-
(Optional) Wählen Sie „Ja“, wenn das Gerät über ein vorab bereitgestelltes Sicherheitselement mit gesperrten Anmeldeinformationen verfügt, das keine Objekte importieren, erstellen oder zerstören kann. Diese Konfiguration wird nur wirksam, wenn sie
features
auf „Onboard“ und gleichzeitig auf ""PKCS11
gesetzt ist.KeyProvisioning
ECC identifiers
-
(Optional) Ein Array beliebiger Namen-Wert-Paare. Sie können diese Werte in den im nächsten Abschnitt beschriebenen Build- und Flash-Befehlen verwenden.