Gateway RFLink avec un Arduino Mega 2560 Pro Mini RobotDyn et boitier imprimé en 3D

Lorsque j’avais écrit le premier tutoriel sur la passerelle domotique radio RFLInk, j’avais trouvé une version mini de l’Arduino 2560. A l’époque, j’avais hésité à me lancer dans la fabrication d’une gateway en utilisant ce clone. Il y a deux semaines, lorsque j’ai débuté la nouvelle série d’articles “les découvertes de la semaine“, j’ai débuté la série avec les différentes versions qui existent maintenant. J’en ai profité pour commander la version 3V3 avec un module FTDI du fabricant chinois RobotDyn. Pour ce nouveau projet nous allons aller un peu plus loin et fabriquer un boitier par impression 3D. Nous resterons sur la fréquence de 433MHz en intégrant un récepteur radio Superheterodyne KSA6. C’est la fréquence radio la plus utilisée pour les appareils domotiques en Europe et en France. Si vous habitez dans d’autres pays d’Europe ou dans le Monde, vous pourrez opter une autre fréquence.

Attention, je vous encourage fortement à respecter la législation en vigueur dans votre pays. Certaines fréquences peuvent être réservées aux services d’urgences ou pour des usages militaires. Certains pays tolèrent un usage limité de certaines fréquences (en puissance ou en durée d’émission). Il est préférable de respecter la législation au risque de voir débarquer chez vous des personnes en uniforme :D.

Matériel utilisé

J’ai opté pour le pire scénario lorsque j’ai acheté mon Arduino Mega. J’ai acheté la version 3V3 sans convertisseur Série/USB intégré de RobotDyn  🙄 J’ai préféré acheter la version la moins user friendly, histoire d’essuyer les plâtres :D.

Sauf besoin particulier, pour fabriquer votre Gateway, je vous conseille plutôt d’opter pour la version 5V avec convertisseur FTDI intégré. La carte est légèrement différente (2mm plus longue, l’implantation des perçages de fixation est sensiblement identique) mais sera plug and play pour installer le firmware.

Concernant le reste du matériel, vous aurez besoin :

Comptez un budget d’environ 20€, hors impression du boitier (environ 7.6m, soit environ 60g de PLA ou d’ABS).

Dernière mise à jour des prix le 11 mai 2019 3 h 00 min

Il est conseillé d’utiliser un émetteur Superheterodyn ainsi qu’une antenne amplifiée d’au moins 6dBi pour augmenter la qualité de réception.

Dernière mise à jour des prix le 12 mai 2019 3 h 12 min

Si vous préférez commander depuis Amazon France directement, tout est disponible y compris l’Arduino Mega Pro Mini.

Dernière mise à jour des prix le 13 mai 2019 3 h 01 min

Installer le firmware RFLink sur l’Arduino Mega 2560 Pro Mini

Avant de nous occuper du câblage, il faut d’abord téléverser le firmware. Allez sur la page de téléchargement ici pour récupérer la dernière image du firmware. Le firmware est stocké sur un Google Drive. Si le lien est cassé, n’hésitez pas à me le signaler dans les commentaires.

nodo download firmware rflink

Décompressez l’archive ZIP. Le dossier contient le firmware ainsi qu’un utilitaire pour téléverser le firmware sur l’Arduino. Désolé pour les utilisateurs Mac ou Linux, l’outil d’installation n’est disponible que pour Windows. Si vous êtes dans l’impasse, je peux chercher comment faire sur macOS (et Linux). On devrait pouvoir s’en sortir avec avrdude pour Linux en ligne de commande.

rflink firmware list files

Attention. Installez impérativement le firmware RFLink avant de réaliser le câblage. J’ai rencontré l’erreur avrdude: stk500v2_ReceiveMessage(): timeout au moment du téléversement durant la mise au point du projet… jusqu’à ce que je démonte tout le circuit.

Branchement du module FTDI

Le connecteur FTDI de l’Arduino Mega de Robotdyn n’est pas standard. Il n’est pas possible d’utiliser (directement) le connecteur des câbles FTDI. Comme j’avais acheté le module FTDI de Robotdyn en même temps (moins de 1€ sur AliExpress), le branchement ne m’a posé aucun problème. Il ne faut pas oublier de croiser les broches RX et TX pour que le module FTDI puisse communiquer avec l’Arduino Mega 2560. J’ai branché la broche RST par précaution mais il ne me semble pas que ce soit nécessaire.

Faites également attention à respecter la tension d’alimentation de l’Arduino Mega, surtout pour la version 3V3 ! La carte semble tolérante au 5V mais elle risque de ne pas trop apprécier dans la durée.

Installer le firmware RFLink

Une fois que tout est prêt, branchez l’Arduino sur un port USB et attendez l’installation du drivers. Lancez ensuite le programme RFLink Loader. Sélectionnez le fichier binaire du firmware en cliquant sur Select File. Si l’Arduino n’est pas visible dans la liste, scanner à nouveau après avoir vérifié que le driver soit correctement installé. Enfin cliquez sur Upload/Program Firmware to device. L’opération dure environ 30 secondes. Un bug d’affichage (sur Windows 10) empêche de voir la progression de l’installation.

A la fin de l’installation, une fenêtre vous confirme que tout s’est correctement déroulé. Ouvrez le port série (Serial Port Logging) pour vérifier que tout fonctionne bien. Si c’est le cas, vous pouvez passer au câblage et à l’assemblage du boitier imprimé en 3D.

L’Arduino Mega 2560 Pro Mini n’est pas visible sur le port COM

Si l’Arduino n’est pas visible sur le port COM, c’est probablement que le driver du convertisseur CH340 n’est pas (correctement) installé. Allez dans le gestionnaire de périphérique de Windows pour l’installer manuellement. Vous pouvez également suivre ce tutoriel.

Circuit

Plutôt que de fabriquer un circuit sur un PCB, j’ai préféré opté pour une mini breadboard. C’est moins couteux (en toute logique, vous n’allez fabriquer qu’une seule Gateway RFLink pour votre installation domotique) et plus souple pour ajouter ou remplacer un module radio. En plus, aucune soudure à réaliser, tout le monde peut se lancer !

Module récepteur radio KSA6 ou RXB6 Superheterodyne

Pour câbler le récepteur 433MHz Superheterodyne KSA6 ou RXB6, reliez les broches suivantes

  • GND
  • +5V. Si vous avez optez pour le modèle 5V, vous pouvez utiliser la brocher +5V sur l’Arduino Mega. Si vous avez choisi le modèle 3V3, utilisez la broche d’alimentation 5V présent sur le module FTDI
  • D16 sur la broche DER
  • D19 sur la broche DATA

Pour augmenter la portée de la gateway, je vous conseille d’ajouter une antenne externe avec connecteur SMA. Achetez un connecteur SMA femelle à souder au pas de 2.54 mm qui se fixe très facilement sur une breadboard. Il faut un peu forcer pour l’insérer mais une fois en place, il tient suffisamment pour supporter le poids de l’antenne.

L’antenne externe doit être alimentée avec le +5V de la carte Arduino ou du module FTDI. Reliez la broche GND (masse) du connecteur SMA (broches extérieures) à la broche GND du récepteur radio RXB6 ou KSA6 . Branchez l’antenne (broche ANT) à la broche centrale du connecteur SMA.

Module émetteur radio 433MHz FS1000A

Le module radio FS1000A est directement alimenté par la broche D15 de l’Arduino Mega. Les données sont envoyées par la broche D14. Reliez la broche GND au GND de l’Arduino.

Circuit complet

Voici un schéma d’ensemble qui récapitule le branchement des deux modules radio et le connecteur SMA sur la mini breadboard.

 

circuit mini rflink gateway arduino mega 2560 pro mini robotdyn

Voici quelques photos du circuit pour vous aider à réaliser votre montage

Boitier RFLink mini par impression 3D

Je ne suis pas un très bon designer. Je vous propose ici une forme simple et efficace qui permettra de recevoir l’Arduino Mega 2560 Pro Mini, le circuit câblé sur une mini breadboard, le convertisseur série / USB et l’antenne. Le boitier dispose de deux sorties pour la connecteur micro-USB en fonction de l’Arduino Mega2560 Pro Mini que vous aurez choisi. Normalement, le perçage dans le couvercle est prévu pour recevoir la plupart des antennes externe. Toutefois, si vous avez besoin d’apporter des modifications ou que vous voulez améliorer le boitier, vous trouverez les fichiers Fusion 360 (f3d), STEP et IGES sur Thingiverse et Cults3D.

mini rflink arduino mega 2560 pro robotdyn 433mhz

Réglages d’impression utilisés

J’ai utilisé une imprimante 3D Anet A8 pour fabriquer le prototype en imprimant directement en USB depuis Cura 3.1.1 avec les réglages suivants :

  • Matériau utilisé : PLA orange diamètre 1,75mm de la marque BQ
  • Température de la tête : 200°C
  • Préchauffage : 60°C
  • Impression sur plaque de verre Néoceram 4mm (résistant à la chaleur)
  • Accrochage : spray coiffant
  • Couche d’adhésion : Skirt (filet d’amorçage avant l’impression)
  • Epaisseur de couche : 0.2mm
  • Remplissage : 20%
  • Vitesse d’impression : 90mm/s
  • Epaisseur des parois : 0.8mm

Pièce Rendu 3D Temps d’impression

Besoin en filament

Boitier Boitier mini rflink gateway arduino mega 2560 pro mini ftdi version 3h

5,8m / 46g

Couvercle   41 minutes

1,5m / 12g

 

boitier case rflink arduino mage 2560 pro mini

Assemblage du boitier imprimé en 3D avec l’Anet A8

Rien de bien compliqué pour l’assemblage. L’Arduino Mega vient se placer dans le fond du boitier. Il est maintenu en place à l’aide de deux ergots. Le module FTDI prend place à la verticale sur le coté de l’Arduino Mega. Enfin la mini breadboard vient prendre place au dessus de l’Arduino Mega.

mini rflink gateway arduino mega 2560 pro robotdyn boitier 3d printed

Vissez l’antenne externe puis refermez le boitier avec le couvercle. Le couvercle vient juste s’emboiter dans le boitier.

rflink arduino mega 2560 pro mini robotdyn superheterodyne 433mhz ksa6 rxb6

Voilà, c’est terminé. Il ne vous reste plus qu’à suivre les tutoriels précédents pour intégrer vos appareils domotiques compatibles à votre serveur domotique Domoticz, Jeedom, Home Assistant (pour ne citer qu’eux).

rflink gateway arduino mega 2560 pro mini robodyn loader debug

Il reste encore quelques petits ajustement à faire sur le boitier, n’hésitez pas à reprendre le modèle 3D pour l’adapter à vos besoins.

Inscrivez-vous à la newsletter hebdomadaire

Aucun spam et aucun autre usage ne sera fait de votre email. Vous pouvez vous désinscrire à tout moment.

Promos à ne pas louper

23
Poster un Commentaire

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

  S’abonner  
Notifier de
Yannis

Bonjour, Tout d’abord, un grand merci pour ce super tuto bien détaillé ! Je rencontre un problème lors du versement du frimware sur l’Arduino. J’ai l’erreur suivante lors du versement : avrdude.exe: stk500_2_ReceiveMessage(): timeout Je n’ai pourtant pas câblé le circuit au préalable. Je dispose d’un arduino mega 2560 pro mini et d’un FTDI (https://www.dx.com/p/ftdi-basic-program-downloader-usb-to-ttl-ft232rl-for-arduino-2054240). J’ai bien croisé RX et TX entre l’arduino et le FTDI. Les 2 LEDs power sont bien allumées et les led RX du FTDI et TX de l’arduino clignotent en même temps avant de mettre le message d’erreur … As-tu une piste pour que je… Lire la suite »

dixsept

Bonjour,
merci pour ce tuto très intéressant, je vais me lancer dans cette réalisation.
Je comprend bien que l’utilisation d’une antenne va améliorer la réception. Pourquoi ne pas faire de même pour améliorer le signal reçu par les périphériques (capteurs, etc…)

Bonjour dixsept. Oui absolument

Migui Pda

Bonjour, wouaw, je l’attendais ;-), et ce fut rapide merci. Trois questions : 1) vous mentionnez qu’il ne faut pas souder. Je me trompe ou il faut quand même bien souder les pinsheaders sur les côtés de la carte 2560. 2) en vous priant de pardonner mon ignorance sur l’usage du RFLink puisque je le découvre, lorsque je vous lis ici le reprenant comme Gateway, cela veut-il dire qu’il est tout à fait autonome et peut donc être simplement alimenté par une source électrique USB sans pour autant être connecté à un système (ordinateur, raspberry ou autre) sur lequel tourne… Lire la suite »

Bonjour Migui. Merci beaucoup :D. 1 .Oui, il faut effectivement souder les broches sur l’Arduino Mega, il n’y a de version avec pinheader soudé. 2. Oui, il faut connecter la passerelle au serveur domotique. Elle communique avec ce dernier via le port USB. Si ce n’est pas possible de le connecter directement au serveur, on peut aussi la rendre accessible depuis le réseau local en utilisant le projet ser2net (serial to network). On pourra le faire avec un Raspberry Pi Zero par exemple. En agrandissant un peu le boitier, tout le monde devrait tenir dedans. Comme ça la RFLink sera… Lire la suite »

Migui Pda

Paf, j’ai sauté le pas …
Avec une réduc de 3,32 euros en plus parce que je viens de réapparaître chez Aliexpres 😉
Du coup, j’ai la carte Mega 2560 (embed) avec une mini breadboard et le connecteur SMA pour 7,30 euros… que du bonheur.
Quand à l’antenne et le RXB6… ils sont en recommande chez Baangood… va donc falloir attendre.

Une fois ce gateway assemblé, il sera alors couplé avec mon RPi sur lequel va tourner OpenJarvis…
Et ce plugin devrait alors m’aider à communiquer avec le RFLink : https://www.openjarvis.com/plugins/domotique-433mhz

Ca va mettre du temps, mais je pense que ça va être intéressant 😉

Arnaud V

Bonjour super tuto je viens de recevoir une partie du matériel pour monter la passerelle j’ai donc essayé juste en mode récepteur mais aucun signal n’apparaît sur le logiciel alors que j’ai essayé avec une bread board et une mini mais aucun signal arrive. je suis avec un arduino megacomment image

Bonjour Arnaud. D’après la photo, il me semble qu’il y a une erreur de cablage. Il faut considérer la partie droite et gauche comme deux circuits distincts. Comme vous n’utilisez pas d’antenne externe, il faut déplacer le 5V (le fil rouge logiquement) à gauche (en haut sur la photo) sur la broche +5V et ça devrait fonctionner.

Arnaud V

Bonjour en fait j’ai refait tout le cablage correctement avec une antenne et j’ai du enlever le cablage der vers la pin 16 pour que cela fonctionne correctement car des que je câble cette partie là je ne reçois plus les trame et des que je l’enlève tout fonctionne parfaitement.merci pour tout

DOE John

Bonjour,
Avez vous un lien sur amazon pour la carte arduino version 5V avec convertisseur FTDI intégré que vous préconisez?
Merci d’avance.

Bonjour John. Non malheureusement, je l’ai trouvé uniquement sur AliExpress pour le moment http://s.click.aliexpress.com/e/6yFeieM

Migui Pda

Bonsoir, je vais placer mon commentaire ici, même si ce lien parle de Mi Flora (votre dernier article) parce que je pense que ma remarque est plus liée à RFLink. A moins que je ne m’abuse, parce que j’attends toujours les pièces pour faire le mien grâce au présent article : est-ce que RFLink est bien bidirectionnel (si on y ajoute ledit émetteur ? Toujours en “fouinant” dans l’attente d’avancer de mon côté, je suis “retombé” sur ce OpenMQTTGateway qui semble élargir l’usage que fait déjà le RFLink. Par manque de connaissance personnel quant à l’usage possible du RFLink, dont… Lire la suite »

Bonjour Migui. Oui absolument. C’est un projet complémentaire très intéressant à tester :D. D’ailleurs pour le Zigbee et tous les produits Xiaomi, il y a aussi celui-ci https://github.com/AndrewLinden/xiaomi-zb2mqtt
RFLink possède encore de gros avantages :
– Il est plus ancien donc beaucoup d’articles, tutoriels, entraide, pris en charge par la plupart des serveurs domotiques
– Il supporte plus de fréquences radio
– Beaucoup d’accessoires domotiques ont été intégrés (apprentissage des codes pour chaque commande disponible), c’est un gros travail

A très bientôt

Yohann Streibel

Bonjour, J’ai suivi ce tutoriel à la lettre et acheté les composants suivant : – Mega 2560 PRO (Intégrer) CH340G/ATmega2560-16AU, avec mâle pinheaders. Compatible pour Arduino Mega 2560. – 433Mhz RF Transmitter With Receiver Kit For Arduino ARM MCU Wireless – Superheterodyne 3400 Wireless Receiver Module With 433RF Transmitter Board Après téléversement du firmware RFLink_v1.1_r48 sur la Mega et assemblage du circuit comme indiqué sur l’image “Circuit complet” (cf photos, la couleur des cables a été respecté), je ne reçois aucune trame même en ayant utilisé un autre Arduino + émetteur 433 avec un sketch d’émission! Que puis je faire… Lire la suite »

Bonjour Yohann. Oui le projet est fonctionnel. Comme c’est indiqué sur la page du projet, certaines trames radio peuvent ne pas être détectées. Quel appareil radio utilisez vous ?

Yohann Streibel

Coté matériel, rien à dire. Plusieurs pistes :
– Vérifier le câblage et les connecteurs.
– Tester avec un autre appareil radio. Un détecteur de fumée…
– Le récepteur radio est défectueux

Yohann Streibel

Bon, j’ai enfin réussi à récupérer des trames de sondes de temperature et de carrillon sans fil. Pour se faire, il faut bien enlever le cable DER du Superheterodyne vers la pin 16 du MEGA.

Merci pour votre réactivité!
comment image

Génial, merci beaucoup pour le retour ! Avec plaisir. A bientôt j’espère pour un autre projet.

Ah, je pense avoir trouvé ! La télécommande que vous utilisez est une télécommande destinée à piloter un système d’alarme. Les codes radios ne sont pas envoyés “en clair”. Je dois encore vérifier mais je pense que RFLink ne peut pas décoder. C’est une bonne chose car n’importe qui pourrait désactiver votre alarme (ou faire n’importe quoi d’autre) avec un ordi portable…

Yohann Streibel

Il semblerait normal que les trames de la télécommande soient chiffrés
mais je devrais quand même les voir passer! Non? De plus, lorsque
j’utilise mon autre Arduino avec un émetteur en envoyant des trames
toutes les secondes, je ne vois rien passer non plus !

manu

Bonjour. Est-ce que quelqu’un aurait par hasard des retours sur la mise en place de RfLink en 866Mhz ? Le seul tranceiver apparemment supporté est sacrément cher au regard du reste (surtout que je comptais utiliser aussi un Mega 2560 Pro mini de Robotdyn), et avant d’investir je me demandais si certains ont tenté le pilotage de commandes de chauffage DeltaDor (X2D) avec ? Si il y a des retours promis je documenterais tout le projet sur Github (je voudrais faire un pilotage GSM, donc ne pas passer par une box pour commander le RfLink mais directement via série depuis… Lire la suite »

Domotique et objets connectés à faire soi-même