Implémentation AWS IoT sur un contrôleur bas de gamme comme Atmega328, nrf51822?

8

J'utilise AWS IoT implémenté dans un RPi depuis un certain temps. Je me demandais si je pouvais utiliser un contrôleur comme Atmega328 ou certains contrôleurs basés sur NRF ou STM32 pour publier et souscrire au courtier AWS IoT MQTT?

J'ai fait un peu de recherche à ce sujet et je suis coincé sur la façon de faire l'authentification avec le serveur avec les certificats.

Comment intégrer ces contrôleurs à AWS IoT?

A.Rajib Kumar Gupta
la source
1
Aucun d'eux n'a la connectivité appropriée; pour obtenir cela économiquement, vous finirez probablement par impliquer quelque chose qui est un ordinateur plus performant, donc vous pourriez aussi bien l'utiliser que pas ces puces du tout. Dans d'autres cas, vous pouvez le faire si vous essayez suffisamment de trouver un moyen de détour, mais ce serait une mauvaise idée fondamentale.
Chris Stratton
1
Cela pourrait être utile github.com/copercini/esp8266-aws_iot
cujo
Merci à vous pour votre suggestion @ChrisStratton. Pensez-vous que ce sera possible avec d'autres courtiers mqtt avec des exigences d'authentification limitées?
A.Rajib Kumar Gupta
2
Vous semblez manquer le point - un Arduino en lui-même n'a pas d'interface réseau filaire ou sans fil qui le rendrait capable de communiquer avec ce service. En revanche, les choses économiques qui le font (ESP8266, puce de routeur wifi Linux, etc.) auront plus de facilité à effectuer les opérations requises qu'un Arduino. Alors résolvez le problème de communication, et vous trouverez probablement une solution au protocole.
Chris Stratton

Réponses:

4

AWS IOT nécessite que votre appareil comprenne TCP / IP et le chiffrement.

L'ATMega328 dispose de 2 000 octets de RAM, mais les trames Ethernet peuvent atteindre 1 500 octets. Même si vous pouviez recevoir un paquet, il n'y aurait plus de place pour le traiter.

Le nRF51822 a 16 Ko de RAM, ce qui est suffisant pour Ethernet, mais pas assez pour faire TCP / IP et WiFi. (Les deux nécessitent de stocker beaucoup d'état.)

Le plus petit appareil pratique avec WiFi + TCP / IP est l'ESP8266, qui a 96K de RAM. Même alors, vous ne pouvez généralement avoir qu'une seule connexion TCP à la fois. Ils sont de moins en moins chers (2 $). En fait, essayer d'ajouter le WiFi à un AtMega signifie que vous ajoutez un processeur au moins aussi gros que l'ESP8266. Certains adaptateurs Arduino WiFi ont 10 fois la puissance d'un ESP8266 (et 10 fois le prix).

BraveNewCurrency
la source
4

Vous voudrez peut-être consulter Amazon FreeRTOS .

Amazon FreeRTOS (a: FreeRTOS) est un système d'exploitation pour microcontrôleurs qui facilite la programmation, le déploiement, la sécurisation, la connexion et la gestion des petits périphériques de faible puissance. Amazon FreeRTOS est basé sur le noyau FreeRTOS, un système d'exploitation open source populaire pour les microcontrôleurs, et l'étend avec des bibliothèques de logiciels qui facilitent la connexion sécurisée de vos petits appareils à faible consommation d'énergie aux services cloud AWS comme AWS IoT Core ou à plus puissant. périphériques périphériques exécutant AWS Greengrass.

La connexion (et la configuration des informations d'identification) à plusieurs petits microcontrôleurs avec AWS, y compris un périphérique STM32, est prise en charge .

Rose
la source
Ce «périphérique» STM32 lié est en fait une carte contenant un STM32, puis un autre STM32 à l'intérieur du module de sous-module série-wifi d'Inventek. Une solution efficace exécuterait simplement l'application à l'intérieur du module série-wifi (ou son circuit équivalent), plutôt que d'utiliser deux processeurs pour faire le travail d'un.
Chris Stratton