🛠 Faire clignoter la LED RGB embarquée
Objectifs
Découvrir le cycle de compilation et de téléversement Arduino sur le Nicla Sense ME (ABX00050) en faisant clignoter la LED RGB embarquée. Particularité de cette carte : la LED SMLP34RGB2W3 n'est pas reliée à une broche GPIO classique, elle est pilotée par un circuit dédié IS31FL3194 (repère U8) connecté en I²C au microcontrôleur nRF52832, et accessible via la bibliothèque Nicla_System livrée avec le core. Le téléversement lui-même sort de l'ordinaire : le pack « Arduino Mbed OS Nicla Boards » ne fait pas de glisser-déposer de fichier .bin, il flashe la carte via OpenOCD et l'interface CMSIS-DAP du pont USB embarqué (SAMD11).
Matériel
- Carte Arduino Nicla Sense ME (ABX00050)
- Câble micro-USB de données (attention, certains câbles ne sont que de la charge)
- PC avec Arduino IDE 2.x et le pack de cartes « Arduino Mbed OS Nicla Boards » (v4.6.0 au 2026-10-13)
Code complet
#include "Nicla_System.h"
void setup {
Serial.begin(115200);
nicla::begin; // initialise l'alimentation système et l'accès aux puces
nicla::leds.begin; // démarre le pilote du circuit LED IS31FL3194
}
void loop {
nicla::leds.setColor(red); // rouge plein feu
delay(500);
nicla::leds.setColor(off); // extinction
delay(500);
}
Vérification attendue
Après téléversement, la LED RGB clignote en rouge une fois par seconde (500 ms allumée, 500 ms éteinte). Remplacez red par green, blue ou white pour vérifier les trois canaux du pilote. La console série à 115200 bauds reste utilisable pour tout diagnostic ; le port série est routé par le pont USB SAMD11, pas par le nRF52832 lui-même.
Erreurs fréquentes
- Oubli de
nicla::begin: sans cet appel, l'alimentation des périphériques système n'est pas initialisée et la LED ne réagit pas. - Mauvais pack de cartes sélectionné : il faut « Arduino Mbed OS Nicla Boards » puis « Arduino Nicla Sense ME », pas un core AVR.
- Échec de téléversement si le chemin du dossier du sketch contient un espace (bug connu ArduinoCore-mbed #1025) : déplacez le projet dans un chemin sans espace.
- Carte invisible dans le port : le pont SAMD11 peut se bloquer ; rebranchez, et en cas de sketch qui bloque le processeur, entrez en mode bootloader par double-tap sur le bouton reset juste après la mise sous tension.
Autres tutoriels pour cette carte
Exemples de code pour cette carte
led_rgb.inoArduinoimu_bhi260.inoArduinorotation_fusion.inoArduinopression_bmp390.inoArduinonose_electronique.inoArduinoboussole_bmm150.inoArduino