Problème avec prise Meross mss210

Bonsoir tout le monde,

Suite à un problème de suivi de maintenance d’un autre plugin que j’utilisais jusqu’ici, j’ai installé le très bon plugin wifilightv2.

J’ai une ribambelle de prises et interrupteurs de la marque Meross chez moi : des prises connectées mss310, mss210, des interrupteurs muraux mss510x et des interrupteurs poire mss710.

J’ai récupéré les credentials grâce au tuto de @olivr2s et tous mes appareils fonctionnent avec le plugin sauf les trois prises mss210.

Ni l’état, ni le marche ni l’arrêt ne fonctionnent.

En activant le niveau debug des logs j’ai ceci:

[2021-09-27 23:31:01][DEBUG] :     Cmd :  - url : http://192.168.1.20/config - type : POST - body : {"header": {"from": "http://192.168.1.20/config","messageId": "a29e7834a7283ebbb340bb23587739a4","method": "GET","namespace": "Appliance.System.All","payloadVersion": 1,"sign": "0132a0838981aaaa946096065887d5fa","timestamp": 1632733420,"triggerSrc": "AndroidLocal"},"payload": {}} -  method: GET - Exception:cURL error 52: Empty reply from server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) - No Meross device @http://192.168.1.20/config

nota: j’ai modifié les credentials dans mon post.

Mes prises mss210 ont la version matérielle 2.0.0 et le firmware 2.2.2

Comme on peut le voir la requête reçoit une réponse vide de la prise…

Avez-vous une idée de ce qu’il peut se passer ? Et savez-vous comment je pourrais résoudre mon problème ?

As tu bien vérifié que les IP rentrées sont ok : dans ton message il ne trouve aucun péripherique à l’ip 192.168.1.20

Bonjour @mounik34 et merci de ta réponse.

Oui, je viens de re-vérifier avant de te répondre, l’adresse ip est bien celle de la prise (des prises puisque les trois mss210 ont le même problème).

J’ai essayé les sous-types « Plug1 » et « Plug1 V1 » et aussi « Plug 2 » et ceux avec conso mais rien n’y fait.

J’ai aussi tenté 3 envois de commande avec 3ms secondes entre chaque mais sans succès.

Dans un premier temps, je vais permuter certaines prises mss310 (qui fonctionnent et qui sont moins utilisées par mes scénarios) avec les mss210 (plus utilisées), ça va me débloquer pour un moment.

Mais si une âme charitable a une idée je suis preneur :wink:

tester d’abord que c’est la bonne ip
sous windows
lancer cmd
ping 192.168.1.20

Si Ok

mettre ici les logs avec ON/OFF

Bonsoir @bernardfr.caron
Voici le ping :

ping 192.168.1.20

Pinging 192.168.1.20 with 32 bytes of data:
Reply from 192.168.1.20: bytes=32 time=16ms TTL=255
Reply from 192.168.1.20: bytes=32 time=6ms TTL=255
Reply from 192.168.1.20: bytes=32 time=5ms TTL=255
Reply from 192.168.1.20: bytes=32 time=5ms TTL=255

Ping statistics for 192.168.1.20:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 5ms, Maximum = 16ms, Average = 8ms

Et les logs des commandes On et Off :

[2021-09-28 21:41:44][DEBUG] :     Cmd : "togglex":{"onoff": 1,"channel": "0"} - url : http://192.168.1.20/config - type : POST - body : {"header": {"from": "http://192.168.1.20/config","messageId": "a29e7834a7283ebbb340bb23587739a4","method": "SET","namespace": "Appliance.Control.ToggleX","payloadVersion": 1,"sign": "0132a083898139fa946096065887d5fa","timestamp": 1632733420,"triggerSrc": "AndroidLocal"},"payload": {"togglex":{"onoff": 1,"channel": "0"}}} -  method: SET - Exception:cURL error 52: Empty reply from server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) - No Meross device @http://192.168.1.20/config
[2021-09-28 21:41:52][DEBUG] :     Cmd : "togglex":{"onoff": 0,"channel": "0"} - url : http://192.168.1.20/config - type : POST - body : {"header": {"from": "http://192.168.1.20/config","messageId": "a29e7834a7283ebbb340bb23587739a4","method": "SET","namespace": "Appliance.Control.ToggleX","payloadVersion": 1,"sign": "0132a083898139fa946096065887d5fa","timestamp": 1632733420,"triggerSrc": "AndroidLocal"},"payload": {"togglex":{"onoff": 0,"channel": "0"}}} -  method: SET - Exception:cURL error 52: Empty reply from server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) - No Meross device @http://192.168.1.20/config

Si besoin de plus d’info, n’hésite pas :wink:
Merci

Je ne vois pas à part les credentials, même si tu as réussi pour les autres prises.
Il y a les mêmes credentials pour toutes les prises ?

Vous me faites devenir parano :rofl:

Je viens de tout revérifier, les credencials sont bien les mêmes… D’ailleurs hier, quand j’ai interverti les prises, je n’ai changé que l’adresse ip et le sous-type pour ça se mette à fonctionner.

Y a-t-il, sur le forum un fil qui explique comment espionner les requêtes que reçoivent ses prises ? Et déjà est-ce possible ?

Sinon personne avec les mêmes prises mss210 ?
Ne serait-ce que pour savoir si je suis le seul chez qui elles ne fonctionnent pas avec le plugin ?

Ca veut dire que la prise ne comprends pas la requête. Tu as bien testé plug1 et plug1 V1 ?
Dans les 2 cas l’erreur est la même dans les logs ?
As tu les moyens de regarder le n° de firmware de tes différentes prises ?

Au toggleX vs toggle près la trace dans les logs est la même avec l’erreur : error 52: Empty reply from server
L’appli Meross dit que les mss210 ont le firmware 2.2.2
A titre d’information les mss310, qui fonctionnent, sont en 2.1.16

Si ces prises sont très récentes, le problème est le firmware. Je n’ai pas de solution pour l’instant, il va falloir attendre que la communauté investisse dans la recherche de la solution.
En attendant, essaye, au cas où, la beta du plugin. Ton plug n’est pas en V1.

Pas de problème j’attendrai.

La beta n’a rien changé malheureusement :slightly_frowning_face:

Déjà les interrupteurs muraux mss510x fonctionnent alors qu’ils n’étaient pas listés comme compatibles. C’est déjà très bien.

Et ton plugin m’ouvre la possibilité de prendre des produits d’autres marques (même si je suis très satisfait de Meross).

Merci

peux tu me donner le log quand même ?

Bien sûr, mais lequel ? Celui de la beta ? Il est différent ?
J’avais déjà remis la version stable :wink:

oui celui de la beta

1 « J'aime »

En copiant les premières traces je me suis rendu compte que les credentials avaient été vidés. Je ne sais pas quand ça s’est passé, peut-être au changement de sous-type ?

Bref je les ai remis et là le premier On a fonctionné, mais pas le Off. Je suis allé éteindre la prise à la main, mais après plus aucun On ou Off n’est passé.
Je vais mettre plus de tentatives une idée du délai entre chacune ?

Voilà les traces:

[2021-09-30 11:09:46][DEBUG] :     Cmd : "togglex":{"onoff": 1,"channel": "0"} - url : http://192.168.1.20/config - type : POST - body : {"header": {"from": "http://192.168.1.20/config","messageId": "a29e7834a7283ebbb340bb23587739a4","method": "SET","namespace": "Appliance.Control.ToggleX","payloadVersion": 1,"sign": "0132a0838981aaaa946096065887d5fa","timestamp": 1632733420},"payload": {"togglex":{"onoff": 1,"channel": "0"}}} -  method: SET - Status:200
[2021-09-30 11:09:46][DEBUG] :     Receive:{"header":{"messageId":"a29e7834a7283ebbb340bb23587739a4","namespace":"Appliance.Control.ToggleX","method":"SETACK","payloadVersion":1,"from":"/appliance/2003060100781125188848e1e9186bba/publish","timestamp":1632992986,"timestampMs":175,"sign":"4ebad5235612fb434ee1290fe0604cd7"},"payload":{}}[10]
[2021-09-30 11:09:46][DEBUG] :     Cmd :  - url : http://192.168.1.20/config - type : POST - body : {"header": {"from": "http://192.168.1.20/config","messageId": "a29e7834a7283ebbb340bb23587739a4","method": "GET","namespace": "Appliance.System.All","payloadVersion": 1,"sign": "0132a0838981aaaa946096065887d5fa","timestamp": 1632733420},"payload": {}} -  method: GET - Exception:cURL error 52: Empty reply from server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) - No Meross device @http://192.168.1.20/config
[2021-09-30 11:09:49][DEBUG] :     Cmd : "togglex":{"onoff": 0,"channel": "0"} - url : http://192.168.1.20/config - type : POST - body : {"header": {"from": "http://192.168.1.20/config","messageId": "a29e7834a7283ebbb340bb23587739a4","method": "SET","namespace": "Appliance.Control.ToggleX","payloadVersion": 1,"sign": "0132a0838981aaaa946096065887d5fa","timestamp": 1632733420},"payload": {"togglex":{"onoff": 0,"channel": "0"}}} -  method: SET - Exception:cURL error 52: Empty reply from server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) - No Meross device @http://192.168.1.20/config
[2021-09-30 11:12:22][DEBUG] :     Cmd : "togglex":{"onoff": 0,"channel": "0"} - url : http://192.168.1.20/config - type : POST - body : {"header": {"from": "http://192.168.1.20/config","messageId": "a29e7834a7283ebbb340bb23587739a4","method": "SET","namespace": "Appliance.Control.ToggleX","payloadVersion": 1,"sign": "0132a0838981aaaa946096065887d5fa","timestamp": 1632733420},"payload": {"togglex":{"onoff": 0,"channel": "0"}}} -  method: SET - Exception:cURL error 52: Empty reply from server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) - No Meross device @http://192.168.1.20/config
[2021-09-30 11:12:41][DEBUG] :     Cmd : "togglex":{"onoff": 1,"channel": "0"} - url : http://192.168.1.20/config - type : POST - body : {"header": {"from": "http://192.168.1.20/config","messageId": "a29e7834a7283ebbb340bb23587739a4","method": "SET","namespace": "Appliance.Control.ToggleX","payloadVersion": 1,"sign": "0132a0838981aaaa946096065887d5fa","timestamp": 1632733420},"payload": {"togglex":{"onoff": 1,"channel": "0"}}} -  method: SET - Exception:cURL error 52: Empty reply from server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) - No Meross device @http://192.168.1.20/config
[2021-09-30 11:13:03][DEBUG] :     Cmd : "togglex":{"onoff": 1,"channel": "0"} - url : http://192.168.1.20/config - type : POST - body : {"header": {"from": "http://192.168.1.20/config","messageId": "a29e7834a7283ebbb340bb23587739a4","method": "SET","namespace": "Appliance.Control.ToggleX","payloadVersion": 1,"sign": "0132a0838981aaaa946096065887d5fa","timestamp": 1632733420},"payload": {"togglex":{"onoff": 1,"channel": "0"}}} -  method: SET - Exception:cURL error 52: Empty reply from server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) - No Meross device @http://192.168.1.20/config

le plugin interroge immédiatement la prise et elle se met en carafe.
Je vais modifier ce sois si le temps la beta pour l’enlever

Chose étonnante que je viens de constater à l’instant : la première requête envoyée après avoir débranché/rebranché l’alimentation de la prise fonctionne ! Que ce soit avec la version stable ou la beta.

Je mets les logs de la version beta:

[2021-09-30 11:36:10][DEBUG] :     Cmd : "togglex":{"onoff": 1,"channel": "0"} - url : http://192.168.1.20/config - type : POST - body : {"header": {"from": "http://192.168.1.20/config","messageId": "a29e7834a7283ebbb340bb23587739a4","method": "SET","namespace": "Appliance.Control.ToggleX","payloadVersion": 1,"sign": "0132a0838981aaaa946096065887d5fa","timestamp": 1632733420},"payload": {"togglex":{"onoff": 1,"channel": "0"}}} -  method: SET - Status:200
[2021-09-30 11:36:10][DEBUG] :     Receive:{"header":{"messageId":"a29e7834a7283ebbb340bb23587739a4","namespace":"Appliance.Control.ToggleX","method":"SETACK","payloadVersion":1,"from":"/appliance/2003060100781125188848e1e9186bba/publish","timestamp":1632994569,"timestampMs":866,"sign":"c9b8cedd72756271799455a7bcd3cd2e"},"payload":{}}[10]
[2021-09-30 11:36:10][DEBUG] :     Cmd :  - url : http://192.168.1.20/config - type : POST - body : {"header": {"from": "http://192.168.1.20/config","messageId": "a29e7834a7283ebbb340bb23587739a4","method": "GET","namespace": "Appliance.System.All","payloadVersion": 1,"sign": "0132a0838981aaaa946096065887d5fa","timestamp": 1632733420},"payload": {}} -  method: GET - Exception:cURL error 52: Empty reply from server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) - No Meross device @http://192.168.1.20/config
[2021-09-30 11:37:43][DEBUG] :     Cmd : "togglex":{"onoff": 0,"channel": "0"} - url : http://192.168.1.20/config - type : POST - body : {"header": {"from": "http://192.168.1.20/config","messageId": "a29e7834a7283ebbb340bb23587739a4","method": "SET","namespace": "Appliance.Control.ToggleX","payloadVersion": 1,"sign": "0132a0838981aaaa946096065887d5fa","timestamp": 1632733420},"payload": {"togglex":{"onoff": 0,"channel": "0"}}} -  method: SET - Status:200
[2021-09-30 11:37:43][DEBUG] :     Receive:{"header":{"messageId":"a29e7834a7283ebbb340bb23587739a4","namespace":"Appliance.Control.ToggleX","method":"SETACK","payloadVersion":1,"from":"/appliance/2003060100781125188848e1e9186bba/publish","timestamp":1632994663,"timestampMs":32,"sign":"d1dd623d7e6a8c3d11e73583926d7737"},"payload":{}}[10]
[2021-09-30 11:37:43][DEBUG] :     Cmd :  - url : http://192.168.1.20/config - type : POST - body : {"header": {"from": "http://192.168.1.20/config","messageId": "a29e7834a7283ebbb340bb23587739a4","method": "GET","namespace": "Appliance.System.All","payloadVersion": 1,"sign": "0132a0838981aaaa946096065887d5fa","timestamp": 1632733420},"payload": {}} -  method: GET - Exception:cURL error 52: Empty reply from server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) - No Meross device @http://192.168.1.20/config

Merci @bernardfr.caron !

Ça confirme ce que je constate.
Lors de la création de la prise, si le démon interroge avant, il met la prise out et plus aucune commande ne passe.

peux tu tester la dernière beta ?
celle de 12h03

Attends que je finisse mais premiers essais avant de poster une autre beta :crazy_face:
Merci pour ta réactivité, je refais mes tests :wink: