Référence : https://www.youtube.com/watch?v=CEwuMh80CSA
Cet appareil permettent de faire le pont entre internet (via leur connection wifi) et les signaux RF et IR qu'ils peuvent envoyer (sur notre demande) pour commander les appareils.
Une appli android, nommée IHC (ou IHC for EU vu qu'on est en Europe) se connecte au bridge, liste tous les appareils qu'il sait commander en RF ou IR, et permet de les commander.
C'est un programme opensource qui permet d'apprendre et d'envoyer des codes IR ou RF à partir d'un device de type bridge comme mon “Broadlink RM2 Pro Plus3”.
Les codes peuvent être appris en appuyant sur les boutons de sa télécommande RF ou IR. Pour ca, le programme se connecte à votre device de type bridge de marque Broadlink (soit un RM Pro 3 ou RM Pro Mini ou RM2 Pro Plus3, ou …).
Plus d'info ici :
Une fois le programme démarré, vous devez le connecter à votre appareil broadlink. Pour cela, appuyer sur le bouton Connect (en haut à gauche). Rien d'autre à faire, il devrait retrouver votre appareil si vous l'avez bien configuré sur votre réseau.
Une fois votre appareil détecté, son nom s'affiche à coté du bouton “Connect” et le bouton Connect passe à “Connected”.
Vous pouvez alors choisir entre :
A chaque apprentissage de signal réussi (code capté), le code est affiché sous sa forme brute (Raw data), et sous sa forme compressée (Base64) ; le programme demandera de saisir un nom pour le signal.
Après avoir testé, visiblement je n'ai que l'apprentissage Infrarouge qui fonctionne. La RF ne fonctionne pas …
Aucun installation n'est nécessaire ; il suffit de dézipper le fichier suivant : broadlink_manager_1.0.0.1.zip
A ce moment, vous verrez l'exécutable, il vous suffira de double-cliquer pour lancer le programme.
sudo pip3 install broadlink git clone https://github.com/mjg59/python-broadlink.git cd /home/pi/python-broadlink/ sudo python -m pip3 install pycrypto sudo python -m pip3 install netaddr wget https://bootstrap.pypa.io/get-pip.py sudo python setup.py install
/home/pi/python-broadlink/./cli/broadlink_discovery
Discovering... ########################################### RM2 # broadlink_cli --type 0x279d --host 192.168.1.74 --mac 780f774dccec Device file data (to be used with --device @filename in broadlink_cli) : 0x279d 192.168.1.74 780f774dccec temperature = 0.0
/home/pi/python-broadlink/cli/broadlink_cli --h usage: broadlink_cli [-h] [--device DEVICE] [--type TYPE] [--host HOST] [--mac MAC] [--temperature] [--energy] [--check] [--checknl] [--turnon] [--turnoff] [--turnnlon] [--turnnloff] [--switch] [--send] [--sensors] [--learn] [--rfscanlearn] [--learnfile LEARNFILE] [--durations] [--convert] [--joinwifi JOINWIFI JOINWIFI] [data [data ...]] broadlink_cli: error: ambiguous option: --h could match --help, --host
E1 : Lancer l'apprendre un signal sur le raspberry pi :
sudo ./cli/broadlink_cli --host 192.168.1.74 --mac 780f774dccec --type 0x279d --learnfile TEST_AMPLI_CHAMBRE1.power
E2 : Envoyer le signal via l'appli android IHC qui est déjà paramétrée
E3 : Vérifier que le fichier de signal est bien enregistré sur le raspberry pi.
E4 : Faire des tests d'envois depuis le raspberry pi :
./cli/broadlink_cli --type 0x279d --host 192.168.1.74 --mac 780f774dccec --send @/home/pi/python-broadlink/TEST_AMPLI_CHAMBRE1.power
E5 : On peut aussi donner en paramètre le contenu du signal, i.e le contenu du fichier TEST_AMPLI_CHAMBRE1.power ; dans ce cas, on enlève le @ dans la commande :
./cli/broadlink_cli --type 0x279d --host 192.168.1.74 --mac 780f774dccec --send 260054005012281315132813151428131512161215141513151216122800034d5113281216122813151329121613151315121612151316122900034d501228131513282014132d121513161315121c121514151328000d0500000000pi
Autre solution pour enregistrer un signal RF :
E1 :
sudo ./cli/broadlink_cli --host 192.168.1.74 --mac 780f774dccec --type 0x279d --rfscanlearn
ou
sudo ./cli/broadlink_cli --host 192.168.1.74 --mac 780f774dccec --type 0x279d --rfscanlearn --learnfile TEST_MA_REMOTE_EN_433Mhz
E2 : appuyer sur le bouton de votre télécommande RF
E3 : le résultat s'affiche à l'écran
On peut utiliser un équivalent opensource de Google Home ou Alexa pour controler ses appareils à la maison : HomeAssistant https://www.home-assistant.io/
Il s'agit d'un serveur local (Home Assistant), qu'on peut installer par exemple sur un Raspberry Pi. https://www.home-assistant.io/getting-started/
Ensuite, l'application android Home Assistant se connecte à ce serveur pour configurer les controles.
Malheureusement, pour la commande à la voix (avec Google ou Alexa), il faut ensuite relier l'appli HomeAssistant à l'un des 2 assistants vocaux (Google Assistant, ou Alexa). Malheureusement, cela passe par l'utilisation de Home Assistant Cloud, qui est payant, après un trial de 30 jours.
Le tiers qu'il faut chercher à partir de Google Assistant ou Alexa est : “Hass.io”