Sonoff 4ch pro : signal rf émis par rfxcom

Forum dédié au Rfxcom et consorts utilisant les fréquences 433 et 866 MHz.
Pour les questions concernant les RFLINK, merci d'utiliser le forum spécifique en dessous.
Kekus
Messages : 1
Inscription : 19 janv. 2019, 13:12

Sonoff 4ch pro : signal rf émis par rfxcom

Message par Kekus »

J'ai acheté un relais sonoff 4 ch pro pour piloter un système d'arrosage diy avec des électrovannes de machine à laver.

Le contrôle wifi de ce relais ne m'intéresse pas étant donné que le système sera au fond du jardin, hors de portée du signal wifi.

Je n'ai nulle part trouvé de moyen d'émettre directement le signal rf par mon rfxcom sans flasher le relais, et j'ai tenté de comprendre comment était composé ce signal.
Je vous donne un moyen qui marche chez moi, mais, étant débutant, je n'assure pas que cela marchera avec toutes les installations.
(install raspberry3 sous raspbian jessie pixel, rfxcom RFXTRX433E, domoticz)

Il s'agit tout d'abord d'installer rfxcmd.py sur votre raspberry par exemple en suivant ce tuto :
https://github.com/digiltd/rfxcmd-restored-wiki

Notez que rfxcmd.py ne fonctionne pas avec python3.

Le code à transmettre est un signal de type lightning4, sous-type PT2262.

Il est construit de cette façon :

09 13 00 01 -- -- -- 01 72 80 en hexadécimal

dans lequel :
09 correspond à la longueur du signal (-1) en octets
13 est le type lightning4
00 est le sous-type PT2262
01 est le sequence number
01 72 donne le pulse (qui doit être de 370usec)
80 est le signal level
Source rfxcom manuel (page 49) : http://www.rfxcom.com/WebRoot/StoreNL2/ ... _Guide.pdf


Ces paramètres ne peuvent pas être mofifiés pour contrôler un sonoff 4 ch pro.

Pour les 6 octets variables symbolisés par des - :
Les 5 premiers sont l'id de votre relais (à choisir en hexadécimal : chiffres de 0 à 9 et lettres de A à F)
Le 6e octet correspond au bouton de votre relais : 1 pour le bouton 1, 2 pour le bouton 2, 4 pour le bouton 3, et 8 pour le bouton 4.

Ainsi, pour appairer le relais 1 du sonoff, en choisissant l'id A123E,il faut lancer dans le shell :
sudo python2 /opt/rfxcmd/rfxcmd.py -d /dev/ttyUSB0 -s 09130001A123E1017280
(Ne pas oublier d'appuyer deux fois sur le bouton du relais, comme pour l'appairage avec télécommande)

La même commande permet après appairage d'activer ou éteindre le relais.

Quelques remarques sur cette commande shell :
/opt/rfxcmd/rfxcmd.py est le chemin standard où est installé rfxcmd, à modifier si vous l'installez ailleurs.
-d /dev/ttyUSB0 permet de préciser le port USB du rfxcom, à adapter à votre cas.

J'ignore si cela pourrait marcher avec d'autres relais sonoff, mais j'ai bon espoir de faire fonctionner des relais "Sonoff RF" de la même manière.

J'ai ensuite créé dans domoticz un interrupteur virtuel déclenchant un script pour contrôler chacun des relais.

Je me rend compte que cette méthode est "alambiquée" mais c'est la seule que j'ai trouvée : je répète que je suis novice, soyez indulgents :)

Peut être quelqu'un de plus calé que moi pourra s'en inspirer pour ajouter un protocole sonoff directement dans domoticz.

En espérant que cela servira à d'autres !

Kekus
Répondre