Commander ses prises CHACON 433MHZ, via ARDUINO UNO (TUTO)

Bonjour à tous,

Premier tuto qui j’espère pourra servir à d’autres personnes !

Il s’agit d’une adaptation de How to make a $4 RFLink for 433MHz home automation! – CWESystems et de http://domo-attitude.fr/montage-et-la-programmation-de-votre-rflink/.
Cela permettra d’utiliser RFLINK (433MHZ) via Home Assistant sur un Arduino Uno (et non Arduino Mega) pour commander des prises CHACON (DIO).

Matériel

  • Arduino Uno (et pas une méga !)
  • 3 prises CHACON (modèle n°54798)
  • 1 télécommande noir pour prise CHACON
  • 1 Raspberry PI4, 4Go (et une carte SD bien entendu).
  • 1 émetteur FS1000A 433mhz (avec un fil électrique soudé pour l’antenne)
  • 1 récepteur XY-MK-5V 433mhz (avec un fil électrique soudé pour l’antenne)
  • Des câbles bien entendus.

Pour la télécommande, une information très utile qui se cache derrière le plastique noir : deux fonctions supplémentaires: le ALL ON et le ALL OFF. Il suffit de décoler et décaler un peu le plastique noir pour faire fonctionner ces fonctions et récupérer les codes générés (voir suite du tuto).

1. montage ARDUINO et Emetteur/récepteur

Nous allons démarrer par le câblage en prenant comme base le tuto de How to make a $4 RFLink for 433MHz home automation! – CWESystems (avec mes remerciements au passage).
J’ai utilisé un autre émetteur et un autre récepteur que ceux proposés (1 émetteur FS1000A 433mhz
et 1 récepteur XY-MK-5V 433mhz).
j’ai remarqué que les PIN TX 1 et RX 0 utilisés ne marchent pas très bien. Il faut donc modifier le câblage ainsi:

  • Récepteur PIN DATA sur ARDUINO PIN 10 (et non ARDUINO PIN RX 0)
  • Emetteur PIN DATA sur ARDUINO PIN 11 (et non ARDUINO PIN TX 1)

2. charger les programmes RFLINK dans le montage ARDUINO-Emetteur/Récepteur

Brancher votre montage ARDUINO-Emetteur/Récepteur à votre PC.
Télécharger RFLINK loader via RFLink Gateway - HomeAutomation.
Utilisez bien les explications données par How to make a $4 RFLink for 433MHz home automation! – CWESystems pour le chargement du programme RFLINK.
Attention, comme nous avons changé le câblage initialement proposé, nous devons aussi changer une partie du code dans « RFLink.ino » par celui-ci (changer juste les chiffres):

#define PIN_RF_TX_VCC 2
#define PIN_RF_TX_DATA 11
#define PIN_RF_RX_VCC 3
#define PIN_RF_RX_DATA 10

Désactiver un maximum de plugins dans le fichier « Config_01.c » car c’est en les limitant que l’on peut mettre le programme RFLINK dans un Arduino Uno. Pour ce tuto, gardons uniquement les plugins pour CHACON (Kaku et Newkaku).

3. Tester RFLINK et le montage ARDUINO-Emetteur/Récepteur

Nous allons suivre la partie « réveillez votre RFLINK » de http://domo-attitude.fr/montage-et-la-programmation-de-votre-rflink/.
Une fois votre RFLINK lancé, cliquez sur les boutons de la télécommande CHACON et vous verrez des codes apparaîtrent du type:

20;01;NewKaku;ID=00b4a6c6;SWITCH=1;CMD=ON;
20;02;NewKaku;ID=00b4a6c6;SWITCH=1;CMD=OFF;

Ce sont les codes de réception.

Nous allons tester maintenant l’émetteur. La subtilité est que le code émis sera légèrement différent du code reçu. Il faut enlever les deux 00 devant « ID= » pour que cela fonctionne en émission. Tester un par un les codes suivants dans RFLINK LOADER partie « Command to send ».

10;NewKaku;b4a6c6;01;ON;
10;NewKaku;b4a6c6;01;OFF;

Et si tout va bien, vos prises CHACON doivent fonctionner en ON et OFF !
A vous d’adapter les codes et de rajouter ceux trouvés.

3. installer notre montage ARDUINO-Emetteur/récepteur à HOME ASSISTANT.

Je vous passe l’installation de HOME ASSISTANT sur votre RASPBERRY…
Brancher votre ARDUINO-Emetteur/récepteur à votre RASPBERRY.
Il faut modifier deux fichiers de votre HOME ASSISTANT.

« Configuration.yaml » (rajouter les codes ci-dessous et à adapter avec vos codes trouvés dans RFLINK LOADER ainsi que l’adresse de votre port si besoin):

> rflink:
>   port: /dev/ttyACM0
>   wait_for_ack: true
>   reconnect_interval: 20
> switch:
>   - platform: rflink
>     devices:
>       newkaku_b4a6c6_1: {}
>       newkaku_b4a6c6_2: {}
>       newkaku_b4a6c6_3: {}

« groups.yaml » → Si vous voulez voir vos prises dans lovelace (à adapter selon vos besoins)

  salon_switch:
    name: salon lumières
    entities:
     - switch.newkaku_b4a6c6_1
     - switch.newkaku_b4a6c6_2
     - switch.newkaku_b4a6c6_3

Relancer votre HOME ASSISTANT… et tout devrait fonctionner !

J’espère que ces améliorations vous permettront d’améliorer votre domotique et votre compréhension du 433MHZ.
Ce tuto pourra évoluer si besoin.

Merci à l’équipe qui maintient ce forum !

3 « J'aime »

Super ton tuto je suis aussi très fan des boîtiers en lego, en plus j’ai un maître constructeur a la maison qui me fait ça très bien

Super boulot très clair je vais l’essayer dès que possible :yum: merci d’avoir pris le temps de détailler

Merci bien ! C’est un juste retour des choses. J’ai beaucoup utilisé les tutos des autres alors je renvoi la balle quand je peux le faire.

Merci @kheopsgo pour le retour. On fait progresser la communauté, c’est le but.

Salut,
J’ai un souci avec mon RFLink DIY.
Ca capte trsè très mal, seulement à très courte distance.
J’ai refait plusieurs fois le circuit, j’ai ajouté une vrai antenne, les condensateurs pour optimisés… rien n’y fait.

Dans ton tuto tu prends un code INO et donc pas le firmware officiel en version R48 qui n’est pas modifiable.
La raison de ce que je comprends c’est pour pouvoir désactiver certains protocols, et changer le pin alloc.
=> Est-ce que ca pourrait résoudre mon problème ? et si oui, est-ce qu’on peut le faire en reprenant le code R48 ?

Bonjour et désolé du retour tardif.
J’admets ne pas trop savoir si cela pourra faire un changement notable.
Ma modification a été faite par expérimentation, surtout pour alléger le code et utiliser un arduino nano qui a moins de ressource…mais est donc moins cher et surtout plus structuré pour moi sur des petits projets comme celui-ci.
Après presque 1 an d’absence sur home assistant pour cause de déménagement, je relance mon projet de domotique donc peut-être des modifications dans ce tuto pourraient survenir dans les semaines à venir.