🛠 Commander une LED à distance avec Particle.function

Particle Photon · intermediaire · Schéma : IMG-particle-photon-intermediaire-2-photon-fonction-distance.svg — appel REST POST vers api.particle.io déclenchant la fonction led du Photon qui allume D7

Objectifs

Exposer une fonction du firmware au Particle Cloud avec Particle.function, puis l'appeler depuis Internet par une simple requête HTTP : le cloud appelle votre fonction C++ enregistrée, qui retourne un entier.

Matériel

Code complet

// photon-fonction-distance.ino — fonction appelée depuis le cloud
void setup {
  pinMode(D7, OUTPUT);
  Particle.function("led", ledCmd);   // enregistrement auprès du cloud
}

void loop { }

// Appelee par le cloud : POST /v1/devices/<id>/led?args=on
int ledCmd(String args) {
  if (args == "on")  { digitalWrite(D7, HIGH); return 1; }
  if (args == "off") { digitalWrite(D7, LOW);  return 0; }
  return -1;   // argument invalide
}

Vérification attendue

Depuis un terminal : curl -H "Authorization: Bearer $TOKEN" -d args=on 1 allume la LED D7 ; args=off l'éteint ; un argument inconnu renvoie -1. La liste de vos appareils (et l'ID 24 caractères en hexadécimal) s'obtient avec curl -H "Authorization: Bearer $TOKEN" https://api.particle.io/v1/devices`.

Erreurs fréquentes

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels