Plugin wifilightV2 - Sonoff - Ewelink LAN

Pour info, c’est ce modèle en Ewelink : Interrupteur Mural Tactile, 1/2/3 Boutons, 1 Voie, Wi-fi, Standard Eu, Pour Luminaire, Compatible Avec Tuya, Smart Life, Ewelink Et Commande Vocale Google Home, Amazon Alexa - Commutateurs - AliExpress

Si ce n’est pas fait, essaie en désactivant le pare-feu

sinon essayer avec packet capture lors de l’appairage avec ewelink

Merci, j’essaye ça et vous tiens au courant.

Merci Messieurs, procédure validé avec Packet Capture.
Bonne continuation, vous faites du super boulot pour aider les amateurs comme moi.

suffit de voter pour le plugin :
voir ici

Je viens de voter.
Ton plugin est une petite bombe, grand merci pour tout ce boulot.

1 « J'aime »

Bonjour,

J’ai voté hier pour ton super plugin WifilightV2.
Merci pour tout …
Salutations

Jean-Paul

Bonsoir.
De mon côté, j’essaie d’intégrer une prise extérieure qui fonctionne avec ewelink.
Avec packet capture, j’ai bien récupéré l’id et la selfapikey.
J’ai essayé divers sous types (en supprimant les commandes entre 2) sans succès.
Voici le log :

[2019-10-30 19:20:30][DEBUG] :     OFF
[2019-10-30 19:20:30][DEBUG] :    Cmd : {"switch":"off"}
[2019-10-30 19:20:30][DEBUG] :    url : http://192.168.31.16:8081/zeroconf/switch
[2019-10-30 19:20:30][DEBUG] :    data : {"sequence":"156958807731","deviceid":"1000186e01","selfApikey":"7bc33ef3-ab09-4abf-b1fb-1bc3b3314360","iv":"OTA0ODgxODA0OTIyNzgwMw==","encrypt":true,"data":"Km82lnvXDM26qtOgUaML5mGFbiXY81M/WG+eUjuEfjE="}
[2019-10-30 19:20:30][DEBUG] :    header : Array
[2019-10-30 19:20:40][DEBUG] :    Exception:cURL error 28: Operation timed out after 10001 milliseconds with 0 bytes received
[2019-10-30 19:20:40][DEBUG] :    No Ewelink device @http://192.168.31.16:8081/zeroconf/switch

Ce qui est bizarre, c’est que apikey n’est pas la même que celle que j’ai saisi…
J’ai loupé quelque chose ?

Merciiii !

tu es sûr que ton périphérique est à cette adresse ? car il est inaccessible.Sinon problème d’apikey et d’id.

Sinon ce n’est pas en essayant tous les sous types que ça va fonctionner. Donc configurer le plugin comme demandé dans le doc.

L’ip est la bonne oui (ping ok depuis jeedom).
Je relis la doc, ça marche… Par contre, c’est normal que la selfApikey du log ne soit pas celle que j’ai saisie dans l’objet ?:thinking:

Edit : ah oui, l’appli ewelink contrôle bien la prise en mode LAN.

Merci à toi pour ce petit tuto clair et en français :wink:

Bien le bonjour les Jeedomiens !
Je reviens vers vous car j’ai un retour d’erreur sur un Sonoff basic, la commande fonctionne bien mais à l’allumage j’ai un message:« Aucune commande correspondant à l’ID : 230 » et à l’extinction:« Aucune commande correspondant à l’ID : 231 ».
Ce qui est bizarre c’est que je n’ai pas d’ID 230 ou 231 dans la commande.
Une idée? Merci

Bonjour,

J’ai un sonoff basic , j’aimerais le piloter avec ce plugin ce qui semble possible mais je voudrais garder simultanément la compatibilité google home via ewelink. J’ai peur qu’en passant le module sonoff en mode lan, je perde cette possibilité d’utiliser la voix pour allumer ou éteindre le sonoff ?

Merci pour vos retours.
(j’ai cherché cette réponse sur le topic avant de poser la question, j’ai lu la doc aussi, sans trouver la réponse, désolé si j’ai raté la réponse)

@Minscof
C’est fonctionnel, tous mes sonoff sont sur le plugin mais également sous GH via l’application Ewelink.

1 « J'aime »

Bonjour Seblam, as-tu réussi a faire fonctionner ton module ? j’ai le même souci que toi, une fois le deviceid et apiley récupérés et rentrés dans respectivement dans le champs deviceid et le champs jeton dans le plugin, rien ne se passe quand je mets sur ON ou OFF et je constate dans la log que le plugin renvoi une autre key nommée “selfApikey” qui n’est pas la même que celle rentrée dans le champs jeton…

Edit : pour ma part, il s’agit d’une prise sonoff S20, firmware original mis a jour 3.3.0 fonctionnant correctement dans l’appli eWelink

Je n’ai pas réussi non. C’est peut-être parce que j’ai utilisé Packet capture…

Je viens de réussir, j’ai tenté avec un autre module et c’est passé. J’ai tout supprimé puis recréé et mes 3 modules S20 sont maintenant fonctionnels via l’appli eWelink, Jeedom et mon Google Home.
Voici ce que j’ai fait :

  • dans l’appli eWelink, passer les modules en mode LAN et vérifier qu’on arrive bien a les commander puis fermer l’appli
  • dans Jeedom, mettre la log du plugin en debugg (+redémarrer plugin)
  • débrancher tous les autres modules qui sont configurés dans eWekink
  • bien paramétrer des IP fixes dans votre routeur/box
  • brancher le module, attendre 15 secondes qu’il se connecte au wifi (on peut vérifier par un ping que c’est bon)
  • appuyer 8 secondes sur le bouton (ça clignote), attendre 2 secondes et appuyer de nouveau 8 secondes sur le bouton (ça clignote plus vite)
  • se connecter sur le réseau privé du module ITEAD-10000xxxxx (le 10000xxxxx correspond au Deviceid du module), password “12345678”
  • ouvrir un navigateur et taper « http://10.10.7.1/device » quelque soit l’ip fixe affectée
  • récupérer la ligne fournie : {« deviceid »:« 10000xxxxx »,« apikey »:« xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx »,« accept »:« post »,« chipid »:« 00xxxxxx »}
  • créer le module dans le plugin sous jeedom (champs : IP, marque : eWelink Sonoff LAN , sous-type : S20, jeton = apikey, identifiant = deviceid)
  • attendre que le module se remettre sur le wifi (il arrête de clignoter)
  • aller dans la log du plugin et appuyer sur le bouton du module et là, vous devriez voir passer quelque chose comme ceci :
    [2019-11-02 15:25:36][DEBUG] : %%New mDNS packet :_ewelink._tcp.local
    [2019-11-02 15:25:36][DEBUG] : x:0 qtype:12
    [2019-11-02 15:25:36][DEBUG] : name:eWeLink_10000xxxxx._ewelink._tcp.local
    [2019-11-02 15:25:36][DEBUG] : x:1 qtype:16
    [2019-11-02 15:25:36][DEBUG] : Raw Data:txtvers=1id=1000xxxxxxtype=plugapivers=1seq=3encrypt=trueiv=xxxxx==data1=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    [2019-11-02 15:25:36][DEBUG] : x:2 qtype:33
    [2019-11-02 15:25:36][DEBUG] : x:3 qtype:1
    [2019-11-02 15:25:36][DEBUG] : packet is — port:8081 ip:192.168.0.xxx data:{« txtvers »:« 1 »,« id »:« 10000xxxxx »,« type »:« plug »,« apivers »:« 1 »,« seq »:« 3 »,« encrypt »:« true »,« iv »:« MDUyNjc4OTU1NTg4ODQ3Mw== »,« data1 »:« xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx »}
    [2019-11-02 15:25:36][DEBUG] : Input mess : 68 42 37 2b 58 70 70 78 6c 6f 69 64 39 64 59 6f 56 54 59 6e 4a 38 33 47 34 53 68 6d 51 45 47 6b 4d 43 4f 61 6f 55 65 4e 32 6f 38 4a 72 5a 50 6a 62 73 30 5a 67 6b 62 59 6e 73 7a 57 47 4e 4c 66 35 4d
    [2019-11-02 15:25:36][DEBUG] : iv : xxxxxxxxxxxxxxxx==
    [2019-11-02 15:25:36][DEBUG] : Receive after decode :{« switch »:« on »,« startup »:« off »,« pulse »:« off »,« sledOnline »:« on »,« pulseWidth »:500,« rssi »:-51}
    [2019-11-02 15:25:36][DEBUG] : >>> : switch | on : on
    [2019-11-02 15:25:36][DEBUG] : >>> : startup | off : off
    [2019-11-02 15:25:36][DEBUG] : >>> : pulse | off : off
    [2019-11-02 15:25:36][DEBUG] : >>> : sledOnline | on : on
    [2019-11-02 15:25:36][DEBUG] : >>> : pulseWidth | 500 : 500
    [2019-11-02 15:25:36][DEBUG] : >>> : rssi | -51 : -51
    [2019-11-02 15:25:36][DEBUG] : >ON
    [2019-11-02 15:25:36][DEBUG] : Pulse :OFF
    [2019-11-02 15:25:36][DEBUG] : Startup : off
    [2019-11-02 15:25:36][DEBUG] : NO Group
    [2019-11-02 15:25:36][DEBUG] : On:1
  • le module a bien été repéré par le plugin et est maintenant opérationnel

@Seblam
ton périphérique n’est pas accessible. Problème ip ? Sinon tu le reinitialises et attribue une autre adresse IP
@dens.melo
Pas bon id ou apikey ou adresse IP en l’absence de logs

Tout était bon (IP, deviceid et apikey), PING sur le LAN OK mais il semble que le module n’était pas correctement vu. J’ai tout recommancé en débranchant les autres modules et là ça a marché selon la procédure que j’ai indiqué plus haut…