[Résolu] Remontée d'état Sonoff Mini

et assistants vocaux

[Résolu] Remontée d'état Sonoff Mini

Messagepar tibalt76 » 08 Jan 2020 00:55

Bonjour,

Comme l'a remonté il y a peu ARTNOW, les Sonoff Mini fonctionnent parfaitement avec eedomus en suivant le petit tuto.
Pas de problème pour effectuer les actions ON et OFF de ces relais WIFI.
Question donc : comment récupérer les états (qui peuvent changer en dehors d'eedomus si on utilise l'entrée interrupteur physique ou des "request http REST" via des clients REST comme l'outil mentionné dans le tuto).
Bref, j'ai rapidement observé comment était fait le plugin sonoff présent dans le store eedomus mais il fonctionne spécifiquement avec les sonoff flashés avec le firmware ESPeedomus etc...
On comprend en se référant à la doc et en consultant les valeurs une fois le plugin créé que 2 actions visibles sont ON et OFF, que l'on peut remplacer par nos action POST / json : comme cela :{"deviceid":"1000b44f39","data":{"switch":"off"}}
et que, pour la remontée d'état, l'auteur phroc, utilise une remontée d'état à partir de la réponse aux ping sur l'ip du sonoff sur 2 valeurs invisibles. (je ne comprends pas à quels moments sont lancés ces valeurs invisibles et comment cela interagit avec les valeurs visible type action ON /OFF)
en tout cas, j'en conclue que les sonoff qu'il utilise ne répondent pas au ping si ils sont éteints "off".
Pour ces Sonoff mini, ils répondent au ping qu'ils soient on ou off.
Par contre, une méthode HTTP POST http://[ip]:[port]/zeroconf/info avec en body {"deviceid":"1000b44f39","data":{}} renvoie l'état.... (j'ai testé)

Comment extraire du json response la valeur de data.switch ?
Si quelqu'un sait ?
On pourrait imaginer un plugin dispo sur le store une fois l'analyse terminée ?
Merci d'avance pour votre aide
A+
tibalt76
 
Messages : 39
Inscription : 22 Mai 2019

Re: Remontée d'état Sonoff Mini

Messagepar merguez07 » 08 Jan 2020 12:56

tibalt76 a écrit:Comment extraire du json response la valeur de data.switch ?


il suffit que tu mettes ta requête dans "l'URL de la requête" de ton périphérique et de cocher, dans les paramètres expert, convertir le json en xml,

et, dans le xpath, tu mets :/root/data/switch
tuto 1 -->Programmation des scripts Eedomus
tuto 2 -->SmartDevice
tuto 3 -->Le déclenchement de règles
scripts -->Météo du jour | GH Thermostat | TotalWatt | Detecfire | smartbattery
Skype Eedomus -->lien vers le skype Eedomus
merguez07
 
Messages : 2346
Inscription : 15 Sep 2017
Localisation : Le Teil en Ardèche

Re: Remontée d'état Sonoff Mini

Messagepar tibalt76 » 14 Jan 2020 00:26

Merci pour ces éléments de réponse.
En parallèle, j'ai tenté une autre approche qui a fonctionné : j'utilise un script PHP avec la fonction strpos que je teste et renvoie une valeur 0 ou 1 dans un structure XML type root/status.

J'ai fait comme cela car je ne savais pas comment pousser dans le champ URL d'un capteur http, du json (qui doit normalement être plécé dans la partie body de la requete).

J'ai aussi avancé sur la création d'un composant pour le store mais avant publication j'aimerai éclaircir un dernier point.
Je suis capable de piloter avec un actionneur http un relai sonoff mini.
Je suis capable de récuperer le statut d'un relai sonoff mini avec un capteur http.
A ce stade, j'ai mis une fréquence de 1 minute pour récupérer le statut du relai.

Quand j'étudie le code du composant sonoff sur le store, il semble que ce composant, de type actionneur HTTP, contienne des 2 valeurs visibles : les actions ON et OFF, ainsi que 2 valeurs masquées pour la récupération d'état. C'est ce point de détail que je ne pige pas. sous quelle fréquence l'état est remonté sur le composant Sonoff ? comment cela fonctionne t'il ?

D'avance merci
tibalt76
 
Messages : 39
Inscription : 22 Mai 2019

Re: Remontée d'état Sonoff Mini

Messagepar ARTNOW » 14 Jan 2020 08:11

Bonjour tibalt76 , bravo pour ton travail , je n'ai pas toutes les compétences pour t'aider , mais je serais la pour tester , un plugin serait vraiment bien au vu du faible prix du Sonoff Mini et de ses capacités . ;)
EEDOMUS + -RFP1000-IPX 800 V4-IPX 800 V5 - FIBARO -GOOGLE(Home-Nest & mini)
ARDUINO-RASPBERRY PRUSA MK3S
Domotisation de :1xPiscine/9xClimatisations réversibles/2xVolets somfy/1xAlarme/1xChauffe-Eau thermodynamique/3xPortes Garage et 1xportail
ARTNOW
 
Messages : 1280
Inscription : 22 Avr 2018
Localisation : LOIRE ATLANTIQUE

Re: Remontée d'état Sonoff Mini

Messagepar merguez07 » 14 Jan 2020 09:16

tibalt76 a écrit:Quand j'étudie le code du composant sonoff sur le store, il semble que ce composant, de type actionneur HTTP, contienne des 2 valeurs visibles : les actions ON et OFF, ainsi que 2 valeurs masquées pour la récupération d'état. C'est ce point de détail que je ne pige pas. sous quelle fréquence l'état est remonté sur le composant Sonoff ? comment cela fonctionne t'il ?


C'est vrai que c'est bizarre, j'aurais tendance à dire que ça ne fonctionne pas. Je viens d'envoyer un message à Philippe Rochette pour qu'il nous explique .
tuto 1 -->Programmation des scripts Eedomus
tuto 2 -->SmartDevice
tuto 3 -->Le déclenchement de règles
scripts -->Météo du jour | GH Thermostat | TotalWatt | Detecfire | smartbattery
Skype Eedomus -->lien vers le skype Eedomus
merguez07
 
Messages : 2346
Inscription : 15 Sep 2017
Localisation : Le Teil en Ardèche

Re: Remontée d'état Sonoff Mini

Messagepar tibalt76 » 14 Jan 2020 10:16

Merci ARTNOW c'est sympas. Du coup je publie une première version avec juste les 2 actionneurs, des incones moches et pas de doc :geek: , histoire d'avoir tes retours.

Et merci à toi merguez07, je suis currieux de la réponse.
tibalt76
 
Messages : 39
Inscription : 22 Mai 2019

Re: Remontée d'état Sonoff Mini

Messagepar merguez07 » 14 Jan 2020 12:56

tibalt76 a écrit:Et merci à toi merguez07, je suis currieux de la réponse.


Philippe m' a expliqué que le retour d'info se fait grace au firmware SONOFF spécifique qu'il a développé pour l'Eedomus et qui envoie le compte rendu d'état vers l'eedomus par cet artifice ingénieux.
tuto 1 -->Programmation des scripts Eedomus
tuto 2 -->SmartDevice
tuto 3 -->Le déclenchement de règles
scripts -->Météo du jour | GH Thermostat | TotalWatt | Detecfire | smartbattery
Skype Eedomus -->lien vers le skype Eedomus
merguez07
 
Messages : 2346
Inscription : 15 Sep 2017
Localisation : Le Teil en Ardèche

Re: Remontée d'état Sonoff Mini

Messagepar tibalt76 » 14 Jan 2020 15:49

Ok pour le firmware "maison" qui renvoie son état.
Ca reste tout de même floue pour moi.
Si on actionne ON sur le Sonoff via l'interface, l'action http est envoyée et l'action reste sur ON graphiquement sur l'interface eedomus.
Si maintenant on envoie l'action OFF mais hors eedomus (autre requeteur HTTP), à quel moment va t'on interroger sonoff pour vérifier l'état ? il y a une fréquence de rafraichissement ?
tibalt76
 
Messages : 39
Inscription : 22 Mai 2019

Re: Remontée d'état Sonoff Mini

Messagepar merguez07 » 15 Jan 2020 12:09

tibalt76 a écrit:Si maintenant on envoie l'action OFF mais hors eedomus (autre requeteur HTTP), à quel moment va t'on interroger sonoff pour vérifier l'état ? il y a une fréquence de rafraichissement ?


Justement, le firmware est fait de telle façon que lorsque le Sonoff change d'état il va changer aussi l'état de l'actionneur Eedomus. Par exemple si tu passes à OFF le Sonoff par une commande externe à l'Eedomus, le firmware va envoyer une requête à 'actionneur Eedomus pour lui dire de passer à l'état Off.
Avantage : retour d'info réactif et événementiel
Inconvénient : necessite d'avoir un firmware adapté et contenant les identifiants Eedomus et l'API de l'actionneur concerné par le retour d'info

Une autre solution, c'est d'emettre une requête pour connaitre l'état :
Avantage : le firmware n'a pas a étre personnalisé
Inconvénient : temps de réponse long car calendaire et non événementiel
tuto 1 -->Programmation des scripts Eedomus
tuto 2 -->SmartDevice
tuto 3 -->Le déclenchement de règles
scripts -->Météo du jour | GH Thermostat | TotalWatt | Detecfire | smartbattery
Skype Eedomus -->lien vers le skype Eedomus
merguez07
 
Messages : 2346
Inscription : 15 Sep 2017
Localisation : Le Teil en Ardèche

Re: Remontée d'état Sonoff Mini

Messagepar tibalt76 » 15 Jan 2020 12:46

Ok, tout s'éclaire !
Actuellement j'ai créé un script de type capteur pour récupérer l'état du relai à intervalle régulière.
Donc du coup pour l'instant, je saurai au mieux proposer un second périphérique au store de type capteur SonoffMini :(
Maintenant je vais vérifier si ce comportement existe nativement sur le sonoff mini mais ça m'étonnerai
tibalt76
 
Messages : 39
Inscription : 22 Mai 2019

Re: Remontée d'état Sonoff Mini

Messagepar tibalt76 » 21 Jan 2020 09:44

Bonjour, je me suis un peu plus documenté sur Sonoff. Un certain nombre de modèles sonoff relai wifi, utilisent la même puce ESP8266. Du coup il existe des tuto qui décrivent comment remplacer le firmware sonoff par un autre. On a tasmota, espeasy, et peut être d'autres comme celui de Philippe. La manipulation, pas impossible, reste à mon avis un peu compliquée car cela nécessite de passer par un carte USB liaison série, de souder sur la carte sonoff etc...
L'avantage de sonoff mini cette fois-ci, c'est qu'il est très accessible dans le passage d'une config dépendante du cloud (et d'une appli) à un mode local "DIY".
En plus de cela, le flashage de ce module vers un firmware custom est possible directement via commande API.
Donc juste à tout hasard, si la version de Philipe est compatible, cela serait nickel pour le retour d'état dans un même contacter eedomus, et sans bombarder des demandes d'état toutes les minutes...sur le wifi.
Bonne journée !
tibalt76
 
Messages : 39
Inscription : 22 Mai 2019

Re: Remontée d'état Sonoff Mini

Messagepar tibalt76 » 21 Jan 2020 10:03

Le firmware de Philippe est un "non officiel" : ESPeedomus.
tibalt76
 
Messages : 39
Inscription : 22 Mai 2019

Re: Remontée d'état Sonoff Mini

Messagepar KikiFUNstyle » 21 Jan 2020 10:34

tibalt76 a écrit:Ok, tout s'éclaire !
Actuellement j'ai créé un script de type capteur pour récupérer l'état du relai à intervalle régulière.
Donc du coup pour l'instant, je saurai au mieux proposer un second périphérique au store de type capteur SonoffMini :(
Maintenant je vais vérifier si ce comportement existe nativement sur le sonoff mini mais ça m'étonnerai

Tu peux utiliser le même capteur HTTP pour gérer aussi l'état (paramètres avancées)

Capture.PNG
Capture.PNG (32.66 Kio) Consulté 11488 fois


Voir la documentation
ZWave / RFXCom / broadlink RM /Google Mini / Yeelight / Xiaomi Vacuum V1 / Shelly <3 / Node-RED <3 <3
[Store] Shelly
KikiFUNstyle
 
Messages : 908
Inscription : 24 Avr 2014
Localisation : Toulouse

Re: Remontée d'état Sonoff Mini

Messagepar tibalt76 » 21 Jan 2020 17:56

Ok merci KikiFUNstyle
Je n'avais pas vu, je vais essayer ça.
Question : le printscreen est bien un exemple, pas celui pour le sonoff mini rassures-moi ?
Sinon j'ai fait un script pour rien (enfin si, pour apprendre ;) )
tibalt76
 
Messages : 39
Inscription : 22 Mai 2019

Re: Remontée d'état Sonoff Mini

Messagepar KikiFUNstyle » 21 Jan 2020 17:57

Oui c'est un exemple pour montrer où cela se trouve :D
Test si cela répond à ton besoin
ZWave / RFXCom / broadlink RM /Google Mini / Yeelight / Xiaomi Vacuum V1 / Shelly <3 / Node-RED <3 <3
[Store] Shelly
KikiFUNstyle
 
Messages : 908
Inscription : 24 Avr 2014
Localisation : Toulouse

Re: Remontée d'état Sonoff Mini

Messagepar tibalt76 » 21 Jan 2020 23:55

Bon bah du coup j'ai publié une V2 pour ceux que ça intéresse.
Il y a le retour d'état en mode polling toutes les minutes (c'était bien ça KikiFUNstyle).
Moi je m'en sert pour des lampes mais j'ai voulu rester générique pour les icones et l'usage par défaut.
Du coup je change l'usage, répond non aux valeurs par défaut (qui me supprime la valeur 1 et la remplace par 100 + requete vide) et ajoute éclairage ("automatique") dans les pièces.

a+
tibalt76
 
Messages : 39
Inscription : 22 Mai 2019

Re: Remontée d'état Sonoff Mini

Messagepar benj70b » 17 Fév 2020 15:08

Pour info j'ai publié une nouvelle version (3.0) de plugin sonoff mini en mode DIY, voici les changements :

  • Ajout Configuration de l'état du relais au démarrage
  • Ajout Configuration Auto-Off
  • Ajout Information Signal Wifi
  • Ajout du lien vers le script php dans le json
  • Création des icônes
  • Documentation
  • Refactoring complet
  • Ajout sur Github
Eedomus + | Domoticz | Mosquitto | Node Red | deCONZ | EspEasy | Conbee II | Rfxcom | Esp32 | Esp8266 | Alexa | Harmony

[Store] : deCONZ - Actionneurs & Capteurs / Domoticz Events / MiLight v4 & v6 / Sonoff Mini / Etats de batteries
benj70b
 
Messages : 294
Inscription : 20 Jan 2014
Localisation : 89

Re: Remontée d'état Sonoff Mini

Messagepar tibalt76 » 23 Fév 2020 16:31

Ok c'est top ! Un poil plus serieux que ma précédente version...
J'avoue que je n'avais pas besoin des fonctionnalités que tu as ajouté mais vu qu'elles étaient dispo, ça a du sens effectiement.
well done !
tibalt76
 
Messages : 39
Inscription : 22 Mai 2019

Re: Remontée d'état Sonoff Mini

Messagepar Gdany » 08 Août 2020 10:55

bonjour
déjà, je voulais dire merci a tous les développeurs qui enrichisse le store pour les gens comme moi qui ni connaisse rien en programmation c est vraiment un grand service

je vient vers vous car j ai un message erreur dans mes remontés états elle ne ce font pas voici le messages --pour le signal : <?xml version="1.0" encoding="ISO-8859-1"?>
<root>-59</root>
pour la remonté etat :
XML error: off
stay
off
10000
FREEBOX_DANY
0
3.5.0
1000aba122
e4:9e:12:86:f4:64
-59
j ai bien les valeurs qui s'affiche dans les message erreurs mais pas sur les modules en eux mêmes
si je fait testé voila ce que ca donne:

<?xml version="1.0" encoding="ISO-8859-1"?>
<root>-59</root>

XPath :
//signalstrength

Résultat XPath :
ERREUR: Valeur lue vide

je ne sait si je suis tres clair dans mes explications
mais j espère que vous pourrez m aider
merci dany
Gdany
 
Messages : 14
Inscription : 21 Déc 2018

Re: Remontée d'état Sonoff Mini

Messagepar benj70b » 24 Août 2020 08:41

bonjour étonant, cela devrait etre comme ca :

Code : Tout sélectionner
<?xml version="1.0" encoding="ISO-8859-1"?>
<root><signalStrength>-41</signalStrength>
</root>


sinon, tu peux remplacer //signalStrength par //root
ou encore verifier que le script 2B_sonoffmini.php est bien a jour.
Dernière édition par benj70b le 07 Sep 2020 07:49, édité 1 fois.
Eedomus + | Domoticz | Mosquitto | Node Red | deCONZ | EspEasy | Conbee II | Rfxcom | Esp32 | Esp8266 | Alexa | Harmony

[Store] : deCONZ - Actionneurs & Capteurs / Domoticz Events / MiLight v4 & v6 / Sonoff Mini / Etats de batteries
benj70b
 
Messages : 294
Inscription : 20 Jan 2014
Localisation : 89

Suivant

Retour vers Périphériques réseau

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 15 invité(s)