Chacon module wifi

Je l'avais dit, la domotique revient sur le blog :)
Grâce aux copains de chez Domadoo, j'ai pu tester un module Chacon qui se base sur le Wifi. Je possède plusieurs modules on/off Chacon sur la fréquence 433Mhz. Je communique par l'intermédiaire de Jeedom avec un RfxTrx433. L'énorme avantage du 433Mhz, c'est le faible coup des modules (moins de 20€ le module on/off contre 60 pour du z-wave par exemple ^^). Le gros défaut, c'est le manque de retour d'état. L'ordre est envoyé et la communication s’arrête là.

C'est pourquoi, j'ai voulu tester le module Chacon Wifi. Via le Wifi, le retour d'état devient possible, ce qui ouvre la porte à pleins de fonctionnalités.

Déballage du module

Une fois la boite ouverte, on découvre un module très classique et une notice qui détaille toutes les fonctionnalités de l'appli mobile, qui permet de piloter le module. Héééé oui, le module est piloté via une appli android/ios ET C'EST TOUT!!! (mais j'y reviendrais plus tard).
Les notices de montage du module sont très succinctes. Plan de montage derrière une ampoule, derrière un interrupteur. Par contre, rien en ce qui concerne un éventuel va-et-vient (alors que le module est prévu pour conserver les interrupteurs et les va-et-vient justement...).

Le module et son appli

Le module fonctionne bien, l'appli est très simple d'utilisation. Pour l'association sur le réseau Wifi, il faudra penser à désactiver le filtrage sur adresse MAC le temps de l'association. Une fois le module associé, il est très simple de retrouver son IP et son adresse MAC pour enregistrer tout ça sur le routeur et réactiver le filtrage MAC :).
L'appli permet de régler les heures d'allumage/extinction, de faire de la simulation de présence et pleins d'autres choses.

L'intégration dans une solution domotique

(Attention, à partir d'ici, ça va devenir plus technique ^^)

C'est là que l'on va reparler du fait que le module n'est pilotable que par l'appli mobile. C'est LE point négatif du module et qui le rend (en tout cas pour moi) complètement inutile.
En effet, impossible de le gérer par une solution domotique de type Jeedom (ou n'importe quelle autre box domotique...). J'ai contacté Chacon, qui me dit qu'il n'y a pas d'API prévu pour le module, et je trouve ça fort dommage u_u Ça n’empêcherait pas l'utilisation de l'appli, et ça permettrait à pleins de possesseurs de système domotique de profiter de ce module....

Pour solutionner ce problème, j'ai essayé de voir si je pouvais faire un peu de reverse engineering pour piloter le module autrement que par l'appli. Et après quelques soirées de bataille à coup de sniffage réseau et d'annalyse de code source de l'appli android, j'arrive à envoyer les ordres ON et OFF au module. C'est très basique et loin d'être exploitable pour un plugin jeedom par exemple.
Les datas envoyées au module sont "encodées/cryptées". Par chance, bien que la valeur HEXA de la data change, les paquets sont réutilisables. Les échanges se font sur un port UDP, j'ai testé de ré-envoyer la data ON en UDP et la lumière s'est allumée. Par contre, je ne sais pas de quoi sont constituées ces datas (il me manque quelques infos que je n'ai pas encore trouvé dans l'appli mobile...). Donc impossible de reconstruire les datas, ni d'interpréter le retour du module. Même chose ici, j'arrive à récupérer le paquet envoyé par le module, j'ai un beau code HEXA mais je ne sais pas ce qu'il y a dedans....

Histoire de me compliquer la vie, je ne connais pas le Java (langage utilisé pour les applis androïd). Donc la décompilation de l'apk me donne bien des sources exploitables, mais j'ai du mal à lire et comprendre la totalité du code XD
Au final, je sais que les datas envoyées sont composées de l'IP du module, de son adresse MAC, d'un identifiant et de quelques autres trucs qu'il me reste à préciser u_u Si jamais j'arrive à savoir ce qui compose les datas et comment les transformer pour les avoirs au bon format, je pourrais peut être faire un script un peu plus générique, voir mettre en place de quoi récupérer les infos en interrogeant directement le module.
Si jamais j'y parviens, je me ferais plaisir avec un module Jeedom et un code open source histoire que tout le monde puisse améliorer le bousin :)

Le module est très simple d'utilisation, mais le coté restriction à l'appli mobile est franchement très gênant pour moi. Pour le moment, ce module ne sera pas intégré à mon système.

Mots-clés :