Prerequisiti - FreeRTOS

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Prerequisiti

Questa sezione descrive i prerequisiti per testare i microcontrollori con. AWS IoT Device Tester

Preparazione della qualificazione FreeRTOS

Nota

AWS IoT Device Testerfor FreeRTOS consiglia vivamente di utilizzare l'ultima versione di patch della versione più recente di FreeRTOS-LTS.

IDT for FRQ 2.0 è una qualifica per FreeRTOS. Prima di eseguire IDT FRQ 2.0 per la qualificazione, devi completare la Qualifica della scheda nella Guida alle qualifiche di FreeRTOS. Per portare le librerie, testarle e configurarlemanifest.yml, vedete Porting the FreeRTOS library nella FreeRTOS Porting Guide. FRQ 2.0 contiene un processo diverso per la qualificazione. Consulta le ultime modifiche alla qualificazione nella guida alla qualificazione di FreeRTOS per i dettagli.

Il repository FreeRTOS-Libraries-Integration-Tests deve essere presente per l'esecuzione di IDT. Consulta il README.md su come clonare e trasferire questo repository nel tuo progetto sorgente. FreeRTOS-Libraries-Integration-Tests deve includere il manifest.yml localizzato nella radice del progetto, affinché IDT possa essere eseguito.

Nota

IDT dipende dall'implementazione del repository dei test di. UNITY_OUTPUT_CHAR I registri di uscita del test e i registri del dispositivo non devono interlacciarsi tra loro. Vedi la sezione Implementazione delle macro di registrazione della libreria nella FreeRTOS Porting Guide per ulteriori dettagli.

Scarica IDT FreeRTOS

Ogni versione di FreeRTOS ha una versione corrispondente di IDT for FreeRTOS per eseguire i test di qualificazione. Scarica la versione appropriata di IDT for FreeRTOS dalle versioni supportate di AWS IoT Device Tester for FreeRTOS.

Estrai IDT for FreeRTOS in una posizione del file system in cui disponi delle autorizzazioni di lettura e scrittura. Poiché Microsoft Windows ha un limite di caratteri per la lunghezza del percorso, estrai IDT for FreeRTOS in una directory principale come or. C:\ D:\

Nota

Più utenti non devono eseguire IDT da una posizione condivisa, come una directory NFS o una cartella condivisa di rete Windows. Ciò comporterà arresti anomali o danneggiamento dei dati. Si consiglia di estrarre il pacchetto IDT in un'unità locale.

Scarica Git

IDT deve avere Git installato come prerequisito per garantire l'integrità del codice sorgente.

Segui le istruzioni nella GitHubguida per installare Git. Per verificare la versione attualmente installata di Git, inserisci il comando git --version nel terminale.

avvertimento

IDT usa Git per allinearsi allo stato pulito o sporco di una directory. Se Git non è installato, i gruppi di FreeRTOSIntegrity test falliranno o non verranno eseguiti come previsto. Se IDT restituisce un errore come git executable not found ogit command not found, installa o reinstalla Git e riprova.

Creazione e configurazione di un account AWS

Nota

La suite completa di qualifiche IDT è supportata solo nelle seguenti aree Regioni AWS

  • Stati Uniti orientali (Virginia settentrionale)

  • Stati Uniti occidentali (Oregon)

  • Asia Pacifico (Tokyo)

  • Europa (Irlanda)

Per testare il tuo dispositivo, IDT for FreeRTOS crea risorse come AWS IoT oggetti, gruppi FreeRTOS e funzioni Lambda. Per creare tali risorse, IDT for FreeRTOS richiede la creazione e la configurazione di un AWS account e una politica IAM che conceda a IDT for FreeRTOS il permesso di accedere alle risorse per conto dell'utente durante l'esecuzione dei test.

I passaggi seguenti servono a creare e configurare il tuo AWS account.

  1. Se disponi già di un account AWS, passa alla fase successiva. Altrimenti crea un AWSaccount.

  2. Segui la procedura descritta in Creazione di ruoli IAM. Non aggiungere autorizzazioni o politiche in questo momento.

  3. Per eseguire i test di qualificazione OTA, vai al passaggio 4. Altrimenti vai al passaggio 5.

  4. Allega la politica in linea delle autorizzazioni IAM OTA al tuo ruolo IAM.

    1. Importante

      Il modello di policy seguente concede l'autorizzazione IDT per creare ruoli, policy e collegare policy ai ruoli. IDT for FreeRTOS utilizza queste autorizzazioni per i test che creano ruoli. Sebbene il modello di policy non fornisca privilegi di amministratore all'utente, le autorizzazioni possono essere utilizzate per ottenere l'accesso da amministratore al tuo AWS account.

    2. Segui i passaggi seguenti per assegnare le autorizzazioni necessarie al tuo ruolo IAM:

      1. Nella pagina Autorizzazioni, scegli Aggiungi autorizzazioni.

      2. Scegli Crea politica in linea.

      3. Scegliere la scheda JSON e copiare le seguenti autorizzazioni nella casella di testo JSON . Usa il modello nella sezione La maggior parte delle regioni se non ti trovi nella regione della Cina. Se ti trovi nella regione della Cina, usa il modello nelle regioni di Pechino e Ningxia.

        Most Regions
        { "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

        Il modello di policy seguente può essere utilizzato nelle Regioni di Pechino e Ningxia.

        { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:CreatePolicy", "iam:DetachRolePolicy", "iam:DeleteRolePolicy", "iam:DeletePolicy", "iam:CreateRole", "iam:DeleteRole", "iam:AttachRolePolicy" ], "Resource": [ "arn:aws-cn:iam::*:policy/idt*", "arn:aws-cn:iam::*:role/idt*" ] }, { "Effect": "Allow", "Action": [ "ssm:GetParameters" ], "Resource": [ "arn:aws-cn: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-cn:ec2:*:*:key-pair/idt-ec2-ssh-key-*" ] }, { "Effect": "Allow", "Condition": { "StringEqualsIgnoreCase": { "aws-cn:ResourceTag/Owner": "IoTDeviceTester" } }, "Action": [ "ec2:TerminateInstances", "ec2:DeleteSecurityGroup", "ec2:AuthorizeSecurityGroupIngress", "ec2:RevokeSecurityGroupIngress" ], "Resource": [ "*" ] } ] }
      4. Al termine, seleziona Review policy (Rivedi policy).

      5. Inserisci IDTFreeRtoSiamPermissions come nome della policy.

      6. Scegli Create Policy (Crea policy).

  5. Collega AWSIoTDeviceTesterForFreeRTOSFullAccessal tuo ruolo IAM.

    1. Per allegare le autorizzazioni necessarie al tuo ruolo IAM:

      1. Nella pagina Autorizzazioni, scegli Aggiungi autorizzazioni.

      2. Scegli Collega policy.

      3. Cerca la AWSIoTDeviceTesterForFreeRTOSFullAccesspolitica. Seleziona la casella.

    2. Scegli Add Permissions (Aggiungi autorizzazioni).

  6. Esporta credenziali per IDT. Per i dettagli, consulta Ottenere le credenziali dei ruoli IAM per l'accesso alla CLI.

Policy gestita di AWS IoT Device Tester

La policy AWSIoTDeviceTesterForFreeRTOSFullAccess gestita contiene le seguenti AWS IoT Device Tester autorizzazioni per il controllo della versione, le funzionalità di aggiornamento auto e la raccolta di metriche.

  • iot-device-tester:SupportedVersion

    Concede AWS IoT Device Tester l'autorizzazione a recuperare l'elenco dei prodotti, delle suite di test e delle versioni IDT supportate.

  • iot-device-tester:LatestIdt

    Concede AWS IoT Device Tester il permesso di recuperare l'ultima versione IDT disponibile per il download.

  • iot-device-tester:CheckVersion

    Concede AWS IoT Device Tester l'autorizzazione a verificare la compatibilità delle versioni per IDT, suite di test e prodotti.

  • iot-device-tester:DownloadTestSuite

    Concede AWS IoT Device Tester l'autorizzazione a scaricare gli aggiornamenti della suite di test.

  • iot-device-tester:SendMetrics

    Concede AWS l'autorizzazione a raccogliere metriche sull'utilizzo AWS IoT Device Tester interno.

(Facoltativo) Installazione dell'AWS Command Line Interface

In alternativa, puoi utilizzare l'AWS CLI per eseguire alcune operazioni. Se non è AWS CLI installato, segui le istruzioni in Installare il AWS CLI.

Configura AWS CLI per la AWS regione che desideri utilizzare eseguendo aws configure da una riga di comando. Per informazioni sulle AWS regioni che supportano IDT for FreeRTOS, vedi AWSRegioni ed endpoint. Per ulteriori informazioni, aws configure vedere Configurazione rapida con aws configure.