🛠 Build local avec Device OS, ARM GCC et Particle CLI
Objectifs
Vous affranchir de tout IDE en ligne (l'ancien Web IDE est retiré) : la chaîne recommandée aujourd'hui est le dépôt device-os compilé avec make et ARM GCC, puis flashée avec le Particle CLI, en OTA ou par USB.
Matériel
- un ordinateur Linux, macOS ou Windows (WSI ou outillage natif selon les notes du dépôt)
- toolchain ARM GCC (cortex-m3), GNU make, git, Node.js pour le Particle CLI
- 1 Particle Photon avec un bon câble USB
Code complet
// photon-build-local.ino — projet minimal pour build local
// Arborescence type :
// mon-projet/src/mon-projet.ino
// mon-project/Makefile (incluant build.mk du dépôt device-os)
#include "application.h"
void setup {
pinMode(D7, OUTPUT);
Serial.begin(9600);
Serial.println("Build local ARM GCC - OK");
}
void loop {
digitalWrite(D7, HIGH); delay(300);
digitalWrite(D7, LOW); delay(300);
}
Vérification attendue
Dans le dépôt device-os (ou un template de projet qui l'inclut), la commande make all (confirmée par le README du dépôt) produit un firmware.bin dans le dossier build. Ensuite : particle flash <nom_du_device> firmware.bin en OTA, ou en USB DFU (maintenir SETUP, taper RESET, LED jaune clignotante) pour un flash filaire. Le Device OS utilisé doit être une version 2.x LTS, les branches 1.x et 3.x étant en fin de support.
Erreurs fréquentes
- Compiler avec un Device OS hors support : la datasheet impose la gamme 2.x LTS en support étendu.
- Toolchain ARM absente ou mal versionnée : make échoue sur cortex-m3 ; installer un gcc-arm-none-eabi récent.
- >
- Flasher un binaire compilé pour un autre board (Electron ou Photon 2/P2) : le firmware est spécifique au Photon (STM32F205 + BCM43362).
- Le Device OS est LGPLv3 : votre application propriétaire reste légale, mais gardez la licence du système intacte.
Autres tutoriels pour cette carte
Exemples de code pour cette carte
clignotante.inoArduinobouton-evenement.inoArduinofonction-distance.inoArduinocapteur-dht.inoArduinoruban-neopixel.inoArduinopwm-respiration.inoArduino