Bonjour, merci pour ce tuto. Je suis en train de tester et j’ai des soucis de fiabilité. J’ai 3 sondes Oregon THGR122NX. Au delà de 3 mètres plus aucune trame n’est décodée, donc question portée bof bof. Mais même en mettant une sonde juste à côté du récepteur j’ai un taux de réussite sous les 50%. Je me demande s’il n’y a pas moyen de rendre le code plus « tolérant » en jouant sur le nombre de bits de préambule ou bien sur les délais? D’autant plus que j’ai mis une led sur la pin logique et je « vois » bien les trames qui viennent des sondes même lorsqu’elles sont éloignées.
Par : DucLeto
Par : Roland
Bonjour Olivier,
je découvre tes explications (billet 1-2-3) avec beaucoup d’attention car je voudrais récupérer les infos de ma sonde THR128 avec mon Arduino Uno.
Malheureusement je suis carrément nul en programmation et ici, je ne trouve que des « morceaux » de code. Je n’arrive pas à mettre tout en place.
Serait-il possible de poster un lien vers le code complet et fonctionnel (qu’il me suffirait de téléverser dans l’arduino) ?
Ceci en attendant d’améliorer mes connaissances…
Merci d’avance et bravo pour tout ce beau travail.
Par : Olivier
Salut,
Normalement tu peux prendre le code du premier article (il est complet) puis ajouter les fonctions de l’article 2 où tu veux dans le code et enfin remplacer ou ajouter celles présente dans l’article 3 … c’est vrai qu’en le disant comme ça, ça fait un peu bordélique … j’essaie de te poster ici rapidement le code complet de l’article 3.
++
Par : Galen
Bonjour,
Bravo pour le boulot réalisé, je ne suis guère calé sur le sujet et je me suis pas lancé encore dans la réalisation de la chose
je me posais une question, j’ai vu ceci http://shop.openenergymonitor.com/rfm12pi-v2-raspberry-pi-expansion-board-433-mhz/
http://wiki.openenergymonitor.org/index.php?title=RFM12Pi_V2#Hacks.2C_Modifications_.26_Extensions
la carte comporte un atmega128, pour renvoyer en serie vers un raspberry pi est ce que cela peut être possible d’utiliser ce hard avec le code de l’article moyennant adaptation ?
je découvre les arduinos mais je pense que c’est jouable ?
le but étant d’envoyer les infos de mes sondees oregon vers emoncms
Merci de vos réponses éclairées
Par : Renaud
Salut,
Merci pour le tuto. J’ai réussi à tout faire fonctionner avec un Compatible Uno (XDRduino) et un récepteur à quelques euros sur Ebay. Ma sonde est une THGR122NX.
Il ne me reste plus qu’à le rendre autonome et à archiver les données.
Encore merci
Par : Renaud
Au fait, je ne vois pas le condensateur sur le schéma. Est-il vraiment nécessaire ?
Par : Olivier
Je t’avoue que lors de mes tests je n’ai pas vraiment vu la différence.
Par : Olivier
De rien
J’emménage bientôt dans ma nouvelle maison et je vais donc tout reprendre ça de plus près.
Je pense faire des versions autonomes également, je mettrai ma solution ici mais si tu avance n’hésite pas à donner des nouvelles
Par : Charly86
Salut,
Merci pour ces articles très intéressants, je les avait mis sous le coude et j’ai pris le temps de les tester aujourd’hui. Aurais-tu la possibilité de poster le sketch complet ? Car jusqu’à la partie 1 et 2 çà fonctionne mais la fonction gotBit() de la partie 3 çà coince chez moi. J’imagine que c’est celle de la classe OregonDecoderV2 qu’il faut modifier ?
seulement la nouvelle variable max_bits que tu préconises n’est pas déclarée, j’ai donc regardé aussi ce qu’elle faisait, mais à part sont affection je ne vois pas à quoi elle sert et quand est testé cette variable ?
J’ai raté un truc ou c’est une coquille ?
Merci par avance pour ton aide
Par : Olivier
Salut,
Bien vu, si je ne dis pas de bêtises il faut le déclarer dans la classe DecodeOOK
class DecodeOOK {
protected:
byte total_bits, max_bits, bits, flip, state, pos, data[25];
[...]
et modifier la condition de sortie du décodeur, et cette partie n’apparait pas … un oubli de ma part. Il faut que je remette la main sur le code complet.
Je le post ce soir ici même.
Par : Olivier
je viens de voir que j’ai fais la même promesse l’année dernière … pas bien … je me m’auto-flagellerai une fois le code en ligne!
Par : Charly86
Ahhh, tu me rassures, je vois qu’il n’y a pas que moi qui peine avec mes lignes codes epparpillés un peu partout, c’est pas bien bouhhhh :-):-)
Merci pour tes éclaircissements, pour le moment je suis passé sur autre chose, mon récepteur doit être pas terrible car je ne vois que 10% de mes sondes passer, c’est pour ça que je voulais essayer la partie 3 avec les autres types de sondes pour vérifier si je les recevais. J’attends donc pour essayer à nouveau.
Pour le code si tu veux, je peux l’héberger sur mon github, je trouve que çà reste quand même très simple et pratique, et de plus on peu tous travailler dessus pour les mises à jour. Bon si tu t’auto-flagelles une fois le code en ligne, je ne suis plus sur de ta motivation ;-);-)
Par : SEB
Bonjour et merci pour ton travail .
Est-il possible d’avoir le code intéral modifié comme tu le dis plus haut stp ?
Merci par avance.
Par : Olivier
Salut,
Merci, oui je prépare un article avec le code intégral et de vrais sondes.
Par : marc
salut ,
Ou peut on trouver le code complet ?
Par : Renaud
Au fait, je ne vois pas le condensateur sur le schéma. Est-il vraiment nécessaire ?
Par : Olivier
Je t’avoue que lors de mes tests je n’ai pas vraiment vu la différence.
Par : Olivier
De rien 🙂
J’emménage bientôt dans ma nouvelle maison et je vais donc tout reprendre ça de plus près.
Je pense faire des versions autonomes également, je mettrai ma solution ici mais si tu avance n’hésite pas à donner des nouvelles 🙂
Par : Charly86
Salut,
Merci pour ces articles très intéressants, je les avait mis sous le coude et j’ai pris le temps de les tester aujourd’hui. Aurais-tu la possibilité de poster le sketch complet ? Car jusqu’à la partie 1 et 2 çà fonctionne mais la fonction gotBit() de la partie 3 çà coince chez moi. J’imagine que c’est celle de la classe OregonDecoderV2 qu’il faut modifier ?
seulement la nouvelle variable max_bits que tu préconises n’est pas déclarée, j’ai donc regardé aussi ce qu’elle faisait, mais à part sont affection je ne vois pas à quoi elle sert et quand est testé cette variable ?
J’ai raté un truc ou c’est une coquille ?
Merci par avance pour ton aide
Par : Olivier
Salut,
Bien vu, si je ne dis pas de bêtises il faut le déclarer dans la classe DecodeOOK
class DecodeOOK {
protected:
byte total_bits, max_bits, bits, flip, state, pos, data[25];
[...]
et modifier la condition de sortie du décodeur, et cette partie n’apparait pas … un oubli de ma part. Il faut que je remette la main sur le code complet.
Je le post ce soir ici même.