F1ATB forum
Controle plus poussé des actions via MQTT - Version imprimable

+- F1ATB forum (https://f1atb.fr/forum_f1atb)
+-- Forum : Forum de F1ATB (https://f1atb.fr/forum_f1atb/forum-3.html)
+--- Forum : Routeur Photovoltaïque (https://f1atb.fr/forum_f1atb/forum-4.html)
+--- Sujet : Controle plus poussé des actions via MQTT (/thread-948.html)



Controle plus poussé des actions via MQTT - piamp - 13-01-2025

Bonjour,
parce que j'ai souvent besoin de mettre en route / arrêter des actions (mais sans les forcer sur on ou off) j'ai ajouté ce petit bout de code dans mqtt.ino qui permet d'envoyer en mqtt un ordre pour choisir l'état des actions :

dans la fonction testMQTTconnected :


      //souscription controle action
      char TopicCont[50];
      sprintf(TopicCont,"%s",MQTTdeviceName);
      clientMQTT.subscribe(TopicCont);
      // fin ajout



puis dans la fonction callback :

  //ajout controle actions
  if (String(topic) == MQTTdeviceName) {
    LesActions[int(char(payload[0])) - 48].Actif = int(char(payload[1])) - 48
  }
  //fin ajout controle actions




il suffit ensuite d'envoyer via home assistant ou autre, en mqtt, un message dans le topic correspondant au nom du routeur, de 2 caractères. le premier caractère indique le numéro de l'action à modifier, le second son état (0= éteint, 2=multisinus)

par exemple envoyer "00" sur un routeur à triac éteint l'action triac ; envoyer "02" le mets en mode multi sinus

Smile


RE: Controle plus poussé des actions via MQTT - Chris - 13-01-2025

Bonjour,

Ça, c'est le genre de code qui aurait tout à fait sa place dans les évolutions souhaitées !
Je vote pour :-)


RE: Controle plus poussé des actions via MQTT - Nalexdouze - 13-01-2025

Pas mal ça ;-)