La prise en charge de Bluetooth Low Energy par Amazon FreeRTOS est disponible en version bêta

[EDITION ABONNES] [MAJ] Lors de l’événement AWS re:Invent 2018 qui s’est tenu fin novembre à Las Vegas, Amazon Web Services a annoncé la version bêta de la prise en charge de la technologie Bluetooth Low Energy (BLE) par le système d’exploitation Amazon FreeRTOS. ...Selon la société américaine, il est ainsi possible désormais de connecter de manière sécurisée des objets embarquant un microcontrôleur et Amazon FreeRTOS à la plate-forme AWS IoT à travers un smartphone ou une tablette Android ou iOS.

Proposé sous licence open source et issu de la prise en main de l’OS temps réel FreeRTOS par le géant de la vente en ligne en novembre 2017, Amazon FreeRTOS, rappelons-le, étoffe le noyau FreeRTOS de bibliothèques logicielles assurant la sécurité, la connectivité et les capacités de mise à jour d’objets compacts et basse consommation simples à programmer, à déployer et à gérer (lampes électriques, détecteurs de fumée, détecteurs de mouvement, etc.). L’environnement logiciel, précise AWS, dispose en outre de bibliothèques qui simplifient la configuration d’équipements IoT à travers un réseau local via des options de connectivité comme Wi-Fi ou Ethernet et, désormais, à partir de terminaux Android et iOS en utilisant un lien BLE. La prise en charge de Bluetooth Low Energy, plus sobre en énergie que le Wi-Fi, permet aussi la communication sans fil entre un dispositif BLE sous Amazon FreeRTOS et les services AWS IoT (comme les mises à jour over-the-air) au travers du protocole MQTT.

Dans le détail, la version bêta BLE/Amazon FreeRTOS inclut une API GATT/GAP (Generic Attribute Profile / Generic Access Profile), un profil spécifique pour le provisionnement des identifiants Wi-Fi via un lien Bluetooth LE, les SDK (Software Development Kit) compagnons pour iOS et Android, ainsi qu’un profil personnalisé du protocole MQTT pour lien BLE qui offre un service de messagerie device-to-cloud sans couture à travers un proxy iOS ou Android.

D’ores et déjà plusieurs puces-systèmes radio compatibles BLE prennent en charge la nouvelle fonctionnalité d’Amazon FreeRTOS à l’instar de la puce ESP32 d’Espressif Systems ou du SoC nRF52840 de Nordic Semiconductor (photo en en-tête). Les kits de développement ESP32-DevKitC et ESP-Wrover-Kit ont ainsi été qualifiés officiellement pour un usage avec l'OS temps réel open source d'AWS, le premier ayant notamment été mis en oeuvre dans une démonstration de cas d'usage d'un dispositif BLE connecté à la plate-forme AWS IoT au travers d'un proxy Android (schéma ci-dessus). 

Doté de la connectivité Bluetooth 5 et 802.15.4, le SoC nRF52840 quant à lui cible les marchés de la maison connectée, des dispositifs électroniques évolués portés sur soi (notamment pour les applications de paiement et le médical), des capteurs industriels et autres objets IoT. « Le SoC le nRF52840 est devenu l’une des puces Bluetooth LE les plus populaires depuis son lancement en 2016, assure Svein-Egil Nielsen, le directeur technique de Nordic. Avec un cœur Arm Cortex-M4F, 1 Mo de flash, 256 Ko de mémoire RAM et un sous-système radio multiprotocole, c’est la plate-forme idéale pour les dispositifs IoT. »

De son côté STMicroelectronics a annoncé sur AWS re:Invent 2018 la prise en charge d’Amazon FreeRTOS par de nouveaux kits de démarrage STM32. C’est le cas du Discovery Kit B-L475E-IOT01A architecturé autour du microcontrôleur ultrasobre à cœur Arm Cortex-M4 STM32L475 et équipé de la connectivité Wi-Fi et de multiples capteurs. Ce kit peut être étoffé de la technologie Bluetooth Low Energy 4.2 avec le module SPBTLE-1S (doté de la puce-système BleNRG-1 du constructeur franco-italien) afin d’implémenter un nœud IoT connectable au cloud via l’application AWS pour tablette et smartphone. Dans ce cadre, ST assure la prise en charge de la version bêta d’Amazon FreeRTOS for BLE. A noter que le kit B-L475E-IOT01A peut aussi être augmenté d’une liaison radio LTE-M/NB-IoT au travers d’un module d’extension X-Nucleo embarquant un module LTE et une carte SIM ST, broché par le biais du connecteur Arduino UNO v3 présent sur la carte.