

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.

# Richten Sie die Voraussetzungen für die LTS-Qualifikation ein
<a name="lts-idt-dev-tester-prereqs"></a>

In diesem Abschnitt werden die Voraussetzungen für das Testen von Mikrocontrollern mit AWS IoT Device Tester beschrieben.

## Bereiten Sie sich auf die FreeRTOS-Qualifikation vor
<a name="idt-preparing-qualification"></a>

**Anmerkung**  
AWS IoT Device Tester for FreeRTOS empfiehlt dringend, die neueste Patch-Version der neuesten FreeRTOS-LTS-Version zu verwenden.

IDT für FRQ 2.0 ist eine Qualifikation für FreeRTOS. Bevor Sie IDT FRQ 2.0 zur Qualifizierung ausführen, müssen Sie die Qualifizierung [Ihres Boards im *FreeRTOS* Qualification](https://docs.aws.amazon.com/freertos/latest/qualificationguide/freertos-qualification.html) Guide abschließen. Informationen zum Portieren, Testen und Einrichten von Bibliotheken finden Sie unter [Portieren der `manifest.yml` FreeRTOS-Bibliotheken im *FreeRTOS*](https://docs.aws.amazon.com/freertos/latest/portingguide/afr-porting.html) Porting Guide. FRQ 2.0 beinhaltet ein anderes Qualifizierungsverfahren. Einzelheiten finden Sie [im *FreeRTOS-Qualifikationsleitfaden unter Letzte Qualifikationsänderungen*](https://docs.aws.amazon.com/freertos/latest/qualificationguide/latest-changes.html).

Das [FreeRTOS-Libraries-Integration-Tests-Repository muss vorhanden](https://github.com/FreeRTOS/FreeRTOS-Libraries-Integration-Tests) sein, damit IDT ausgeführt werden kann. Informationen zum Klonen und [Portieren dieses Repositorys in Ihr Quellprojekt finden Sie in der README.md.](https://github.com/FreeRTOS/FreeRTOS-Libraries-Integration-Tests/blob/main/README.md) FreeRTOS-Libraries-Integration-Testsmuss die Datei enthalten, die `manifest.yml` sich im Stammverzeichnis Ihres Projekts befindet, damit IDT ausgeführt werden kann. 

**Anmerkung**  
IDT hängt von der Implementierung von im Test-Repository ab. `UNITY_OUTPUT_CHAR` Die Testausgabeprotokolle und die Geräteprotokolle dürfen nicht miteinander verschachtelt werden. Weitere Informationen finden Sie im Abschnitt [Implementierung der Bibliotheksprotokollierungsmakros](https://docs.aws.amazon.com/freertos/latest/portingguide/afr-library-logging-macros.html) im *FreeRTOS Porting Guide*. 

## Laden Sie IDT für FreeRTOS herunter
<a name="idt-download-dev-tester-afr"></a>

Jede Version von FreeRTOS hat eine entsprechende Version von IDT für FreeRTOS zur Durchführung von Qualifizierungstests. Laden Sie die entsprechende Version von IDT für FreeRTOS von [Unterstützte Versionen von AWS IoT Device Tester](https://docs.aws.amazon.com/freertos/latest/userguide/dev-test-versions-afr.html) für FreeRTOS herunter.

Extrahieren Sie IDT for FreeRTOS an einen Speicherort im Dateisystem, für den Sie Lese- und Schreibberechtigungen haben. Da Microsoft Windows eine Zeichenbeschränkung für die Pfadlänge hat, extrahieren Sie IDT für FreeRTOS in ein Stammverzeichnis wie oder. `C:\` `D:\`

**Anmerkung**  
IDT darf nicht von mehreren Benutzern von einem gemeinsam genutzten Speicherort aus ausgeführt werden, z. B. von einem NFS-Verzeichnis oder einem gemeinsam genutzten Windows-Netzwerkordner. Dies führt zu Abstürzen oder Datenbeschädigungen. Es wird empfohlen, das IDT-Paket in einem lokalen Laufwerk zu extrahieren.

## Laden Sie Git herunter
<a name="idt-download-git"></a>

IDT muss Git als Voraussetzung installiert haben, um die Integrität des Quellcodes sicherzustellen.

Folgen Sie den Anweisungen in der [GitHub](https://github.com/git-guides/install-git)Anleitung, um Git zu installieren. Um die aktuell installierte Version von Git zu überprüfen, geben Sie den Befehl `git --version` am Terminal ein.

**Warnung**  
IDT verwendet Git, um sich an den Status eines Verzeichnisses „sauber“ oder „Dirty“ anzupassen. Wenn Git nicht installiert ist, schlagen die `FreeRTOSIntegrity` Testgruppen entweder fehl oder laufen nicht wie erwartet. Wenn IDT einen Fehler wie `git executable not found` oder zurückgibt`git command not found`, installieren Sie Git oder installieren Sie es erneut und versuchen Sie es erneut.

**Topics**
+ [Bereiten Sie sich auf die FreeRTOS-Qualifikation vor](#idt-preparing-qualification)
+ [Laden Sie IDT für FreeRTOS herunter](#idt-download-dev-tester-afr)
+ [Laden Sie Git herunter](#idt-download-git)
+ [Erstelle ein Konto AWS](#lts-config-aws-account)
+ [AWS IoT Device Tester verwaltete Richtlinie](#managed-policy)
+ [(Optional) Installieren Sie den AWS Command Line Interface](#install-cli)

## Erstelle ein Konto AWS
<a name="lts-config-aws-account"></a>

**Anmerkung**  
Die vollständige IDT-Qualifizierungssuite wird nur in den folgenden Fällen unterstützt AWS-Regionen   
USA Ost (Nord-Virginia)
 USA West (Oregon) 
Asien-Pazifik (Tokio) 
Europa (Irland) 

Um Ihr Gerät zu testen, erstellt IDT for FreeRTOS Ressourcen wie AWS IoT Dinge, FreeRTOS-Gruppen und Lambda-Funktionen. Um diese Ressourcen zu erstellen, müssen Sie für IDT for FreeRTOS ein AWS Konto und eine IAM-Richtlinie erstellen und konfigurieren, die IDT for FreeRTOS die Erlaubnis erteilt, während der Ausführung von Tests in Ihrem Namen auf Ressourcen zuzugreifen.

In den folgenden Schritten erstellen und konfigurieren Sie Ihr Konto. AWS 

1. Wenn Sie bereits ein AWS Konto haben, fahren Sie mit dem nächsten Schritt fort. Andernfalls erstellen Sie ein [AWS Konto](https://aws.amazon.com/premiumsupport/knowledge-center/create-and-activate-aws-account/).

1. Folgen Sie den Schritten unter [IAM-Rollen erstellen](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html). Fügen Sie derzeit keine Berechtigungen oder Richtlinien hinzu. 

1. Um OTA-Qualifizierungstests durchzuführen, fahren Sie mit Schritt 4 fort. Andernfalls fahren Sie mit Schritt 5 fort.

1.  Hängen Sie die Inline-Richtlinie für OTA-IAM-Berechtigungen an Ihre IAM-Rolle an. 

   1. 
**Wichtig**  
 Die folgende Richtlinienvorlage erteilt die IDT-Berechtigung zum Erstellen von Rollen, Erstellen von Richtlinien und Zuweise von Richtlinien an Rollen. IDT for FreeRTOS verwendet diese Berechtigungen für Tests, die Rollen erstellen. Obwohl die Richtlinienvorlage dem Benutzer keine Administratorrechte gewährt, können die Berechtigungen verwendet werden, um Administratorzugriff auf Ihr Konto zu erhalten. AWS 

   1.  Gehen Sie wie folgt vor, um Ihrer IAM-Rolle die erforderlichen Berechtigungen zuzuweisen: 

      1. Wählen Sie auf der Seite **Berechtigungen** die Option **Berechtigungen hinzufügen** aus.

      1. Wählen Sie **Inline-Richtlinie erstellen** aus.

      1. Wählen Sie die Registerkarte **JSON** aus und kopieren Sie die folgenden Berechtigungen in das **JSON-Textfeld**. Verwenden Sie die Vorlage unter **Die meisten Regionen**, wenn Sie sich nicht in der Region China befinden. Wenn Sie sich in der Region China befinden, verwenden Sie die Vorlage unter den **Regionen Peking und Ningxia**. 

------
#### [ Most Regions ]

------
#### [ JSON ]

****  

         ```
         {
             "Version":"2012-10-17",		 	 	 
             "Statement": [
                 {
                     "Effect": "Allow",
                     "Action": "iotdeviceadvisor:*",
                     "Resource": [
                         "arn:aws:iotdeviceadvisor:*:*:suiterun/*/*",
                         "arn:aws:iotdeviceadvisor:*:*:suitedefinition/*"
                     ]
                 },
                 {
                     "Effect": "Allow",
                     "Action": "iam:PassRole",
                     "Resource": "arn:aws:iam::*:role/idt*",
                     "Condition": {
                         "StringEquals": {
                             "iam:PassedToService": "iotdeviceadvisor.amazonaws.com"
                         }
                     }
                 },
                 {
                     "Effect": "Allow",
                     "Action": [
                         "execute-api:Invoke*",
                         "iam:ListRoles",
                         "iot:Connect",  
                         "iot:CreateJob",
                         "iot:DeleteJob",
                         "iot:DescribeCertificate", 
                         "iot:DescribeEndpoint",
                         "iot:DescribeJobExecution",
                         "iot:DescribeJob",                                 
                         "iot:DescribeThing",
                         "iot:GetPolicy",
                         "iot:ListAttachedPolicies",
                         "iot:ListCertificates",
                         "iot:ListPrincipalPolicies",
                         "iot:ListThingPrincipals",
                         "iot:ListThings",
                         "iot:Publish",    
                         "iot:UpdateThingShadow",                
                         "logs:CreateLogGroup",
                         "logs:CreateLogStream",
                         "logs:DescribeLogGroups",
                         "logs:DescribeLogStreams",
                         "logs:PutLogEvents",
                         "logs:PutRetentionPolicy"
                     ],
                     "Resource": "*"
                 },
                 {
                     "Effect": "Allow",
                     "Action": "iotdeviceadvisor:*",
                     "Resource": "*"
                 },
                 {
                     "Effect": "Allow",
                     "Action": "logs:DeleteLogGroup",
                     "Resource": "arn:aws:logs:*:*:log-group:/aws/iot/deviceadvisor/*"
                 },
                 {
                     "Effect": "Allow",
                     "Action": "logs:GetLogEvents",
                     "Resource": "arn:aws:logs:*:*:log-group:/aws/iot/deviceadvisor/*:log-stream:*"
                 },
                 {
                     "Effect": "Allow",
                     "Action": [
                         "iam:CreatePolicy",
                         "iam:DetachRolePolicy",
                         "iam:DeleteRolePolicy",
                         "iam:DeletePolicy",
                         "iam:CreateRole",
                         "iam:DeleteRole",
                         "iam:AttachRolePolicy"
                     ],
                     "Resource": [
                         "arn:aws:iam::*:policy/idt*",
                         "arn:aws:iam::*:role/idt*"
                     ]
                 },
                 {
                     "Effect": "Allow",
                     "Action": [
                         "ssm:GetParameters"
                     ],
                     "Resource": [
                         "arn:aws:ssm:*::parameter/aws/service/ami-amazon-linux-latest/amzn2-ami-hvm-x86_64-gp2"
                     ]
                 },
                 {
                     "Effect": "Allow",
                     "Action": [
                         "ec2:DescribeInstances",
                         "ec2:RunInstances",
                         "ec2:CreateSecurityGroup",
                         "ec2:CreateTags",
                         "ec2:DeleteTags"
                     ],
                     "Resource": [
                         "*"
                     ]
                 },
                 {
                     "Effect": "Allow",
                     "Action": [
                         "ec2:CreateKeyPair",
                         "ec2:DeleteKeyPair"
                     ],
                     "Resource": [
                         "arn:aws:ec2:*:*:key-pair/idt-ec2-ssh-key-*"
                     ]
                 },
                 {
                     "Effect": "Allow",
                     "Condition": {
                         "StringEqualsIgnoreCase": {
                             "aws:ResourceTag/Owner": "IoTDeviceTester"
                         }
                     },
                     "Action": [
                         "ec2:TerminateInstances",
                         "ec2:DeleteSecurityGroup",
                         "ec2:AuthorizeSecurityGroupIngress",
                         "ec2:RevokeSecurityGroupIngress"
                     ],
                     "Resource": [
                         "*"
                     ]
                 }
             ]
         }
         ```

------

------
#### [ Beijing and Ningxia Regions ]

         Die folgende Richtlinienvorlage kann in den Regionen Peking und Ningxia verwendet werden.

------

      1. Wählen Sie, wenn Sie fertig sind, **Review policy (Richtlinie überprüfen)** aus.

      1. Geben Sie **IDTFreeRTOSIAMPermissions**den Namen der Richtlinie ein.

      1. Wählen Sie **Richtlinie erstellen** aus.

1.  Hängen Sie **AWSIoTDeviceTesterForFreeRTOSFullAccess** an Ihre IAM-Rolle an. 

   1. Gehen Sie wie folgt vor, um Ihrer IAM-Rolle die erforderlichen Berechtigungen zuzuweisen:

      1. Wählen Sie auf der Seite **Berechtigungen** die Option **Berechtigungen hinzufügen** aus.

      1. Wählen Sie **Richtlinien anfügen**.

      1. Suchen Sie nach der **AWSIoTDeviceTesterForFreeRTOSFullZugriffsrichtlinie**. Markieren Sie das Kästchen.

   1. Wählen Sie **Add permissions** (Berechtigungen hinzufügen) aus.

1. Anmeldeinformationen für IDT exportieren. Weitere Informationen finden Sie unter [Abrufen von IAM-Rollenanmeldedaten für den CLI-Zugriff](https://docs.aws.amazon.com/singlesignon/latest/userguide/howtogetcredentials.html).

## AWS IoT Device Tester verwaltete Richtlinie
<a name="managed-policy"></a>

Die `AWSIoTDeviceTesterForFreeRTOSFullAccess` verwaltete Richtlinie enthält die folgenden AWS IoT Device Tester Berechtigungen für die Versionsprüfung, auto Aktualisierungsfunktionen und die Erfassung von Metriken.
+ `iot-device-tester:SupportedVersion`

  Erteilt die AWS IoT Device Tester Berechtigung zum Abrufen der Liste der unterstützten Produkte, Testsuiten und IDT-Versionen.
+ `iot-device-tester:LatestIdt`

   AWS IoT Device Tester Erteilt die Erlaubnis, die neueste IDT-Version abzurufen, die zum Herunterladen verfügbar ist.
+ `iot-device-tester:CheckVersion`

   AWS IoT Device Tester Erteilt die Erlaubnis, die Versionskompatibilität für IDT, Testsuiten und Produkte zu überprüfen.
+ `iot-device-tester:DownloadTestSuite`

   AWS IoT Device Tester Erteilt die Erlaubnis zum Herunterladen von Testsuite-Updates.
+ `iot-device-tester:SendMetrics`

   AWS Erteilt die Erlaubnis, Metriken zur AWS IoT Device Tester internen Nutzung zu sammeln.

## (Optional) Installieren Sie den AWS Command Line Interface
<a name="install-cli"></a>

Möglicherweise ziehen Sie es vor, den zu verwenden AWS CLI , um einige Operationen auszuführen. Wenn Sie das nicht AWS CLI installiert haben, folgen Sie den Anweisungen unter [Installieren](https://docs.aws.amazon.com/cli/latest/userguide/installing.html) von AWS CLI.

Konfigurieren Sie das AWS CLI für die AWS Region, die Sie verwenden möchten, indem Sie es **aws configure** von einer Befehlszeile aus ausführen. Informationen zu den AWS Regionen, die IDT für FreeRTOS unterstützen, finden Sie unter [AWS Regionen](https://docs.aws.amazon.com/general/latest/gr/rande.html#amazon-freertos-ota-control) und Endpunkte. [Weitere Informationen finden Sie unter Schnellkonfiguration mit**aws configure**. **aws configure**](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html#cli-configure-quickstart-config)