Problème avec prise Meross mss210

j’ai enlevé l’interrogation de l’état

Pas d’amélioration :frowning:

Voici les logs avec la dernière beta, un Off qui marche puis un On qui échoue ; débranchement un On qui marche et un Off qui échoue

[2021-09-30 12:11:36][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 12:11:36][DEBUG] :     Receive:{"header":{"messageId":"a29e7834a7283ebbb340bb23587739a4","namespace":"Appliance.Control.ToggleX","method":"SETACK","payloadVersion":1,"from":"/appliance/2003060100781125188848e1e9186bba/publish","timestamp":1632996695,"timestampMs":509,"sign":"70e2045298e31fb2f661dac94b719001"},"payload":{}}[10]
[2021-09-30 12:11:39][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 12:12:54][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 12:12:54][DEBUG] :     Receive:{"header":{"messageId":"a29e7834a7283ebbb340bb23587739a4","namespace":"Appliance.Control.ToggleX","method":"SETACK","payloadVersion":1,"from":"/appliance/2003060100781125188848e1e9186bba/publish","timestamp":1632996774,"timestampMs":727,"sign":"bf58eb1aa06a70c1c642c26cfd2b9ccb"},"payload":{}}[10]
[2021-09-30 12:12:58][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

Ne te mets pas la rate au court bouillon, il n’y a pas d’urgence, comme je l’ai dit j’ai permutais les modèles de prise.

je ne teste pas plus, clairement le protocole a changé et utiliser les mêmes credentials ne va pas à la prise.

Bonsoir @bernardfr.caron

J’ai recherché si d’autres personnes étaient tombées sur mon problème. Je suis tombé sur cette description de bug du plugin Meross de HomeBridge (kezako ?).

Bref la personne ayant eu le problème dit que depuis la mise à jour du firmware de sa prise MSS210, elle a cessé de fonctionner.

Dans sa configuration il a déclaré la prise MSS210 avec ce JSON :

"singleDevices": [
        {
            "name": "Fan",
            "serialNumber": "251h22191003978",
            "deviceUrl": "000.000.0.000",
            "model": "MSS210",
            "showAs": "outlet",
            "firmwareRevision": "2.2.2"
        }
    ]

L’important ici, c’est le numéro de série serialNumber.

Le concepteur lui dit:

The serial number in the config needs to be the 32 character uiid for the device
This is shown in the log when initialising cloud device (ie with your meross username and password configured) and also can be obtained with apps like http catcher

Est-ce que ça te parle ?
Est-ce que ton plugin utilise aussi le serialNumber de la prise ?
Si oui, je peux tenter de trouver une appli comme http catcher et m’en servir pour partager le UUID correspondant.

Voici les paramètres envoyés:

{"header": {"from": "192.168.1.167","messageId": "xxxxxxxxx","method": "PUT'","namespace": "xxxxxxxxxxxxxx","payloadVersion": 1,"sign": "xxxxxxxxxxxxx","timestamp": xxxxxxxxxxxxx,"triggerSrc": "AndroidLocal"},"payload": {xxxxxxxxxx}}

il faut peut être ajouter un SerialNumber.

Effectivement si tu peux m’envoyer l’entête avec httpCatcher elle doit ressembler à ce qu’il y a ci-dessus + le serialNumber.

1 « J'aime »

Voilà ce que j’obtiens avec un http catcher like pour Android:

{
    "header": {
        "from": "'.$url.'",
        "messageId": "'.$this->_devId.'",
        "method": "'.$method.'",
        "namespace": "'.$namespace.'",
        "payloadVersion": 1,
        "sign": "'.$this->_LocalKey.'",
        "timestamp": '.$this->_timestamp.',
        "triggerSrc": "Android",
        "uuid": "2003060100781125188848e3a9186bba"
    },
    "payload": {
        "togglex": {
            "channel": 0,
            "onoff": 0
        }
    }
}

Pour info :

  • la fin du uuid est l’adresse MAC : 48-e3-a9-18-6b-ba
  • les six premiers chiffres sont identiques sur mes deux prises: 200306
  • les sic chiffres qui précèdent l’adresse MAC sont aussi identiques: 251888
    Pou les 8 caractères au centre (01007811 ou 79289124) je n’ai pas trouvé de correspondance.

J’espère que ça peut t’aider.

Charger la beta
j’ai ajouté le uuid « 2003060100781125188848e3a9186bba » en « dur » dans la commande envoyée. Ca ne marchera éventuellement que pour cette prise.

Par quelle méthode as tu récupéré les credentials ?
permet-elle de récupérer le uuid ?

J’ai utilisé la méthode @olivr2s. Je ne pense pas qu’elle permette de récupérer le uuid.

donc il faudra utiliser httpcatcher
dis moi si ça marche pour la prise avec le uuid que j’ai codé

Malheureusement ça ne marche pas…

Par contre, je viens de m’apercevoir que le uuid est retourné par dans le champs « from » (cf un message précédent) :

"from":"/appliance/<uuid>/publish"

On devrait pouvoir se passer de httpCatcher :slight_smile:

Voici le log correspondant :

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,"triggerSrc": "AndroidLocal","uuid":"2003060100781125188848e1e9186bba"},"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

La seule différence que je vois entre ma capture d’hier soir et la trace du plugin est le channel qui est le nombre 0, alors que le plugin envoie la chaîne « 0 »

je n’ai rien changé à cela, j’enlève les guillemets dans la beta qui arrive.
il fut investiguer avec http catcher et voir ce que l’appli meross envoie
le UUID est tj le même ?

En effet ça n’a rien arrangé, car tu le dis rien n’a changé de ce coté.

Quant au uuid, je pense qu’il ne change pas car il était déjà dans les logs partagés le 30/09. Si c’est le cas et s’il devient indispensable, penses-tu que tu pourras ajouter commande pour l’extraire de la réponse ça aiderait grandement par rapport à http catcher.

Mais avant il faut comprendre pourquoi ça ne marche pas. Je vais continuer à investiguer, j’en profiterai pour vérifier si le uuid change d’un appel à l’autre.
Je posterai de nouveau si je trouve quelque chose qui pourrait faire avancer le schmilibiliblick.

Merci

j’ai enlevé les " " autour du n° de canal dans la dernière beta.
Peux tu m’envoyer l’entête http quand l’appli envoie un e requête ?
mais pas une copie d’écran : du texte, sans rien modifier.

Tu parles bien de l’appli Meross ? Et l’entête c’est bien le Header ?

oui
pour voir ce que ça envoie

Je te l’ai envoyé par MP

*** nouveau ***
La version Beta du plugin améliore l’accès aux périphériques Meross de 3 façons :

  • les prises sans consommations ont leur retour d’état maintenant correct
  • un nouveau type : Meross V2 permet de se passer des credentials en allant les chercher sur le compte Meross (via login/mdp)
  • fonctionne avec le nouveau firmware 2.2.2

Cette beta est 100% fonctionnelle sauf pour Meross V2 qui est à tester (3 types de prise ont été testés) et les prises myStrom qui ont été ajoutées.

Vous pouvez donc tester sans souci et me faire un retour.

1 « J'aime »

Testé et fonctionnel avec :

  • prise simple mss210 firmware 2.2.2
  • prise avec conso mss310 firmware 2.1.16
  • intérupteur mural mss510x firmware 3.2.2
  • intérupteur mss710 firmware 6.1.6

Merci @bernardfr.caron

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.