Arduino Primo - un eco-système ARM pour développement autour de Nordic nRF52 (Bluetooth et NFC)

Nordic nRF52 se trouve au coeur des développements de la gamme Bluefruit chez Adafruit Industries. nRF52 est une plateforme puissante et la volonté de Nordic de rendre les fonctions avancées de ses produits accessibles aux Makers en fournissant un support Arduino IDE et des SDK de développement.

Revenons donc sur "Arduino Primo" qui embarque justement des nRF52 au coeur de la plateforme.

Arduino PRIMO
Arduino Primo - source : Arduino CC
L'Arduino Primo combine la puissance de traitement du processeur nRF52 de Nordic, une connexion WiFi grâce à Espressif ESP8266, un émetteur/récepteur infrarouge, un Buzzer, bouton et LED et chargeur d'accu.
Avec le nRF52, la carte Primo propose un accès Bluetooth Smart (BLE) et Near Field Communication (NFC).

Grâce à sa connexion Bluetooth, le primo peut se connecter sur une grande variété de senseurs Bluetooth (senseurs que vous pouvez créer à l'aide du Primo Core - voir plus loin dans l'article)
Diagramme des différents éléments du Primo
Source: Primo Schematic sur Arduino.cc

Le nRF52 permet également de profiter de la technologie NFC qui permet d'établir des connexion sécurisée et authentifiée ainsi que "NFC Touch-to-Pair" qui permet d'établir des connexions sans interaction utilisateur.

Grâce à sa connectivité WiFi offerte par l'ESP8266, l'Arduino Primo peu communiquer avec des applications réseaux, le cloud ou des services MQTT.
Avec l'ESP8266, nous disposons d'une connectivité TCP/IP complète mais peut également agir comme mini serveur Web.

Un émetteur/récepteur Infrarouge permet de prendre le contrôle d'éléments audio/visuels distant, de communiquer via infrarouge mais surtout de commander le projet Primo depuis une télécommande, ce qui peut présenter un intérêt non négligeable pour une centrale communicante (comme le Primo).

Arduino embarque également différents senseurs: accéléromètre, température, humidité et pression.

Arduino Primo offre donc beaucoup de fonctionnalités à partir d'une plateforme de base. Pas besoin d'ajouter de nombreux shields pour disposer des mêmes fonctionnalités, elles sont déjà présentes sur la carte.

A propos du  nRF52832
Au couer d'un Arduino Primo bat le nRF52832.
Le nRF52832 de Nordic Semiconductor est un processeur ARM Cortex-M4F 32 bits cadencé à 64 MHz. Selon Nordic, ce processeur offre jusqu'à 60% de plus en puissance de traitement que les solutions concurrentes. le nRF52832 est surtout performant dans le traitement du signal (DSP, Digital Signal Processing) et les opérations en virgule flottante.
Il propose également une pile radio 2.4 GHz multi-protocole compatible avec les spécifications Bluetooth 4.2 (sensibilité de -96 dB en réception et pointe de courant de 5.5 mA en emission/réception... tout à fait raisonnable).
Le nRF52832 inclus également 512 kB de mémoire Flash et 64 kB RAM ainsi qu'un système de gestion d'énergie complètement automatisé.

Un support Arduino IDE
La programmation de la plateforme Primo se fait par Arduino IDE. La plateforme est conçue pour faciliter le prototypage de projets, peu importe le niveau d'expérience et les connaissances techniques.
Les utilisateurs pourrons profiter des fonctionnalités avancées du Primo en utilisant l'un des Kit de Développement Logiciel Nordic (SDK) compatible nRF52 ou outil de programmation de Nordic.

Arduino Primo Core
Le Primo Core est une version compacte d'Arduino Primo à peine plus grand qu'une pile bouton.
Le primo core utilise également le processeur nRF52832 fr Nordic et dispose donc des fonctions Bluetooth LE et fonctions NCF tag. Cela permet au Primo Code de communiquer avec Arduino Primo (et/ou smartphone). Cela en fait une plafteforme idéale pour des projet Wearables / Fringuables.
Arduino Primo Core - source Arduino
Le Primo Core embarque également des senseurs environnementaux (température et humitidé) et de mouvement (accéléromètre et gyroscope) ainsi qu'une LED RGB.
L'accéléromètre et le gyroscope permettent de suivre les déplacement d'une personne, les chocs, le fait de tomber par terre. La plateforme peut également détecter automatiquement qu'elle est portée (projets wearable/fringuables) et non rangée dans l'armoire.
L'humidité et température permet de détecter les conditions de confort environnemental à l'emplacement où le projet est porté.
Comme pour Arduino Primo, le Primo Core utilise le gestionnaire d'énergie avancé (gestionnaire totalement automatisé), ce qui réduit la consommation au point de pouvoir faire fonctionner la plateforme avec une pile bouton CR2032!

Ce n'est pas parce que le Primo Core est petit qu'il ne dispose pas de caractéristiques techniques intéressantes pour une plateforme aussi compacte.
  • 10 entrés/sorties digitales (3.3v)
  • Toutes les broches digitales fonctionne aussi en PWM
  • 8 broches analogiques (de D0 à D7)
  • Accéléromètre et Gyroscope
  • Senseur d'humidité et température
  • Led RGB
  • Un connecteur pour pile bouton (CR2032)
  • Interface BLE
  • LED
  • Connecteur NFC (to use an external NFC tag included)
  • Interrupteur Marche/Arrêt
En appendre plus