Ce post est le quinzième d’une liste de tutoriels sur le raspberry PI, cliquez ici pour accéder au sommaire ! 😀
Suite à nos précédents tutos sur le Raspberry PI et la domotique contrôlée par radio (et notamment le tuto 12), certains d’entre vous m’ont demandé si il n’était pas possible de se passer de prises Chacon, d’autres m’ont demandé si des multiprises existaient sur le même principe, quant à moi je souhaitais de débarrasser de Chacon pour diverses raisons :
- Je voudrais, sur le long terme, personnaliser le protocole radio (inclure une notion d’état de la prise, en retour de consommation d’énergie etc..)
- J’aimerais construire de A à Z mon système domotique dans une optique pédagogique (100% DIY)
- J’aimerais ajouter quelques gadgets dans ma prise (pourquoi pas un capteur de température ou de consommation de courant ? :D)
C’est pourquoi nous allons aujourd’hui construire notre propre prototype de prise radio (pouvant facilement être transformée en multiprise) commandée par le Raspberry PI
Je parle de “prototype” pour une bonne raison, bien que le montage fonctionne parfaitement, il peux être amélioré au niveau du “packaging” (boitier).
Afin de vous motiver un peu (car je vous sent mous aujourd’hui :p), wala la petite vidéo de démo du prototype (avec quelques explication sommaires pour vous mettre en jambe)
Notez bien que vous devez au moins avoir lu le tuto 12 pour comprendre celui ci 🙂
Vous êtes chaud patate pour commencer ? Voyons voir un peu le matos à se procurer 🙂
Le matériel
Pour aller plus loin, il vous faudra les curieuses bêbêtes suivantes :
- Votre télécommande chacon OU votre rpi configuré comme dans le tuto 12
- 1 carte arduino duemilanove(c’est la moins chère 15€)
- 1 Micro contrôleur ATmega 328-pu avec bootloader inclus(2.55€) (nb:le bootloader inclus est important, si vous achetez une puce vierge par mégarde, il faudra la flasher vous même)
- 1 Résonateur ZTT 16.00mx(1.11€ les 5)
- 1 Résistance 1.27Ω (brun rouge violet gris rouge) (enfin c’est ce que j’ai pris mais il semblerais qu’une 10k convienne mieux.
- 1 Récepteur RF 433,92 mhz(1.28€ avec l’émetteur dont on ne se servira pas ici)
- 1 Carte relais 5V 1 canal(1.26€)
- 1 LED quelconque et sa résistance associée (j’ai pris une led au hasard + résistance 8.21MΩ (gris rouge brun doré) ces composants sont optionnels et servent juste de repères visuel lors du fonctionnement 🙂
Notez bien que vous n’aurez à Acheter la carte arduino qu’une fois, elle nous servira de programmateur pour construire toute nos futures prises, de même, les résonateurs sont par lots de 5 et nous n’en avons besoin que d’un par prises.
Vous en aurez donc environ pour 6€ par prises radio par la suite, notez que je ne compte pas l’alim (un vieux chargeur de portable récupéré fera l’affaire) ni le boitier (bah oui la vas falloir se dépatouiller avec un Tupperware qui traine XD), nous ne faisons pas vraiment ça pour le prix mais il faut souligner qu’on y gagne quand même par rapport au commerce (d’autant qu’il est possible de faire des multiprises avec ce montage et donc de réduire encore le cout par prises, on peux aussi remplacer/supprimer certains composants en bricolant (suppression du résonateur,remplacement de l’atmega par une Attiny etc..) mais je vais pas tout vous faire non plus :p).
Attends attends…C’est quoi ton Arduino la ?
Dans ce tuto nous introduirons les carte de programmation “Arduino” et leurs micro contrôleur Atmega qui nous permettrons de créer tous nos périphériques à bas cout sans avoir à acheter un raspberry à chaque fois ^^.
Petite explication rapide sur l’arduino donc :p
L’arduino (souvent nommé ardui) est une carte électronique très similaire au raspberry PI, à savoir qu’elle peut gérer des entrées sorties GPIO et contenir un code (en C++) pour réagir en fonction de ces gpio, cela dit, il y a quelques différences importantes :
- L’arduino coute 16€ pour son modèle le moins cher (duemilanove), le raspberry pi coute 30€
- L’arduino comprends 23 gpio digitaux (donc plus que le rpi), de plus, l’arduino à des 7 gpio analogiques (peux prendre d’autres valeurs que 0 ou 1), le rpi n’en possède pas
- L’arduino ne peux contenir qu’un code C++, le raspberry Pi peux contenir un système d’exploitation(ex : raspian…)
- L’arduino est en temps réel, pas le raspberry PI
- L’arduino (en fonction des modèles) ne contient pas de port Ethernet
- Le cerveau d’un arduino est la puce Atmega328, qui avec un peu d’astuce, peut être utilisée toute seule dans nos montage, cette puce ne coute que 3€ et est de plus petite taille que l’ardui.
Vous l’aurez compris, l’arduino est une carte de bas niveau, très rapide, moins chère, réductible à une puce et avec plus de gpio que le rpi ce qui en fait un élément parfait pour créer tous nos périphériques radio (prise radio, sonde de température radio, capteur d’ouverture radio etc…).
Les arduino (ou plutôt a terme : les atmega 328) seront les muscles de notre domotiquemaison
En revanche l’ardui n’a pas les capacité de traitement du rpi, de plus le rpi est plus haut niveau et gère en natif l’Ethernet, la gestion d’un os etc…
le rpi sera donc le cerveau de notre domotiquequi commandera et sondera les muscles arduino.
Le fonctionnement de la prise
Nous allons refaire le tutoriel #12 : allumer/éteindre une prise à distance avec le raspberry PI,sauf que cette fois ci, la prise sera “maison”.
Concrètement vous allez appuyer sur un certain bouton de votre télécommande chacon (ou envoyer le signal depuis votre rpi)
Ce signal vas être capté par le récepteur RF relié à l’arduino, l’arduino vas vérifier que le signal parle bien de lui (à son code récepteur) qu’il provient bien de la télécommande (a le bon code émetteur) et a un état on ou off (afin de savoir ce qu’il doit faire).
L’arduino vas alors envoyer 0 ou 1 a la carte relais, celle ci vas donc “ouvrir” ou “fermer” le circuit classique de la prise et laisser passer ou non le courant.
OUI MAIS !!!
Comme les cartes arduino c’est un peu gros et que c’est un peu cher d’en mettre une dans chaque prises, on ne vas utiliser que leurs micro contrôleur : l’Atmega328, qui lui coute 3€ et fait la même chose que l’arduino.
Évidemment comme c’est une puce nue, ça vas être un peu moins rigolo a programmer qu’une carte ardunio (qu’il suffit de brancher sur le port usb du pc), on vas donc se servir de la carte arduino pour programmer les puces Atmega que l’on inclura dans chaque prises 🙂
Ça parait un peu fou comme ça pour les novices électroniques que nous sommes mais vous allez voir, c’est en fait très simple 🙂
La programmation de la puce : branchements
Avant tout, téléchargez et installez l’IDE (environnement de développement Arduino) sur le site d’arduino.
Voila le schéma permettant de programmer une puce atmega à partir d’une carte arduino
Notez que sur le schéma j’utilise ce qu’on appelle une “BreadBoard”, c’est une plaque en plastique qui permet de tester des circuits sans avoir à souder juste en plantant des fils dans des trous, les trous sont reliés de manière horizontale entre eux, sauf pour les lignes bleu et rouges (utilisée pour l’alimentation) qui eux sont verticaux.
Je vous conseille vivement l’achat d’une breadboard, ça ne coûte rien et c’est quasi indispensable pour tester les circuits dans de bonnes conditions (je m’en veux un peu de ne pas vous en avoir parlé avant)
- Les fil rx et tx sont ceux qui envoie le programme à l’Atmega
- La puce Atmega originellement implantée sur l’Ardunio doit être dé-clipsée sinon c’est elle qui sera programmée
- L’ensemble du circuit doit être alimenté en 5V, ici on utilise l’alimentation de l’arduino (conseillé)
- L’atmega doit être alimentée (5V + GND) des deux cotés aux bornes indiquées
- Le pin Reset de l’Atmega doit être relié au reset de l’arduino comme indiqué sur le schéma
- Le pin Reset de l’Atmega être relié au 5V via une résistance 1.27Ω (brun rouge violet gris rouge) comme indiqué sur le schéma
Une fois le circuit branché et alimenté vous pourrez lancer l’IDE arduino et programmer la puce comme si elle se trouvait sur la carte arduino.
Le code
Commencez par choper les sources du programme ici :
http://idleman.fr/ressources/PHP/priseMaison/priseRadio.zip Premièrement, allez dans votre repertoire arduino puis dans \libraries\ et créez un dossier nommé : EEPROMAnythingDedans vous placerez le fichier EEPROMAnything.h Nous venons d’inclure une nouvelle librairie à l’arduino IDE, celle vi vas nous permettre de gérer l’EEPROM (petite mémoire interne de l’atmega dans laquel nous allons stocker nos données)
Ensuite, lancez l’IDE (arduino.exe) : il ne vous reste qu’a copier le programme priseRadio.txt ci dessous dans l’ide, et cliquer sur télé-verser
nb: En fonction de l’atmega programmée, vous aurez peut être a changer le modèle de la carte dans l’ide, ex : j’ai une carte arduino duemilanove, mais mon atmega acheté est un uno, du coups lors du télé versement j’ai une erreur du genre “invalid sync blablabla”, donc je sélectionne uno dans le menu :
Et je retente le coup :p
Une fois la puce programmée on vas pouvoir passer a notre vrai branchement de prise radio final (fiou !! ^^, vous verrez avec le temps ça parait enfantin)
Le montage finale : branchements
La je ne peux pas faire explication plus détaillée (et plus débordante) que ce schéma… 😀
En gros l’Atmega est toujours relié au résonateur (son horloge) et est alimenté des deux coté en 5v comme sur le montage précédent.
On à en plus branché trois composant sur l’Atmega : une led qui vas clignoter quand la prise recevra un signal, afin de ne pas griller la led, on rajoute une résistance (la résistance est a définir en fonction de la led) notez bien que led+ résistance sont optionnels et ne servent que pour avoir un visuel des signaux reçus.
On ajoute à ça une carte de réception radio 433 mhz qui vas capter les signaux radio et les envoyer à l’Atmega par le pin 9, cette carte radio est évidemment alimentée en 5v
On ajoute enfin une carte relais qui vas recevoir un ordre de l’Atmega part le pin 10 quand le signal reçu sera le bon, la carte relais vas alors fermer le circuit de droite (lampe + prise) ce qui vas allumer la lampe. Evidemment, cette carte aussi est alimenté en 5v.
Attention :Faites attention au sens de l’Atmega, vous pourrez vous repérer au petit creux rond en haut de la puce
nb: Les pattes extérieures du résonateur ne sont pas polarisées donc vous pouvez les intervertir par rapport au schéma, en revanche les pattes de la led le sont, donc si votre led ne s’allume pas, c’est peut être que vous vous êtes loupé de sens 🙂
L’utilisation
Le programme se comporte de la façon suivante :
Le tout premier signal au protocole home easy envoyé à la prise sera enregistré dans celle ci et deviendra le signal de référence pour ouvrir ou fermer le relais de la prise, il est donc nécessaire d’envoyer ce signal le plus rapidement possible après la mise en route du montage final, car un signal voisin pourrait vous piquer la place.
Actuellement, un seul signal peut être enregistré et vous n’avez droit qu’a un seul essai (bien que le matériel puisse en mémoriser beaucoup plus, le code doit être amélioré).
Lorsque la prise reçoit un signal correspondant a son signal de référence, la led clignote 10 fois très rapidement, et le relais change d’état
Lorsque la prise reçoit un signal non correspondant a son signal de référence mais au protocole home easy, la led clignote 1 fois lentement.
Les améliorations possibles
- La puce :En bidouillant un peu, on peux remplacer l’AtMega328 par un Attiny85, qui est un peu moins cher et bien plus petit, donc gain de place dans la prise et rapinage de quelques centimes à l’achat.
- Toujours la puce :L’Atmega328 possède une horloge interne, il est donc possible de se passer du résonateur, cependant il faut pour cela bidouiller un peu (je vous laisse chercher l’astuce :p) et vous passerez de 16mhz à 8mhz de fréquence d’horloge, donc ça sera moins réactif.
- La diode : Une diode RVB (pouvant s’allumer en rouge, vert ou bleu) serai plus appropriée car nous pourrions associer une couleur à chaque état (attente d’un signal, enregistrement d’un signal, refus d’un signal etc…)
- Le packaging :pas encore d’idées précise de ce côté la, si quelqu’un a des bons prix de boiter personnalisables, qu’il se manifeste ^^, si vous devez bricoler ou faire de la récup, évitez le bois (qui brûle trop bien en cas de court circuit) et le métal (qui conduit, donc risque de court circuit/électrocution) préférez le plastique (ou éventuellement le verre si vous voulez faire quelque chose d’artistique), un Tupperware un peu rigide et une rallonge coupée en deux me parait sensé, vous avez aussi l’option de l’imprimante 3d mais il faut en avoir une sous la main.
Notez que vous pouvez aussi inclure votre montage dans un boitier de ce genre ça fait plus pro (merci à Placto pour l’idée) - Le code :Vous aurez peut être noté que contrairement aux prises chacon, notre prise n’a qu’un mode “apprentissage” et il est très restreint, petite flemme de ma part, c’est pourtant très simple à ajouter, il faudra que je m’y mette quand j’aurais une petite seconde 🙂
- L’objet :En modifiant légèrement le code et en prenant une carte relais avec plus de canaux, vous pouvez faire une multiprise radio, ce qui sera plus rentable car pour disons 8 prises, vous n’aurez besoin que d’un atmega, un récepteur, un résonateur, une alim etc…
- Le protocole :maintenant qu’on a notre protocole identique à celui de chacon, pourquoi ne pas ajouter quelques fonctions comme une notion de retour sur l’état de la prise, ou même la consommation de la prise, sa température, la possibilité de faire varier la lumière, etc… ?
- L’alimentation : il faudrait trouver une alim pas chère pour le système, mais ne faites pas comme moi, pour ces choses la : ne commandez pas chinois :p
Si vous avez des problèmes de portées, de gros parasites, ou de mauvaise communication, pensez a faire ces deux choses :
- Prendre une alim externe pour les cartes radio et les l’alimenter au maximum de ce qu’elles sont capables de faire (cf la clause “voltage max” de fiche technique, souvent c’est entre 5 et 12V)
- Souder un fil conducteur de 17.3 cm a l’émetteur et au récepteur pour servir d’antennes.
Avec ces deux points, vous pouvez passer de quelques centimètres à plusieurs centaines de mètres de portée, la différence est vraiment flagrante.
salut super tuto
suposition d un noob
dit par contre pour le 5V pouvait on l alimenter par 5V/230V
directement dans la prise
perso avec un capteur de niveau un relais 12/230 je gere le niveau de mon aquarium
( la pompe de remonter est en 220 et ca marche bien )
Si ta question est “peux t’on alimenter le circuit avec du 220 V direct” la réponse est : non surtout pas, tu vas tout cramer (et je ne parle pas que du circuit).
En revanche si la question était “peux t’on se servir d’un transformateur 220v vers 5v pour alimenter le circuit” la oui tu peux le faire, c’est même une bonne solution, c’est pourquoi je parle d’utiliser des chargeurs de portable dans le tuto (qui sont des transfos 220v vers 5v):)
Bonjour,
pour faciliter l’intégration d’une alimentation 220VAV/5VDC, je vous fait remonter l’objet de mes recherche 🙂
– Un chargeur iphone de dernière génération. (Évidement a démonter et à modifier légèrement.)
_retrait du port USB et soudure du 5V puis MASSE vers ATMEGA, MODULE RF et carte relais.
_retrait des deux broches alimentations 220VAC pour enclipsage avec connecteur WAGO ou domino.
CORDIALEMENT CHRIS
nota : : IMAGE CHARGEUR DÉMONTER
Bonjour IDLEMAN,
Avant tout je te félicite pour ton partage de connaissances avec des nuls comme moi.
Je ne sais pas si je suis dans la bonne section mais HELP ME !!!!! Please.
J’essaye de suivre ton tuto avec un attiny 85. Installation du boot loader ok. J’ai essayer le blink la led clignote bien.
Mais lorsque je veux téléverser le ton sketch, j’ai une erreur de sérial
Peut tu m’aider STP, je ne connais rien en programmation.
D’avance mille merci.
Flowpack 🙂
D:\Documents\Arduino\Prise_Radio\Prise_Radio.ino\Prise_Radio.ino.ino: In function ‘void setup()’:
Prise_Radio.ino:40: error: ‘Serial’ was not declared in this scope
Serial.begin(9600);
^
D:\Documents\Arduino\Prise_Radio\Prise_Radio.ino\Prise_Radio.ino.ino: In function ‘void loop()’:
Prise_Radio.ino:61: error: ‘Serial’ was not declared in this scope
Serial.println(“Aucun signal de référence dans la mémoire interne, enregistrement du signal reçu comme signal de réference”);
^
Prise_Radio.ino:67: error: ‘Serial’ was not declared in this scope
Serial.println(“Signal correspondant”);
^
Prise_Radio.ino:83: error: ‘Serial’ was not declared in this scope
Serial.println(“Signal inconnu”);
^
D:\Documents\Arduino\Prise_Radio\Prise_Radio.ino\Prise_Radio.ino.ino: In function ‘void listenSignal()’:
Prise_Radio.ino:122: error: ‘Serial’ was not declared in this scope
Serial.println(“latch 1”);
^
Utilisation de la bibliothèque EEPROM version 2.0 dans le dossier: C:\Users\Flop\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.14\libraries\EEPROM
Utilisation de la bibliothèque EEPROMAnything prise dans le dossier : C:\Program Files (x86)\Arduino\libraries\EEPROMAnything (legacy)
exit status 1
‘Serial’ was not declared in this scope
@gat Où peut on trouver un capteur de niveau ?
Par exemple http://www.lextronic.fr/P1789-capteur-de-niveau-deau-nf.html
Perso. Le relais 12/5 v plus capteur 10euro environ j ai connecter le toud à une prise femelle histoire de pas couper le fil de la pompe de remonter
Il y en a aussi sur ebay pour pas très cher : http://www.ebay.fr/itm/PP-Liquide-Capteur-De-Niveau-Deau-Horizontal-Flotteur-Switch-Down-Pr-Tank-Blanc-/170876031133?pt=FR_YO_MaisonJardin_Bricolage_ElectroniqueComposants&hash=item27c901509d
Merci gat et Idleman. C’est parfait !
Quatre de ces capteurs peuvent donner une bonne idée du niveau d’eau dans une cuve. Reste à trouver le bon montage qui avec un Arduino ou peut-être un réseau 1-wire enverra l’information sur un site web.
Ah enfin 🙂
Bon, j’ai hâte de tester le montage (Le jour où je reçois enfin une de mes 3 commandes de câbles mâles …)
Joli travail en tout cas !
Niveau optimisation, je valide pour le ATtiny85. Actuellement pour une prise unique, l’atmega fait un peu overkill, j’ai un peu l’impression qu’on nuke une mouche avec toutes ces pattes inutilisées.
Pour l’optimisation de l’alim, tu as pu lire les idées de Sky99 sur pcinpact ? Car mine de rien, on se retrouve avec une GROSSE prise actuellement.
Mais quoi qu’il en soit, félicitation ! Superbe tuto encore.
Oui l’ATmega est sur-dimensionné dans ce circuit, mais je l’ai utilisé pour plusieurs raisons :
1) Je ne voulais pas passer direct du rpi a l’attiny et perdre les lecteurs qui arrivent encore à me suivre (l’attiny etant un peu plus champ a programmer avec l’ide arduino)
2) Je voulais faire découvrir l’arduino et l’atmega a ceux qui ne le connaissent pas encore étant donné son potentiel
3) Je voulais me laisser la possibilité d’ajouter pas mal de gadget sur ma prise (capteur de température, consommation de courant, variateur, relais radio …) qui risque de prendre plus de pin
4) J’ai grillé mon attiny85 en faisant des tests et j’avais la flemme d’en attendre un autre
Pour ce qui est de l’alim, sur pc impact ils ne parlent que de batteries non ? Ce n’est pas très interessant pour un capteur allumé 7/7j non stop, changer les piles de toutes tes prises tous les 4 matins c’est un peu dommage…
Concernant la taille par contre je ne suis pas d’accord, je montre le montage sur une breadboard, mais soudé à une plaque pcb, ça fait même pas le quart de ma main, en y ajoutant un chargeur de portable la taille totale fait environ la moitié de celle d’une prise chacon.
Merci pour tes réponses.
Pour la taille, ok, je ne réalise peut être pas en effet 🙂 Vu que je suis dans une logique de réduction (parce que si y’a trop de gros trucs partout, madame va râler …), j’essaye d’en faire un point crucial. Il faudra que je teste par moi même de toute manière.
Par contre, j’ai un peu de mal à avoir un esclave branché 24h/24, ça fait vite pas mal de prises utilisées par les capteurs.
Dans le cas d’une prise multiple commandée par le raspberry, okay, pas de soucis. Mais si on élargit ton concept (ce que j’ai envie de faire :p) à des esclaves chargés de piloter une sonde (température, pression, effet de hall, ou whatever), là une petite batterie peut faire l’affaire non ? Même si il faut la recharger tous les x mois ( ce qui en soit ne me dérange pas).
Sinon, pour ce qui est du mode apprentissage, pourquoi ne pas mettre un bouton qui du coup relance le mode apprentissage quand il est pressé ?
ça ne prend pas de place, et ça permet de relancer le mode apprentissage facilement.
Inconvénient : ne pas laisser à porter de toutes les mains :p
Vivement la suite !
La série de tutos vas aussi s’orienter vers différent types d’esclaves, j’ai déjà le prototype de sonde radio (sur le même principe atmega + émetteur radio + capteur ds18b20) mais perso je suis assez anti-piles, sur le long terme ce n’est ni pratique, ni économique, ni écologique.
Après je peux comprendre qu’on ai pas de prises secteur partout dans sa maison, mais dans ce cas je préfère encore utiliser une petite plaque solaire avec batterie de stockage (quitte a augmenter un peu le coût).
Après c’est une question de choix personnel, effectivement si tu optimise bien ton circuit et ton code (que tu gère la veille, réduire le nombre de composant etc…) tu n’aura pas à changer les piles souvent.
Pour le mode apprentissage, j’avais mis un bouton à la base, mais pour les besoins du tuto, j’ai voulu simplifier le circuit (j’ai failli virer la led aussi) histoire qu’il soit plus simple à comprendre :), après c’est une modif à faire dans le code et 1 bouton à ajouter donc ceux qui veulent peuvent facilement mettre ça en place 🙂
Tu fabriques toi-même tes PCB?
j’achetes des plaques de prototypage sur ebay, comme je n’ai pas besoin de construire à la chaine c’est amplement suffisant 🙂
Hello champion,
Un beau tuto que tu nous présentes là ! Vu que j’ai pas mal de matos chacon ça m’intéresserait de poursuivre dans ta voie 😉 L’idéal serait d’intégrer à ta prise un convertisseur 220VAC en 5VDC pour pouvoir alimenter de manière propre l’Atmega !
Une remarque : je ne suis pas sûr que tu puisses supprimer ton résonateur car pour la radio tu as besoin de timing bien précis et l’oscillateur interne ne l’est pas trop… Après si c’est pas soucis d’économie d’énergie, tu dois pouvoir remplacer ton résonateur 16Mhz par un plus petit (8/4/2 Mhz ?).
Pour le boitier, la meilleure piste en terme de sécurité esthétique serait vraisemblablement celle de l’imprimante 3D… Espérons que nos confrères du labx la termine vite !
Je suis totalement d’accord pour le convertisseur, malheureusement je ne trouve rien qui ne soit pas hors de pris ou qui ne fasse pas sauter mes plombs (cf la dernière photos d’une alim chinoise bas prix que j’avais essayé), si tu a une idée low cost dans ce sens tu me sauverais la vie, pour le moment à part faire de la recup de chargeur de portable je vois pas :p
Ce n’est pas toi qui me disais que l’horloge interne était en 8mhz ? Dans ce cas je ne vois pas l’utilité d’en prendre un plus petit externe puisque ca sera la même chose non ? Après je suis d’accord que pour la radio mieux vaut mettre le paquet question précision, mais j’aimerais bien tester voir si on peux s’en passer quand même histoire d’en être certain… tu pourra m’expliquer la manip que tu as faite sur le bootloader à al prochaine session du lab ?
Oui une imprimante 3D serait le top, mais bon c’est tellement chiant d’en trouver une qui fonctionne que ça prend certainement moins de temps de bricoler un tupperware ou des plaques de pvc (après tout, ya juste à faire un cube en plastique ^^)
Yop, j’ai trouvé ça pour l’horloge interne :
http://oddwires.blogspot.fr/2012/06/burning-bootloader-into-bare-atmega328.html
Je teste mais j’ai du mal à trouver où ça déconne…
A mon avis il faut aussi changer des paramètres dans TOOLS/PROGRAMMER mais il en parle pas (un truc du genre AVR) … 🙁 Je vais essayer toute les options :p puis si ca fume tant pis!
EDIT : J’ai compris où ca merde… Je vais attendre d’avoir un second ATM…
J’avais pas bité qu’il en fallait un pour programmer l’autre (je pensais pouvoir le faire direct comme quand on upload un prog dessus)…
En fait faut programmer celui de la UNO avec le prog “ArduinoISP” qui est fourni.
Ensuite tu cables ta board, dans IDE tu selectionnes “ATmega328 on a breadboard (8 MHz internal clock)” (celui que tu as créé dans Hardware).
Puis tu peux graver le BOOTLOADER en utilisant le programme de la première …
Bon c’est plus compliqué que de changer un ADCON=0b0000 en ADCON=0b0001 dans un pic 😛 mais ca se tente quand même 😀
Effectivement ça semble être un bon tuto pour envoyer le bootloader sur une puce vierge ET en profiter pour utiliser l’horloge interne de 8 mhz 🙂
C’est plausible qu’il faille effectivement une puce pour en programmer une autre au moins pour le bootloader, si tu y arrive et que tu as l’occasion de tester le module radio avec , tiens moi au courant des résultats 🙂
BOn ca fait un petit momement mais je viens aux nouvelles.
J’ai essayé de graver les bootloader avec 2 atm… Mais impossible!
Même en utilisant les tuto made in arduino ( et en ajoutant leur histoire de condensateur de 10µ ou une resistance blablabla rien à faire, impossible sans programateur je pense …)
Sinon petite question, as tu changé ton code en c++ ?
Car je viens de le retelecharger et il ne fonctionne plus :/
J’ai vérifié avec 2 rasp, j’emets et je reçois bien les bonnes valeurs. Mais quand je passe à l’arduino, ca ne fonctionne plus (alors que ca fonctionnait avant :p)
Je n’ai pas encore essayé de graver les bootloader moi même, du coup je ne suis pas très à même de te conseiller désolé :), ceux que j’ai vu faire suivaient le tuto à la lettre , ça avait l’air de bien fonctionner…
Non je n’ai rien changé sur le code :), et les autres utilisateurs ont l’air de continuer à me faire des retours positifs donc je ne pense pas qu’il soit compromis ^^
Étrange que ça fonctionne entre deux rpi mais pas entre un rpi et un ardui ^^, ça devrait être plutôt l’inverse, l’ardui étant plus doué pour les échanges bas niveau raide que le rpi :p
Alors je viens porteur de bonnes nouvelle !
Je viens de recevoir mes Attiny85, et donc, j’ai fait joujou 😉
Pour programmer mes Attiny85, j’ai utilisé ce tuto:
http://bateaux.trucs.free.fr/arduino_attiny.html
Et ça marche nickel ! (j’en ai d’ailleurs profiter pour me faire un petit shield de programmation Attiny85, comme dit ici : http://www.semageek.com/tuto-programmation-des-attiny45-avec-un-arduino/ . Sérieusement, c’est pas long à faire, et c’est très pratique ! J’ai amélioré son shield en mettant simplement une LED + résistance sur la patte 3. Ainsi j’ai juste a charger un petit blink pour tester en direct mon Attiny85, si j’ai un doute sur son fonctionnement 😉 )
Concernant le test en soit, j’ai utilisé l’horloge interne 8Mhz et ça roule nickel. Dans mon montage, je n’ai donc que mon alim, mon Attiny85, mon récepteur, ma LED et mon relai. Ce qui me laisse encore 2broches libres sur mon Attiny85 pour faire ce que je veux 😉
De sacrées évolutions en perspective 😀
Après avoir fait 50 test et autant de foirages et de grattages de tête, j’ai réussi à reprogrammer un ATMega328 avec utilisation de l’horloge interne en suivant ce tuto: http://www.gammon.com.au/forum/?id=11637
Il y a deux scripts qui permettent de mâcher le boulot et de flasher le chip sur breadboard via des commandes envoyées à l’arduino par la console. Pour utiliser l’horloge interne, on flashe en fait le bootloader de lilypad avec ATMega328.
Pour info, je suis passé par un Arduino UNO.
Je passe vite fait avec ma pelle et je déterre un peu les vieux messages…
Pour ceux que sa intéresse j’ai trouvé ceci (et je l’utilise dans mes montage)
http://www.conrad.fr/ce/fr/product/401785/Convertisseur-ACDC-5-VDC-200-mA-1-W-Recom-International-RAC01-05SC
C’est le plus petit et le moins cher que j’ai pu trouver (avec boitier inclus, avoir un chargeur de portable depioté comme ça avec le 230V qui passe on ne sait ou c’est pas super safe je pense) en plus avec ses 1W de consommation et ses 200mA il sera moins gourmand que les chargeurs de portable (500mA a 1A en général) et largement suffisant pour alimenter même un tas de composants reliés a l’Atmega328.
Si sa peut en aider certains …
Bonjour,
Pour le boitier il y a ça aussi, mais il faut trouver une vendeur et un prix 🙂
http://www.usinenouvelle.com/expo/boitiers-prises-f-d-ve-p106524.html
Ou encore ça http://www.conrad.fr/ce/fr/product/531315/Botier-prise-enfichable-universelle-en-PCABS-L-x-l-x-H-125-x-67-x-50-mm-gris-clair-Conrad-44093004MT3-ESU-1200-ECE mais du coup c’est cher.
Bonjour
Tuto très intéressant, je vais y bosser.
Pour l’alim 220VAC en 5VDC j’ai trouvé ça:
http://www.dx.com/p/switching-power-supply-board-module-green-5v-600ma-151578#.VARE1vl_upc
http://www.miniinthebox.com/fr/puissance-de-commutation-supply-board-module-5v-600ma_p406456.html
mais je ne sais pas trop si cela convient.
Impressionnant… Très impressionnant !
J’en reviens pas, sachant qu’il y a quelques semaines je t’expliquais ce qu’étais fréquence, longueur d’onde et tout le tintouin…
^^ t’inquiète je suis encore loin d’avoir tout compris sur le fonctionnement radio (il me faudrait des années), pour le moment ça vas parce que je reste sur un domaine précis mais reparle moi encore des harmoniques résiduelles machin chose et tu vas me voir palir :p
Quelques idees :
Boitier : faire imprimer par une imprimante 3D ? Ca fait plus “pro”, mieux fini est n’est pas horriblement cher.
Variateur : indispensable mais il faudrait remplacer la carte relay par autre chose
Alimentation : Une alimentation basse conso qui prend le courant directement depuis la prise serait l’ideal et mettre le tout dans le boitier
Imprimante 3D oui, mais encore faut il en trouver une qui marche dans son entourage ^^, a Paris je ne sais pas, mais à bordeaux, ça court pas les rues ^^ , après comme je le disait, faire deux trou dans un petit tupperware un peu rigide c’est pas le temps que ça prend ^^ .
Pour l’alim basse consso, c’est très simple, il suffit de bricoler un chargeur de portable, je ne l’ai pas mis sur le montage histoire qu’on se concentre sur la partie traitement, mais j’aurait peut être du étant donné qu’il y a quelques questions qui fusent la dessus.
Le principal problème d’une alim de portable étant que ça reste très cher pour ce que c’est (6/7 € minimum) donc obligé de faire de la récup…
Moi je vois deux solutions pour un boitier :
– Récupérer une vieille rallonge, la raccourcir, et ajouter un tupperware effectivement entre les 2.
– Sinon, avec une multiprise, il devrait y avoir moyen de placer le système dans les espaces vides à l’intérieur, si celle ci n’est pas trop compacte. Après chacun choisit s’il n’y a qu’une seule sortie activable par la radio ou si ça active toute la multiprise…
Bonjour,
J’ai trouvé sur eBay des chargeurs d’iPhone de marque “Abble Japan” (^^), ça fait 1cm3 (sur 2 petits PCB donc c’est aussi possible de les mettre côte à côte (photo si nécessaire :)). Le prix 1,07$ livré soit avec le cours €/$ du jour de mon achat 0,83€ !
PS: Pour réduire encore plus la taille j’ai dessoudé la connectique USB.
PS: Le lien http://linkr.fr/xY6t (j’ai pas acheté chez ce vendeur, mais c’est le même chargeur)
C’est mignon tout plein !! 😀 J’ai acheté un charheur d’iphone dans les même prix que je dois encore tester (http://www.ebay.fr/itm/USB-Wall-Home-Charger-AC-Adapter-for-Apple-iPhone-4-4G-/260746096384?pt=PDA_Accessories&hash=item3cb5adaf00) mais il est pas aussi joli :D, merci pour le tuyau
La page renvois un avertissement inquiétant !
“Malheureusement, l’accès à cet objet a été bloqué en raison de restrictions légales en vigueur dans certains pays. Conformément à ces restrictions, nous nous efforçons de bloquer l’affichage des objets concernés. Nous regrettons de vous informer que pour des raisons techniques, certaines annonces ne rentrant pas dans le cadre de ces restrictions peuvent ne pas être accessibles aux utilisateurs. Nous vous prions d’accepter nos excuses pour tout désagrément et nous espérons que vous trouverez d’autres objets intéressants sur eBay.”
Hum… si on remplace le .fr par le .com ça passe… mais quid de la restriction, pas de validation pour les perturbation électrique ?
Ce message est useless, tu achèterais un parapluie qu’il te mettrait la même chose au bout d’un moment, j’ignore pourquoi les fiches sont déplacées et/ou censurées au bout d’un moment mais ça n’a rien à voir avec la conformité de matériel, bref, ne pas hésiter à recherche le même mot clé pour retomber sur la même fiche (mais sans message ce coup ci) ou à bidouiller l’url.
Ok merci pour ta réponse rapide !
Salut,
J’ai parcouru ton code et je te conseillerais de mettre le data du récepteur radio sur une broche d’interruption qui te permettra de déclencher un évènement de plus pour optimiser tu pourras mettre le micro en “pseudo-veille” qui se réveillera lorsque la broche d’interruption serra active.
De plus avec un ATTiny, tu peux gérer plusieurs relais (quasi illimité) avec l’utilisation d’un Shift Register de type 74HC595 qui utilisera unique 3 broches sur le micro !
Blackmam3a
L’idée de la veille me plait, après j’ignore comment faire ça, si tu as un micro tuto à me filer je suis preneur, sinon je demanderais au lab je crois qu’il y en as qui ont déjà fait ça 🙂
Quitte à utiliser un attiny avec plusieurs shift, autant prendre direct un atmega, ça prendre moins de place et ça coûtera moins cher, rien n’empêche de rajouter des shift par la suite a l’atmega si plus aucune pin dispo.
L’attiny n’a d’intérêt que dans le cas d’un montage ou le nombre de pin doit être réduite (par exemple dans le montage que je propose sans autres ajout ça conviendrait totalement) après si il y a besoin de plus d’I/O autant prendre une puce qui en gère plus en natif et qui coute 3 centimes de plus tel que l’atmega
Par simplicité je te conseillerais de regarder la doc atmel complète (celle de 500 pages 😀 appelée aussi par mes anciens prof : la bible), tu dois avoir un paragraphe sleep mode ou power management si mes souvenirs sont bon.
Par contre je crois qu’il faut obligatoirement avoir un quartz externe pour la plupart des modes !
Se taper une bible de 500 pages (certainement en anglais) me parait être tout sauf simple ^^, je vais plutot partager une bière 5 min avec quelqu’un du lab 😀 mais merci pour le conseil :p
http://playground.arduino.cc/Learning/ArduinoSleepCode
pour éviter la bible 😉
Jvais mater ça merfi 🙂
Méfiance!
Ta carte ne te permet que de transférer ton programme dans le µC à condition que celui ci soit déjà flashé. 15€ c’est pas la ruine, mais c’est un peu cher alors que tu pourrais faire la même chose avec un port ethernet ou usb à 3€ … (plus deux trois fils et une prise de tête sur les datasheets je te l’accorde ^^). Et en plus, tu ne peux pas passer à un µC avec plus de pin que le support… Finalement c’est 15€ pour remplacer quelques fils et des boutons poussoirs …
Comme je te le disais, avec un pickit (la version 2) à une 15n d’€ aussi, tu peux transferer ton programme sur des PIC mais en plus te passer de bootloader puisque pickit va se charger de les flasher pour toi. Pour peu que tu possèdes une adresse mail étudiante en Elec ou Info, microship t’offre 2 échantillons gratuis (même les frais de port) par mois (je parle d’échantillons de µC). Et le logiciel utilisant PICKIT est gratuit.
Donc c’est bien mais méfie toi de toujours acheter un Atmega328 flashé. (Et pas un truc vaseux à HongKong qui va mettre 3 mois à arriver et qui ne fonctionnera pas) (et pour passer à une puce plus puissante, méfie toi qu’il y ai le même nombre de pin).
Je suis au courant 🙂 c’est bien pour ça que je précise dans la liste du matériel “Micro contrôleur ATmega 328-pu avec bootloader inclus”
Cela dit, il est possible (et assez simple) d’intégrer le bootloader nous même, je propose la puce avec bootloader intégré pour nous mâcher un peu le travail et éviter de complexifier le tuto d’avantage, mais a terme nous feront exprès de ne pas acheter de puces flashées, historie de réduire le coût et de modifier un peu le bootloader à notre avantage (par exemple pour utiliser l’horloge interne de l’Atmega et se passer du résonateur pour les montages autres que radio).
En fait l’Arduino IDE permet, comme pour les PIC, de flasher l’atmega vierge, c’est juste que je souhaite épargner un peu mes pauvres lecteurs pour le moment ^^.
D’acc 🙂
C’était juste pour préciser au cas où un mec se dirait “Chouette j’en ai trouvé des moins cher sur EBAY!!!” et qu’ils ne soient pas flashés 🙂
Pour l’horloge interne, je suppose que c’est dans le “build” qu’il faut choisir un truc du genre interne osc et pas HS (high speed qui correpond au quartz).
En tout cas c’est cool, vu que je galère un peu en C++ (surtout pour la compilation, merci au passage ^^) ton tuto m’a donné envie d’essayer ces puces. Et oui le PIC c’est en C :p
J’ai déjà découpé une multiprise (oui pourquoi la démonter quand on peu y aller à la pince coupante… Non javais pas les tournevis et j’avais la flemme de fraiser les vis :p)et connecté le relai 8 canaux. J’ai soudé la carte de l’alim du téléphone pour que tout s’auto alimente au secteur.
Et du coup je vais essayer de passer du pic au ATmega (compilateur gare à toi!)
Bon courage pour la suite 🙂
C’est effectivement un risque :), faudrait que je mette cette partie en gras, que les lecteurs se doutent que c’est une précision importante, après si ils achètent une vierge ya pas mort d’homme mais ils auront un peu plus de boulot 🙂 (enfin 3 clics en plus dans les menu de l’ardui IDE mais bon faut le savoir).
C’est possible oui pour l’horloge interne, au pire je demanderais à Alexandre (qui à posté un commentaire tout a l’heure) qui fait partie du lab et qui à déjà fait ça pour son projet de gestion de plante ultra basse consommation 🙂
Bonne chance pour ta multiprise :), et prend tes précautions, je ne voudrait pas avoir un électrocuté sur la conscience 🙂
Le passage du pic a l’atmega ne devrait pas poser trop de soucis, c’est juste une question de marque différente, mais tous les fonctionnements (flash de la puce, programmation, langages prix) ont l’air identiques à deux trois broutilles prêt.
Un dernier truc et je t’embete plus (pour la journée du moins :p)
Arduino Uno R3 c’est la même chose que l’Arduino Duemilanove en plus récent?
En fait tous les arduinos sont basés sur le même principe (une puce atmega + une plateforme de dev et de branchements) c’est juste qu’il y a plus ou moins d’ajout de périphériques en fonction du modèle et que la puce atmega peut également changer de modèle (atmega8, atmega 128, atmega 328, atmega1280) ce qui augmente ou diminue la mémoire programme (respectivement 8k, 16k, 32k et 128k).
Certes ardui contiennent des particularités comme la nano, mini et micro qui sont faites pour de petits montages, l’ethernet qui contient un shield ethernet intégré pour la brancher au réseau, la léonardo qui peut apparaître comme un périphérique sur les pc et qui possède un atmega spécial,la lilypad faite pour les gaypride (ok je sort..)
Tous les modèles sont dispo ici pour faire des comparatifs hardware : http://arduino.cc/en/Main/Products?from=Main.Hardware
Nickel !
Merci pour les infos (sympa la lilypad :p)
Ca y est t’es tranquille pour la journée 😉
C’était du gâteau !! *s’éponge le front discrètement*
@geo
Merci pour tes question ! C’est bien utile pour les débutants comme moi.
@Idleman
Très sympa ton blog, dans lequel je comprends presque tout. Bravo!
Ma commande est passée pour 4 nivaux à eau sur Ebay. La lecture du blog va me coûter cher en bidouilles.
Le but c’est de faire du low cost, donc normalement non ça ne coute pas très cher ^^ (enfin pour vous parce que moi en testant je grille pas mal de trucs que je dois racheter quand même XD)
T’as pas encore foutu le feu 😉 ?
Curieusement non, j’ai bien fait sauter les plombs avec l’alim chinoise et je me suis roussis quelques poils de nez mais c’était plus un éclair qu’une flamme alors ça compte pas :p
Tite question
Il y a quelques temps pour pirater une Pc on utilisait des clee USB a programmer. En c
Atmel32 ou 64 voir 128 pour la x3max
Pourrai ton en fair quelque chose dans la x3max il y a même un lecteur micro sd
Je n’ai rien compris 🙂
Auto correction de. L’iPad désoler
En gros je parlais des d’ongle USB pour pirate les PS3 comme psjailbreak et x3max
Déjà eu un incendie avec un disjoncteur programmé acheté sur ebay donc c’est un no-no.
le prob c’est que ta carte relay elle vient d’ebay, donc bon si tu as un incendie ( ce que j’espère pas ) tu es pas assuré même civilement(norme CE?), ce qui est profondément pas cool( genre tu crames la baraque du voisin tu es respo.).
Pour le montage si éventuellement tu veux le faire, une alim d’iphone 5/4S dont tu retire le cache plastique me parait la solution idéal ( environs 2*0.8*3cm d’alim) par contre je te conseil fortement de mettre un fusible a genre 10 amp, ça limitera les soucis sur sur ton relay, on sait jamais.
Pour ta prise, moi je ferais plutôt un cast de résine, tu as a invest peut être 50 ou 60 euro mais tu peux couler genre 10litres( en +sieurs fois je te l’accorde). Le faire sur une reprap ca va être galère a cause de la forme intérieur et surtout de l’ancrage ( comment t’emboîtes les morceaux).
J’ai une reprap à la maison à poitiers, si tu passes dans le coin, je dois faire ce type de montage pour des leds (17m en RGB) que je contrôle en wifi sur un wn703+microduino
Try harder!
Un composant construit hors UE ne veux pas forcement dire un composant qui n’est pas aux normes CE :), et heureusement sans quoi aucune équipement de ton appartement ne respecterait les normes ^^, la plupart des composants vendus par des professionnels chinois ou japonais sont obligatoirement aux normes européennes puisque leurs plus gros clients sont européens, après je suis d’accord qu’une petite vérification sur les datasheet s’impose, mais ce n’est pas le sujet de mon blog :).
Pour l’alim, je cherche justement quelque chose de moins couteux et moins volumineux qu’un chargeur quel qu’il soit, pour le moment je n’ai pas trop de pistes 🙂
1* Ta carte relay n’est certifié rien ( vu les photos c est la meme que la mienne , j’en une en 16 aussi): si tu as un départ de feu == tu es responsable, le mettre en gras dans l’article pourrait être une idée car si ca a arrivait genre a un ado/adulte qui te lis ca serait genre la loose. (Je parle chinois, et je vivais en chine, donc oui je connais les produits et leur certifs :: check taobao.com.cn si tu veux te faire une idée du shopping). Les produits chinois sont même pas moins mauvais que les produits francais ( disjoncteur legrand avec des contacts en mousses…) simplement expliquer ca a ton assurance habitation autre histoire.
2* Acheter juste le bloc usb du chargeur iphone revient relativement cheap ( tu payes juste le bloc prise -> female usb, mieux qu’un chargeur complet) ~~1euro tu récupères du 5V .
http://www.ebay.fr/itm/USB-Wall-Home-Charger-AC-Adapter-for-Apple-iPhone-4-4G-/260746096384?pt=PDA_Accessories&hash=item3cb5adaf00
Tu peux aussi en récuperer d’occaz
3* Je serait intéressé de voir si on peut pas realiser la prise carrément juste sur un module radio( un qui transmet de la data après reconnaissance de l’adresse) avec un circuit double gachette. Mais bon ce ne sera plus compatible avec la télécommande que tu as déjà.
Bonne chance
Try harder
Effectivement le chargeur femelle semble être pas mal, je l’ai commandé pour le tester (parce que l’alim chinoise semblait pas mal aussi à la base ^^).
Je n’ai pas compris ce que tu aimerais faire (3em point).
il y a des modules en 433Hz qui fonctionnes avec un adressage sur la carte, et envoie ensuite le message sur un port data. Avec un circuit bi stable de commande de ton relay on peut imaginer se passer de uc si le but c ‘est juste un on/off. Ca devrait permettre d’encore diminuer la taille et le prix du montage, par contre les possibilités d’évolutions seront nulles.
Ah je vois ^^, effectivement ça m’intéresse moyen, je préfère encore payer les 3€ du micro et pouvoir personnaliser mon protocole/mes périphériques, surtout que l’atmega est remplaçable par des puces plus petites et moins chères sur le long terme.
De plus j’aimerais améliorer encore ma prise en ajoutant quelques éléments :
Variateur de luminosité
Capteur température
Capteur de luminosité
Émetteur RF (pour les retours d’infos etat du relais et capteurs)
De cette manière je n’ai qu’a ajouter quelques bits à mon protocole
Super tuto je l’attendais aussi avec impatience.
Pour la prise de test je pense m’orienter vers ça : http://www.priceminister.com/offer/buy/181681291/sort0/filter10/adaptateur-de-prise-avec-interrupteur-1-prise.html
Se genre de prise avec interrupteur à l’air de s’éclairer, je me demande si il n’y a pas un transformateur dedans…
Ce n’est pas idiot du tout, pourrait tu m’avertir dans le cas ou il y aurait effectivement un transformateur dans ce petit bijoux de boitier ? 🙂
La réponse évidente s’impose après démontage d’une de mes multiprises et recherche sur le net : http://i36.servimg.com/u/f36/14/46/37/53/frigo_10.jpg c’est une lampe néon fonctionnant sur du 220 V.
Dommage ^^ bon au moins ya un joli boitier 🙂
Je connais ton blog depuis quelques jours seulement. Je cherchais a faire… Exactement ca.
Super boulot!
Maintenant jai une question: comment faire pour avoir un bouton ou/et un bypass manuel. De meme pour des interrupteurs.
Pour l’instant se que je compte faire c’est changer les boitiers des prises par des doubles, une prise modifié a ta facon et un interupteur va et viens, donc soit courant direct soit courant commandé a distance.
Je precise aussi que je ne suis pas locataire, j’ai autoconstruit une petite maison, un circuit 220v pour les prises et un circuit 12v pour les lumières. Je peux modifier a souhait, mais pas envie de retirer des cables (en tout cas pas des cables gainés donc pas de grosse puissance)
Pour les interrupteurs je comptais utiliser des modules blyss mais je vais attendre car je suis sur que tu va bientot faire un module rf avec un poussoir qui allumera un relais soit a la main soit a distance 🙂
Aussi pourquoi ne pas simplement mettre ton circuit dans le boitier de la prise directement dans le mur? C’est plus propre, le waf est meilleur.
Et une autre question. Pourquoi au debut du tuto si on suit betement on achete un émetteur recepteur a 15 balles et ici a 1.5€ ? Ya t il une difference particuliere? Puissances, temps de reaction etc?
Oui grosse différence : La première est construite en France, la seconde en chine, reste à savoir si comme moi, tu es 10 fois plus avare que patriote 😀
Plus sérieusement, lors du premier tuto, je commençais l’électronique et je ne fournissais pas encore au bon endroit (conrad est horriblement cher) je te conseille vivement le modèle a 1.5 qui est exactement le même et qui fonctionne de la même façon (il est même mieux puisque sa portée peut aller jusqu’a 200 m en fonction du voltage quand le premier ne vas qu’a 30m max).
Je suis citoyen du monde, et c’est pas ici que je devrais donner mon opinion sur notre beau pays, libre juste ou transpire le bonheur le partage et l’honnêteté 🙂
Les chinois font autant du bon que du mauvais, quand c’est du bon je prefere acheter chez eux, ca leur permet d’en etre arriver a pouvoir demander des acquis sociaux, comme c’est des euros caz reviens forcement dans nos poches a un moment et ca allège pas trop mon portefeuille!
Donc si tu a testé le matos et qu’il est bon je prend celui la. En plus il m’en faudra une petite 20aines donc le calcul est vite fait.
Autant d’atmega ou meme attiny, autant dalim 220/5 ou de 12/5
Plus les capteurs en tout genre.
J’aimerais bien trouver un site ou prendre tout d’un coup dailleur mais surement pas chez conrad qui par ailleur vendent enormement de matos chinois au prix de l’Européen.
Merci pour les info sur les boutons, je vais partir sur des interrupteur poussoir classique, ajouter les detecteur ir et integrer ton circuit dans les boitier encastrable.
Visiblement la plus grosse difficulté sera la detection et le positionnement des gens dans lz maison, le reste etant deja résolu par tes tutos 🙂
Ma petite phrase sur le patriotisme était un cynisme, aucune personne normalement constituée ne choisirait sciemment de se faire enfler de 13.5 € par kit simplement par patriotisme (ou alors je dis ça parce que je suis jeune et que j’ai aucune valeur morale mais dans ce cas j’assume :p).
J’ai bien progressé sur le capteur de température radio ce soir (augmentation des limites de -128 à 128 degrés, augmentation de la portée, inclusion des valeurs négatives) , je pense poster le tuto dans la semaine prochaine.
-128 +128, Tu me dit ou tu habite que je vienne jamais 😉
Merci d’avancer sur la temperature.
De mon coté pour la localisation j’ai pensé a la fauconnerie, j’ai trouvé ca http://www.ayama.com/fr/emetteurs
C’est tres cher mais le but est pas d’acheter, simplement voir la taille, c’est du 433 aussi donc on peux penser utiliser les emetteur recepteur des prises pour trianguler. Maintenant faut que ce soit rechargeable et pourquoi pas par induction (genre chargeur qi sur table de chevet)
Mis dans une montre ou un bijou.
On a meme pas besoin de beaucoup de porté, quelques metres a peine vu qu’on aura des recepteur partout dans la maison.
Simple question de bits ^^ je suis sur 7 bits d’infos pour la température, donc 128 valeurs possibles (+ un bit de “polarité”) avec un bit de moins on ne pourrait aller que jusqu’à 64, et la ya quelques zones dans le monde ou ça pourrait faire chier ^^
Mais à bordeaux il fait très bon 🙂
Je n’ai pas compris à quoi sert le truc de fauconnerie, c’est un traqueur en fait? Si c’est ça, ça me parait relativement cher effectivement ^^. Autant construire un petit traqueur actif perso à base d’attiny + émetteur rf le plus petite trouvable + mini piles 3v ça peux teir assez longtemps aussi, à voir.
Tu mesure ta temperature en numerique?
Le truc de fauconnerie c’est simplement un emeteur 433 miniature. quand tu vois que sur loiseau c’est tout petit, que l’oiseau tiens dans la main du mec, ca donne une idée de se qu’il est possible.
Et ouais c’est cher, faut pas acheter ca, mais simplement s’en inspirer. je verrais bien ca dans une bague ou autre, la maison sais ou tu est exactement, les animaux aussi, elle peux faire la distinction, allumer les lumieres ou les eteindes, sans que ce soit perturbé par les chats.
C’est tjr dans l’optique d’econnomie d’energie pour chez moi.
Un exemple bete, tu mate un film, tu va pisser, le son continue mais l’ecran s’eteind, quand tu reviens il se rallume. pareil pour la lumiere ou meme l’alarme qui se desactive quand tu arrive pres de chez toi. Ca me parait etre le gros truc a inventé parce que jusque la ya rien de fait meme en pro pour detecter proprement les gens dans la maison.
Une fois que tout est automatisé c’est l’etape qui optimise tout. Pour les gars c’est rarement un probleme d’avoir un appareil type montre ou un petit porte feuille electronique dans la poche, pour mesdames ca n’est pas acceptable sauf si on le fait incruster dans un bijou sympa par le bijoutier du coin.
Donc petit, le moins consomateur possible. sur le liens il on des traceur plus petit qu’une phalange qui tiennent 1 mois avant de recharger…
Oui ce sont des numériques (mais si j’avais su j’aurais pris de l’analogique c’est tellement plus simple à code …) des ds12b20 pour être précis, de vrai usines à gaz question code (c’est bien ce que je leurs reproche ^^).
sympa ton idée de quadrillage, mais si c’est pour éteindre la tv ou autres actions qui n’ont pas besoin d’être liées à une personne mais juste à une présence, autant utiliser des barrières infrarouges,des détecteurs de mouvements classiques (ou webcam) plutôt que de se trimballer avec un emetteur radio non stop ^^
Tu veux un bouton pour allumer/éteindre la prise manuellement sur la prise c’est ça ?
Il te faut modifier le code pour qu’il prenne en compte ce bouton (Arduino IDE propose plusieurs exemples de gestion de bouton dans Fichiers->Exemples->02 – Digital)
Il faut ensuite que tu relie le bouton entre un pin de l’atmega et la masse (pin que tu aura précisé dans ton code). Voila le plan des pins de l’atmega :
Après il est effectivement possible que je propose dans la v2 de la prise quelques options en plus comme celle ci 🙂
Pour ce qui est de la dernière question, moi je suis locataire, si je touche aux prises, je me fait déglinguer ^^.
Salut,
pour bypasser, il va te falloir un interrupteur C6 ( va et viens ) pour couper l’ arriver de ta phase en 230v de ton relais et la rediriger directement sur ta prise ou ton éclairage, tu peux inetrcaler un interrupteur simple entre ton av et viens et ta prise ( ou ta lampe ) pour allumer et étteindre, ou encore, avec un atmega et un émetteur ( et un p’tit transfo 230 / 5v ) créer un interrupteur HF qui commandera via l’ Atmega qui est dans ta prise ( ou lampe ).
http://www.journaldugeek.com/2013/02/17/fibaro-z-wave-prose-allumez-eteignez-appareils-distance/
La concurrence arrive !!! T’inquiète, pour ma part, je resterais fidèle à tes bidouilles 😉
64,90 € la prise ^^ ça picote quand même, pour le même prix on peux en faire 10 des miennes (okay elles sont un peu moins classes ^^ mais elles font moins gaypride aussi :p). ET puis ça sent un peu l’interface de gestion proprietaire ultra verrouillée comme il en existe déjà des milliers, mais bon je reconnais que l’idée de l’afficheur de consommation de courant m’a faite marrer ^^ (même si ces veilleuses doivent du coup elles même consommer non stop un peu de courant ce qui rend le principe un peu paradoxale :p) bref, même pas peur XD !
Salut,
Dis moi, pourquoi brancher l’ATMega comme ça de façon extérieure à l’Arduino ? J’imagine que c’est plus simple de déclipser l’ATMega qui est sur notre arduino, de mettre l’ATMega qu’on veut programmer à la place et de téléverser (j’adore ce mot) directement le programme avec le logiciel Arduino, non ?
J’ai un Arduino Uno (qui est relativement similaire au Duemilanove) mais j’avoue que ça ne m’est jamais venu à l’idée de débrancher l’ATMega qui est dedans pour m’en servir directement. Il faut tirer fort pour la retirer ou bien ça se déclipse tout seul ? J’ai peur de tout casser 😛 (mon Arduino est chez un pote actuellement sinon j’aurais essayé)
Le mieux c’est un petit tournevis plat a passer en dessous le la puce pour les declipser dans les abimer.
Oui c’est possible de programmer la puce direct depuis le support de l’ardui, mais j’ai choisis ce montage pour les raisons suivantes :
1 – Une fois le montage final soudé sur une plaque, il est possible de le reprogrammer sans toucher à la puce (simplement en prévoyant les ports tx, rx et reset sur le circuit de production).
2 – Dans certains cas (comme la gravure du bootloader qu’on à pris toute faite ici mais qu’on fera nous même par la suite pour reduire les couts) il peut être necessaire
d’utiliser une puce atmega pour en programmer une autre, ce qui force l’uilisation des ports tx/rx externes.
3 – Ca permet d’aborder l’utilisation des ports series pour la programmation de micro puces, ce qui permettra par la suite aux débrouillard de programmer l’atmega autrement que via une plateforme arduino (voir même de programmer d’autres puces que l’atmega),
en laissant tout branché sur l’arduino, on ne vois rien et on se repose completement sur la carte sans savoir d’ou viennent et ou partent les informations de programmation.
Quid d’une alimentation de ce type ?
http://www.sonelec-musique.com/electronique_realisations_alim_simple_001.html
A+
C’est carrément sympa :), je cherchais justement un petite montage simple comme celui la !! Après reste a savoir si ça vaut le coup question prix :), a tester, merci beaucoup pour le tuyau 🙂
Bonjour,
Mais euh y a pas de transfo sur ce genre de montage, qui soit dit en passant est un montage des plus connus, pont de diode, condo et régulateur.
Il faut trouver un transfo assez petit quand même.
Si il y a un transfo 🙂 (tr1), en revanche sa référence n’est précisée nulle part ce qui est gênant 🙂
Salut,
Je voulais savoir une chose depuis pas mal de temps et tu es la bonne personne pour me donner une réponse je crois.
Tu as déjà démonté une prise chacon (celle de ton tuto 12) ? Ne peut on pas récupérer le système pour l’incorporer dans une prise murale ?
Merci
Oui j’en ai déjà démonté une, et oui elle est incorporable dans une prise murale, après reste a voir l’intérêt de faire ça 🙂
l’intérêt c’était pour évitez d’avoir la grosse prise chacon par dessus une prise murale.
Et j’avais dans l’espoir de mettre sa aussi derrière un interrupteur pour commander mon éclairage de la maison.
Possible ? Ou je fais une énorme bêtises dans ma tête la….
C’est possible, mais quitte a déglinguer complétement la prise chacon, autant créer la prise IDLE proposé dans ce tuto, ça te coutera moins cher 🙂
Le sujet de la Prise By IDLEMAN 😛 m’intéressé beaucoup car je cherche aussi à créer mon propre interrupteur RF mais finalement le besoin d’une alim 5v rend la prise moins intéressante pour mon application.
Par contre l’idée de la multiprise, génial !! (TV,console,karotz) le tout sur la même comme maintenant avec un commutateur manu quand même ^^.
tu pourrais m’envoyer une photo de l’intérieur d’une prise chacon ? (Je te tutoie même si on c’est jamais parlé c’est pas grave :D)
Ah oui et au niveau du coût je pense que sa doit se valoir si on compte le coût de l’alim 5v.
Encore merci d’avance
J’ai dépiauté la prise depuis, le boitier est partis à la poubelle désolé 🙂
Une alim 5v peut être trouvée à 1€ sur ebay (cf chargeur d’iphone sans raccord usb) ce qui nous fait du 7€ la prise (et encore je compte large) donc je pense qu’on est en dessous de la prise chacon, cela dit le plus important c’est qu’on maitrise totalement le processus et qu’on est à même d’upgrader le firmware des prises à tout instant pour y intégrer de nouvelles notions 🙂
C’est pou evitez d’avoir la grosse prise chacon par dessus la prise murale.
De plus ce que je souhaite faire, c’est de mettre ce systeme en shunt sur un interrupteur pour allumer mes eclairage
Pardon petite erreur..
Merci ! encore un super article très intéressant ! 😉
Et maintenant si je veux faire une télécommande ou un interrupteur 433mhz autonome alimentée par une pile cr2032, comment puis-je m’y prendre ?
Merci
Même montage (sans le relais) et avec un émetteur à la place du récepteur, pour le code il faut faire l’ingénierie inverse (à savoir envoyer la trame de bit au lieu de la recevoir ^^) et c’est bon :p.
Je ferais peut être un tuto un de ces 4 🙂 (mais pas tout de suite j’ai quelques sujets à traiter avant ^^)
Ouai parce qu’un interrupteur DIO ça pique, enfin chez Leroy Merlin : 19,90€ et vu ce qu’il doit y a voir dedans c’est abusé 🙂
Et encore, DIO reste correcte par rapport a certains vendeurs de domotique sans âme qui se font une marge plus que scandaleuse, sans ces rapaces, voila bien longtemps que la domotique serait accessible à tous.
Bonjour,
Merci, pour tous ces tutos. Il m’ont bien inspiré.
J’ai dans l’idée de créer un système de sécurité pour protéger ma maison, à base de raspberry et d’AtMega328, le tout communiquant avec des émetteurs/récepteur 433Mhz.
Le principe serait d’avoir plusieurs AtMega328 autonomes :
– 1 ou 2 pour la détection d’intrusion (détecteur de chaleur ou autre) avec un émetteur pour transmettre l’alerte aux autres modules et un récepteur pour pouvoir armer ou désactiver le détecteur.
– 1 qui contrôlerait une sirene, avec un récepteur pour recevoir l’alerte venant des autres modules et se déclencher
Et enfin une Raspberry avec un émetteur pour armer ou non les modules de détection (pourquoi pas a distance via une interface web) et un récepteur pour recevoir les alertes émises par les détecteurs et pourquoi pas envoyer un message sur mon mobile
Il ne manquerait plus ensuite (mais facultatif) qu’une télécommande pour armer ou désarmer le système sans passer par l’interface web.
Cependant la méthode que tu utilise pour transmettre/recevoir les données dans ton tuto, avec les emmetteurs/recepteurs 433Mhz, me parait assez compliquée à mettre en œuvre à cause de la gestion des timing, des parasites, etc…
J’ai donc regardé ce qu’il se faisait sur arduino et j’ai trouvé la librairie VirtualWire, qui fonctionne apparemment très bien, et qui permet de transmettre des informations sans se soucier des timing, des parasites, etc… (elle fait automatiquement des checksum sur les infos reçues), et encore mieux on peut envoyer directement une série d’octets ce qui simplifie grandement l’écriture du code.
Le hic, c’est qu’il n’existe aucune version de cette librairie pour Raspberry, je me pose donc la question : pourquoi ne pas utilisé un AtMega328 avec un émetteur/récepteur 433Mhz qui utiliserait cette fameuse librairie “magique” VirtualWire, et qui une fois connectée à la raspberry via USB (ou les GPIO) servirait d’interface RF 433Mhz pour communiquer avec les autres éléments du système.
Cela simplifierait grandement l’écriture du code sur la raspberry ou sur les ATMega328.
Qu’en pensez vous ?
On peux se tutoyer on est sur l’idleblog :p.
Je connais virtualWire, j’ai eu l’occasion de tester lors de mes ptites expérimentations avec les ardui. C’est effectivement une bonne librairie.
Cela dis je n’ai aucun soucis avec ma librairie, une fois l’antenne placée et les alim externes en place, la portée et la destruction des parasites est optimale.
Je compte créer une carte de transition temps réel a base d’arduino pour aider le rpi, en revanche je préfère rester avec ma lib, dont j’ai la totale maitrise et que je peux faire évoluer comme je l’entends 🙂
J’ai quelques idées et projets que je ne pourrais pas aboutir si je ne maitrisais pas le processus de 1 à Z, c’est pourquoi, à l’exception de wiring Pi (qui est remplaçable car son fonctionnement est simple a comprendre) je n’utilise pas de librairies particulière dans cette domotique.
Cela dit ton idée est bonne et tu devrais continuer sur cette voie ça me parait tout à fait réalisable pour ton projet :), je te souhaite une bonne continuation :p
Bonjour,
J’ai longtemps hésité avant de répondre car j’avais un peur peur de paraître polémique. Je le fais finalement, et je risque d’être un peu long, veuillez m’en excuser.
L’utilisation d’un Raspberry, donc un ordinateur, pour traiter les signaux 433 MHz est un peu du luxe. S’il s’agit de le faire dans le cadre d’un exercice, alors oui c’est intéressant. Mais ce n’est pas une solution durable. Les fréquences d’échantillonages nécessairee sont telles qu’un ordinateur “normal” ne peut pas traiter ce genre de signaux en plus de son travail normal, à cause des interruptions non maîtrisées. Idleman a donc contourné le pb en passant son programme en mode temps réel. L’exercice en vaut la peine, et je suis admiratif devant le résultat. Néanmoins, un ordi qui passe tout son temps au service d’un programme, et qui prend le risque d’ignorer d’autres événements ne peut servir qu’à ça. C’est d’ailleurs pour ça que VirtualWire n’a pas été portée sur RPI (c’est ce que le développeur m’a dit).
Il faut donc choisir entre un RPI et un microcontrolleur (ATmega, ATtiny…) pour traiter les signaux émis par un autre dispositif.
J’ai vu la solution que tu proposes, utilisée par quelqu’un d’autre. Lui passe par une liaison série entre l’Arduino récepteur et le RPI.
C’est bien, mais ça bloque le port série.
J’ai pour ma part opté pour une autre solution. Arduino Emetteur (il joue le rôle de capteur)-> arduino Récepteur (Esclave I2C) -> RPI (Master I2C). L’intérêt de VirtualWire est de pouvoir formatter un message texte unique qui contient les valeurs de plusieurs sondes (température, luminosité…). On est de cette façon indépendants du protocole puisqu’on gère notre message.
Toutefois la solution que prévoit Idleman avec la “carte de transition” me semble indispensable.
Je dois tout de même ajouter pour être honnête et un peu plus complet que :
1 – J’ai découvert ce genre d’utilisation du RPI grâce au MAGPI, et surtout grace à ce blog
2 – Je ne connaissais absolument rien à l’Arduino. Et c’est encore ici que j’ai eu mon initiation. J’ai ensuite pris mon envol.
3 – C’est très facile quand plusieurs personnes ont traité un problème, et se sont posé des questions durant des mois, d’arriver en disant : moi je fais la synthèse.
Bravo à Idleman pour son travail.
Merci pour ce qu’il nous as appris, mais aussi et surtout pour ce qu’il nous a permis de découvrir, le tout dans la bonne humeur.
Voila une belle synthèse :), il ne fallait pas hésiter à la poster c’est le genre de commentaires qui font avancer les choses et c’est tout ce qui compte :).
Je pensé également que le rpi à lui seul n’est pas la solution optimale pour traiter des signaux radio même si dans certains cas on peut s’en contenter (envois d’un signal ponctuel a une prise comme pour ce tuto par exemple :p).
Je pense que la combinaison atmega (pour traiter les signaux bruts) rpi peut être très puissante, après a voir si c’est plus simple/souple de passer par I2C, les ports séries ou autres.
Mes tutos étant plus orientés domotiques générale et rpi, je ne me met volontairement pas a fond sur la partie radio, je pense que c’est une belle techno mais pas toujours appropriée, le filaire étant souvent plus fiable, plus rapide et plus sécurisé bien que moins sexy et moins rigolot à mettre en place.
Cela dit j’encourage les lecteurs ayant exploré cette partie “gestion des signaux radio” avec combinaison atmega+rpi ou autres techniques à en parler via un article sur le blog histoire de faire avancer tout le monde 🙂
Bonjour Skywodd,
sur le forum Skyduino que tu connais très certainement, j’ai appris l’existence du dispositif suivant :
C’est exactement le genre de choses que tu essayes, et dont tu nous fais partager l’expérience.
Ca peut peut-être donner naissance à un nouveau tuto, ou à une suite à celui-ci (sauf si tu préfère continuer à causer à des nanas électroniques…)
Ca peut être sympa pour la partie réception des infos et utilisation sur le RPi.
Encore une fois super tuto! Bravo!
Je vois que tu es Bordelais (du moins vers Bordeaux), tu connais pas un magasin où acheter des résistances/condensateurs à l’unité (ou en petite quantité) ?
Non, les boutique d’électronique sur bordeaux sont médiocres, les deux que je connait sont Soliselec et électronique 33.
Dans les deux le staff est peu aimable, incapable de renseigner sur quoique ce soit et limite à souffler quand on leurs demande un truc, de plus les prix sont ridiculement élevés par rapport a ce qu’on peut acheter aux professionnels sur ebay.
Bref je ne te les conseille pas du tout ceux la (surtout électronique 33, qui vas d’ailleurs bientôt mettre la clé sous la porte puisque plus personne ne veux venir chez eux).
Merci pour ta réponse, c’est bien ce que je craignais. Je vais donc commander sur ebay et patienter!
La suite, la suite….
Super tes articles, je les ai dévoré en attendant mon rasberrypi.
Voilà une jolie base pour me remettre à la programmation et surtout au monde linux que je connais asser mal.
Bravo
Olivier
Hello Idleman,
Je suis ton blog avec intérêt depuis quelques semaines et cet article tape vraiment fort en abordant un sujet qui m’intéresse énormément. Je souhaite réaliser des modules prises, éclairages, gestion de chauffage et interrupteurs type Z-wave en low-cost.
Pour ma part, je comptais m’orienter vers un AtTiny, mais la différence de prix comparé à la réduction de pins me dirige plus comme ton tuto sur un atméga.
Afin d’augmenter la portée sans avoir à passer par une alimentation externe plus puissante, il serait intéressant d’utiliser l’émetteur de chaque module pour répéter le signal. Cela créerait donc un réseau maillé.
Il y a énormément de possibilités.
Félicitations pour tes tutos,
Matthieu
Oui j’avais pensé au maillé je pensais faire ça avec toutes les améliorations de protocoles prévus à la fin de ma série de tuto.
Chez electrodepot j’ai déniché une alimentation usb 5v 1a à 5euros. Elle n’est pas sur leur site. Je l’ai pas achetée mais je vais surement y retourner. Je vais faire des tests pour voir si elle est fiable. Je pense pas qu’il soit possible de trouver moins cher en magasin.
Ca reste un peu cher ^^, le must pour le moment je pense c’est l’astuce énoncée un peu plus haut du bricolage de chargeur d’iphone à 1€
Whaooo, put…. ca déchire….
Ce sont les seuls mots qui me sont venus après avoir lu la totalité de tes tutos, plus les projets. Tu es une mine d’information à toi tout seul idleman.
En plus tes tutos sont super bien conçu et simples à comprendre.
Au fait tu penses finir ton projet domotique en combien de temps (j’attends la suite avec impatience comme tout le monde ici) ?
Bravo, continu et encore une fois,
Félicitations pour tes tutos, ton blog, et la suite de tes aventures….
Fafnus
Je suis content que ça te plaise :p
Je n’ai pas vraiment prévu de dates particulières (c’est un coup à me foutre la pression ça ^^) je fais au fur et a mesure de l’inspiration, du temps et de la motivation, j’ai encore quelques idées à concretiser cf le plan ici et après je voudrait essayer d’améliorer un peu mon interface (voir al refondre) et yuri de manière a intégrer un peu mieux tout ca (avec une gestion des scénario, gestion portable, un yuri 100% codé idleman histoire de maitriser/perssonaliser un peu plus le code etc…)
Salut, Top le tuto ! merci
Par contre, je ne trouve pas ou je peux acheter la résistance 1.27, sur ebay ou autre.
Peux-tu me donner une piste?
Merci
Tu peux prendre des résistances 10 k genre ça : http://www.ebay.fr/itm/100PCS-10k-Resistor-Ohms-OHM-1-4W-5-Carbon-Film-for-led-/221157087231?pt=LH_DefaultDomain_0&hash=item337dfd57ff
Ok, super merci. Par contre, je ne comprend pas trop pourquoi on peut aussi bien prendre une 1.27ohm qu’une 10k.
Parce que je suis une buse en électronique et que la doc officielle semble privilégier la 10 k 🙂
Hello, comment choisis-tu tes résistances ? En fonction de ce que t’as sous la main ? 😀
Par exemple pour celle de 8.21MΩ ?
J’y connais pas grand chose non plus, ça serait cool qu’un expert nous donne les valeurs appropriées avec une explication courte 🙂
Sinon un grand merci pour tes tutos, je m’éclate !
Salut :D, j’ai un peu honte de l’avouer mais oui les résistance de led j’y vais de manière très approximative, je n’ai jamais su comment savoir quel résistance flanquer sur telle ou telle led sachant que celle ci n’a aucune valeur/tolérance/voltage max visible sur son capot :D.
Pour les autres résistances c’est généralement des infos glanées sur le web (donc un peu plus sûre ^^).
et la loi d’ohm!!! U=RI
pour le calcul de la valeur d’une resistance pour une led:
LED rouge, orange, jaune (ambre) : 1.8V à 2V
LED verte standard (vert clair) : 1.8V à 2.2V
LED blanche souvent 3V
On les alimentes en general a 20mA
alim=U
U=Uled +Ur
r=Ur/I
Sinon continu comme ca!
Tu explique simplement les choses, cela peu aider pas mal de gens.
Salut,
Merci pour les tutos toujours compréhensibles.
En attendant mon Ardui et les résonateurs pour passer à la pratique, j’aurai 2 petites questions:
La première, si lors de l’enregistrement du signal de référence, je ne suis pas assez rapide et il me capte un signal qui n’est pas le mien, comment peut-on reprendre cette étape?
La deuxième, je possède une télécommande porte clés Chacon (donc protocole Home Easy) qui ne me sert pas. Avec ton système nous n’avons plus besoin de décortiquer le signal envoyé par la télécommande pour en faire quelque chose puisque j’aurai juste à appuyer sur le bouton pour reconnaitre le signal de référence ou je me trompe ?
Merci encore et A ++.
Concernant la première question, c’est un point faible du programme et une fainéantise de ma part ^^ (cf partie amélioration du tuto), si tu te loupe la première fois (mais ça serait pas de bol) tu devra :
signal.sender = -1;
Ta télécommande porté clé devrait bien fonctionner avec ce tuto si elle est bien au protocol home easy et que chacon n’a pas fait de modif concernant le protocole sur ce modèle (parce qu’ils aiment compliquer les choses) après ne travaillant pas chez chacon je ne peux te garantir à 100% que ça vas fonctionner 🙂
Merci pour tes précisions.
Je joue avec cette fameuse télécommande porte-clés qui ne semble pas envoyer du code Manchester, elle n’a pas l’air d’avoir le protocole HomeEasy.
Je reçois une impulsion plus grande au moment ou j’appuie sur le bouton de la télécommande (le verrou je suppose) puis 24 bits (le dernier change en fonction du ON/OFF), puis de nouveau le verrou et puis ça boucle.
Penses-tu que des impulsions se perdent ou bien la télécommande peut n’envoyer que 24 (26 en comptant les “verrous”) ou y a t-il règle (8, 16 , 32…)? Je suis une quiche là-dessus alors je me pose des questions.
le nombre de bit est définis par le protocol, donc ça ne m’étonnerais pas que le signal soit sur 24 bits (+ verrous) reste à définir quelles données correspondent à quel jeux de bits (pour ça faire un différentiel on/off et voir le bit variant peux aider, ca te donnera au moins le bit d’etat et si il est entre l’id télécommande et l’id récepteur, t’a toutes tes données)
Le bit variant je l’ai. C’est le dernier bit.
En revanche, tu me parles d’ID récepteur, pas tout saisi.
Les 23 premiers bits ne sont pas simplement l’ID télécommande? Pourquoi un ID récepteur sur un matériel qui ne fait qu’émettre?
En tout cas, tout fonctionne nickel, 3 jours d’arrachage de cheveux mais la lampe réagit à chaque appui de la télécommande, un vrai bonheur 😀 Merci 1000 fois.
Si quelqu’un a une télécommande Chacon 54591 et cherche les valeurs des pulsations (si le terme est bon), qu’il me fasse signe 🙂
Niquel, alors tu l’as plus ou moins ton code :), tu as réussi à le reproduire sans trop d’embuches ? 🙂
Parce qu’un même émetteur peux commander un ou plusieurs récepteur en fonction du bouton appuyé sur la télécommande chacon de base, elle comporte donc un code récepteur par bouton de manière à ce que le récepteur se reconnaisse. Cela dit ta télécommande m’a l’air assez basique donc tu est certainement sur un simple code émetteur reconnus dans tous les cas par tous les récepteurs.
OK, je comprends maintenant.
Si, si, je me suis arraché les cheveux, j’ai même failli perdre espoir 😀
Je crois que j’ai eu beaucoup de chances de trouver le code en fait.
J’ai joué avec ton script en virant les 3/4 et en jouant uniquement sur les valeurs de la détection du verrou lors de l’appui sur le bouton de la télécommande.
Entre 11000 et 12000, le script s’affolait. (Il n’y a pas l’air d’y avoir grand monde d’ailleurs dans ces valeurs parce que je n’avais plus aucune détection d’ondes hormis la télécommande.)
On est loin des 2700 et 2800 de ton script 😀
En tout cas, sur ces 3 jours, j’ai appris beaucoup de choses sur les ondes radio 😀
J’en suis content :), c’est plus formateur de galérer un peu en voulant faire du hors piste autour d’un tuto que de le suivre bêtement à la lettre et de s’en satisfaire, félicitation 🙂
Bonjour,
J’ai pas mal fait de tests pour récupérer le code d’une télécommande de portail.
Mon problème est le suivant, uniquement en mettant un fil sur une pin GPIO , l’etat du GPIO est constamment en train de changer (true/false) !
Ça devient du coup très difficile de lire les datas du récepteur.
As-tu trouvé une astuce ?
Je précise que je fais ça avec mon raspberry (j’ai pas d’arduino pour l’instant)
Il y a plusieurs méthode pour mieux recevoir avec le rpi :
1. Fixer une antenne de 17,3 cm sur al partie antenne de ton récepteur
2. Alimenter ton récepteur avec une alimentation externe au max de sa capacité (voir la fiche technique de ton récepteur)
3. J’ignore le programme que tu utilise mais le rpi à tendance à être lent, donc si tu a la main sur ton programme, essaye de le lancer en tache prioritaire (comme je le fait dans les miens via la fonction shedule_realtime)
4. Éloigne toi de tout parasites potentiels
5. Re vérifie une vingtaine de fois tes branchements.
ok merci 😉
Bonjour Idle
Tout d’abord, je te remercie pour la qualité de tes tutos. J’ai hâte de lire la suite.
Jusqu’à présent tout se passait bien. j’ai bien pris le temps de comprendre et de faire pas mal de tests. Le but étant pour moi de piloter ma cuve à eau de 3000 litres (mise en route de la pompe, commande d’électrovannes et mesures de la hauteur d’eau restante.
Je bute comme Stéphane sur un allumage régulier de la diode de contrôle. Elle clignote super régulièrement même sans GPIO connecté. J’ai vérifié l’ensemble des connexions 21 fois lol et c’est pas mieux. Stéphane ou Idle avez vous une nouvelle idée ?
C’est du super taff ce blog.
Yop, désolé pour la réponse lente ^^, j’ai eu un peu de maille 🙂
Donc les questions d’usages avant de te donner un semblant de piste foireuse 😀 :
Quel tuto tu suis
As tu bien pensé à faire l’apprentissage du code 1234567 par ta prise ?
As tu bien exécute radioEmission en sudo ?
As tu bien mis une antenne de 17.3 cm sur ton émetteur
As tu bien revérifie tes branchements (place une diode sur l’émetteur pour voir si un signal est bien envoyé)
As tu essayé de tester la portée en rapprochant la prise de l’émetteur de ton rpi ?
As tu les même référence de prise chacon que moi?
As tu essayé avec des alim externes?
Merci déjà de m’avoir répondu. Pas de chichi entre nous, je sais que tu as pleins de projets en cours alors point d’excuse pour les réponses tardives :p.
J’ai suivi ton tuto n°8 à la lettre déjà pour valider le fonctionnement de l’émetteur et du récepteur. J’utilise une alimentation externe et je m’étais imaginé que les diodes ne clignotent qu’a la réception ou l’émission d’un ordre. Alors qu’en fait elles clignotent et scintillent dés que j’actionne a à coté du récepteur un contact sec avec émetteur de ce type: http://hackspark.fr/fr/433mhz-wireless-door-sensor-door-switch.html
J’ai essayé de faire en script ce que tu as écris “Créer un programme (php par exemple) avec une boucle qui pendant 10 secondes vas flooder le “gpio read 2”…
Il faut dire que dans les années 80 le php ??? J’ai appris le basic sur Thomson M05
http://fr.wikipedia.org/wiki/Thomson_MO5 🙂 sans succès.
Pour la suite du tuto, j’attends mes prises Chacon et je reprendrai tout depuis le début.
Par contre, penses tu qu’il est possible de faire un montage identique permettant justement de capter un signal émis par des capteurs et de les réutiliser ?
Merci encore pour ton blog 🙂
Sur le tuto 8, il n’y a aucune intelligence derrière l’envois ou la réception des signaux, juste le montage, donc tu captera tous les signaux émis sur la fréquence de 433 mhz (et il y en a beaucoup car cette fréquence est idéale pour les courtes portées et autorisée sans licence)
Le php n’est pas assez réactif pour ecouter en temps réel un signal, mieux vaut s’orienter vers un ptit programme en C++ je pense 🙂
Concernant la capture et la ré-émision d’un signal, oui c’est possible pour tous les signaux qui ne sont pas “tournant” (c’est a dire que le signal change en fonction du temps, c’est le genre de sécurité qu’on peux retrouver sur les bagnoles)
J’en parlerais certainement sous peu, je dois hacker mes volets et mon portail de résidence sur le même principe
Merci pour tes réponses.
J’attends la suite avec impatience. :p
Bonsoir,
J’ai une question sur la sécurité.
Supposons que tous mes luminaires soient équipés avec ces prises radio.
Scénario : Boum, je me casse la gueule, je peux plus bouger (simple supposition), les secours arrivent et entrent (je ne sais pas comment j’ai pu les appeler, je ne peux plus bouger :-))… Problème, impossible pour eux d’allumer la lumière parce que les relais sont ouverts et (donc) les interrupteurs muraux inactifs (en plus il fait nuit :-))
Y a-t-il une solution qui ne neutraliseraient pas les interrupteurs?
Désolé, je viens de lire les coms et de voir que je n’étais pas le seul à me poser la question.
J’ai pu y lire quelques réponses et idées.
Ceci dit, si tu as des compléments à apporter… 😀
Je t’ai répondu sur le comm du dessus 🙂
C’est l’avantage de la radio, le circuit de commande peut être multiple bien que le montage de puissance soit unique, si tu regarde la video du tuto avec les prises chacon, tu verra que je les commandes a la fois via yuri, via l’interface web, via la télécommande classique de chacon ET via des interrupteurs radio fixés sur mes murs, ainsi les pompiers ne seront non seulement pas déstabilisés, mais ils ne verrons même pas la subtilité par rapport à un système classique 🙂
Merci pour ta réponse.
Peux-tu me dire quels interrupteurs tu utilises?
Promis, après je te laisse tranquille 😀
Chacon sur la vidéo ^^, mais construire un interrupteur maison et l’intégrer dans un interrupteur classique coûte moins cher
….. j’ ai vue çà : http://www.gotronic.fr/art-recepteur-marche-arret-sans-fil-he886-18101.htm
je sais bien que c’est plus cher et moins pratique qu’ attiny avec un récepteur et un relais , mais pas de Circuit Imprimé a faire , rentre dans les boites électriques , surement aux normes .
C’est surement pas le même protocole .
Mais pour une fois que je vois un produit commercial a un prix ~correct .
Ben c’est plus cher que chacon et moins facile à intégrer (faut couper du fil) mais c’est une solution oui ^^.
Salut je n’ai pas encore lu tout l’article car j’ai la flem et pas la possibiliter de faire le montage pour le moment mais ca viendra .
y a t il un code d’identification sur ton montage pour que si tu en fait 2 ou + elles ne s’active pas toutes ensembles !? sii c’est faisable tu pourrais ajouter un micro pour parler a yuri depuis toutes les pieces + capteur de T° de luminosité… pour envoyer toutes les info a la central domotique..
enfin bref encore bravo
La prise ne répondra qu’a un seul type de signal qu’elle “apprend” lors de ton premier branchement, donc oui il y a une identification qui permet de distinguer l’allumage d’une prise d’une autre prise 🙂
Pour le reste, je ne veux pas tout mettre dans une seule prise, je fais des tutos séparés pour que les gens comprennent mieux, mais le tuto sur le capteur de température est le suivant, donc tu as juste a fusionner les deux.
Hello,
Pour l’alim, il y a ce montage là :
http://www.sonelec-musique.com/electronique_bases_alims_sans_transfo.html
Il sort du 5V DC @40mA max, ce qui devrait être suffisant pour ton montage je pense (7mA Atmega + 20mA pour le relais, le reste je ne sais pas trop.)
Il y a aussi des composants qui font le même job (mieux pour l’intégration), mais impossible de trouver un distributeur (enfin, j’en ai trouvé 1, mais à 6€ pièce, c’est abusé!)
Matthieu D.
Merci pour le tuyau 🙂
j’ ai jeté un coup d’ œil très rapide et vu les schémas , voila mon avis ( c’est le mien ! ).
Pour simplifier , les premiers sont pour une consommation constante ( une Led ) pas de changement ( veille > commande de relais ) puis ils sophistiquent petit a petit le montage pour arrivé a une ” vrais ” alim. sans transfo. , mais là au niveau tarif , il commence a il en avoir pour aussi cher qu’ une toute faite , puis ce pose le problème du CI ( circuit imprimé ) qui alourdi le cout .
Pour finir le problème de puissance , si s’en est un , peut être résolut en choisissant/doublant certain composant .
Merci pour l’avis :), je vais donc rester sur les bon vieux chargeurs ipad à 1€ (en plus j’en ai commandé des supers mignons :p)
Super ce tuto, bon je suis paumé dans les commentaires mais j’ose 2 questions :
Pourquoi passer par l’arduino et pas programmer directement la puce avec rpi ?
Tu montres sur tes schémas une lampe pilotée, pourrait-on envisager piloter un radiateur électrique ?
Merci.
Aucune idée, je n’y ai jamais songé, et je n’ai jamais testé ^^, mais vu que le rpi dispose de SPI c’est théoriquement possible 🙂 (après j’ai un peu la flemme de tester ^^)
Oui, tu peux brancher n’importe quoi à ta prise à partir du moment ou ton relais le supporte, il faut bien regarder l’intensité max du relais et celle de la machine que tu connecte, genre le relais que je propose dans la liste matérielle supporte au max 10A, donc n’y branche pas ta machine à laver XD
Bonjour,
Comme je vois qu’il y a une palanquée de gens qui pensent qu’on peut couper/rétablir un circuit électrique comme ça sans aucun soucis, je me permet d’apporter quelques précisions.
Pour “piloter” des radiateurs électriques, à moins d’avoir de très vieux grille-pains énergivores qu’il faudra alors songer à changer, les radiateurs électriques comportent ce qu’on appelle un fil pilote avec :
2 assez dépassé, 4 ou 6 ordres.
Et comme son nom l’indique le fil pilote, bah il “pilote” le convecteur. Après le détail se trouve très facilement sur internet.
Le très gros avantage, plutôt que de ne plus alimenter ou réalimenter, à la hussarde, un récepteur électrique qui peut consommer jusqu’à 2,5kW. Ce qui provoquera, à ne pas en douter, un extra courant de rupture pouvant largement dépasser ce qu’encaissent les contacts du relai et foutre le feu, plus de 15/16A comme ça à la louche …
Le fil pilote lui ne consomme que quelques mA. ou tout au moins pas plus d’1A, ce qui sera beaucoup plus supportable par le relai, la prise et le convecteur par la même. Car c’est un récepteur de courant, qui comme tous les récepteurs n’aime pas trop être allumé/éteins/allumé/éteins….. Toujours ce fameux extra courant de rupture qui grille les ampoules fait arquer et parfois charbonner les interrupteurs etc.
Donc avant de vous lancer dans le pilotage d’appareils gourmands en courant, je parle bien de courant (Ampères) et non de tension, sur un convecteur c’est du 220V même sur le fil pilote,il serait très utile de demander conseil à ceux qui s’y connaissent un peu en électricité. Pour votre information, et sans vouloir vous foutre la trouille, le corps humain ne s’en sortira pas sans risque réel de séquelles irréversibles si il est parcouru par un courant de plus de 75mA pendant plus de 10s, c’est pas beaucoup hein.
Voilà donc ne chercher pas à couper la tension sur des appareillages, déjà doté d’ailleurs d”une commande interne faite pour ça, mais utilisez les caractéristiques mises à dispositions. Soit sur une ampoule ou une prise vous n’aurez pas le choix, mais sur un convecteur oui, alors servez vous du fil pilote.
salut encore une petite question est ce que ton montages est compatible avec les tellstcik ? cest petites clef usb qui permette de commander du materiel chacon depuis un pc ??je suppose que oui mais je prefere demander 🙂
Mes prises à l’heure actuelle imitent de très près les chacon, donc je suppute que oui :), dans la logique en tout cas ça devrait fonctionner, après il faut tester ^^
bonjour, voila j’ai un petit souci j’ai l’erreur avrdude: stk500_getsync(): not in sync: resp=0x00
pour pouvoir codé le pross en C++ j’ai fait pas mal de recherche et j’ai rien trouver merci
Cette erreur est un peu fourre tout, en gros c’est “je n’arrive pas à communiquer avec l’atmega” ^^, cela dit souvent le problème c’est que tu as mis dans l’ide un type de carte qui ne correspond pas à l’atmega, si l’atmega était livré avec un bootloader uno et que tu tente de le programmer avec un type de carte duemilanove, forcement ça vas pas lui plaire 🙂
merci de votre réponse rapide 🙂
mon Ardunio c’est un duemilanove 2009 AVR ATmega328 et les bootloader sont des uno bootloader + dip socket new date code 12+ ( atmega328-PU alors si je comprend bien ce n’est pas compatible ?? :/
atmega328-PU est compatible (c’est d’ailleurs ceux que j’utilise) je dis juste que sur l’arduino IDE, tu dois configurer le type de carte dans le menu de manière à ce qu’il corresponde au bootloader de ton atmega. 🙂
Great beat ! I wish to apprentice while you amend your site, how could i subscribe for a blog website? The account helped me a appropriate deal. I have been a little bit familiar of this your broadcast provided brilliant transparent idea
I don’t understand your question : do you want subscribe at my RSS feed ? Suscribe on blog ?
Salut IdleMan et félicitation pour ton blog trés clair et bien écrit, j’ai commandé tout le matos pour le lancer dans la domotique low cost 🙂
Pour le message en anglais du type (bot ?) ci-dessus, le seul truc qui l’intéresse c’est d’avoir un lien vers son site (sous l’avatar) sur ton blog… à dégager donc 😉
Au moins il parle de rpi et pas de viagra servant à financer une dictature quelconque ^^, donc dans le doute je laisse 🙂
Hello!
Tu modifierais quoi dans ton code pour stocker deux signaux captés?
Ou plutôt pour en mettre deux (ou plus) de référence directement à l’allumage dans l’EPROM? 😀
Il faut stocker les prochaines signaux via EEPROM_writeAnything(0, receivedSignal); en remplaçant le 0 par un autre chiffre qui correspondra à l’adresse du signal stocké 🙂 evidemment il faut modifier le code pour stacker les signaux au lieux de toujours enregistrer sur l’adresse 0
Merci 🙂
Mais du coup, j’ai du mal à cerner l’interet de stocker des trucs dans l’EPROM (oui je suis un noob :p)
J’ai fait un truc de ce style qui fonctionne pas mal pour commander 8 relais avec un atmega:
#include
int recepteurPin = 9;
int RPin[]={4, 5, 6, 7, 8, 10, 11, 12};
int ledPin = 13;
struct config_t
{
long sender;
int receptor;
}
signal;
struct signal_t
{
long sender;
int receptor;
boolean isSignal;
boolean state;
}
receivedSignal;
void setup()
{
pinMode(recepteurPin, INPUT);
for (int i=0;i<=((sizeof(RPin))/(sizeof(int)));i++)
{
pinMode(RPin[i], OUTPUT);
}
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
Serial.println("start");
digitalWrite(ledPin,HIGH);
}
void loop()
{
//Ecoute des signaux
listenSignal();
//Si un signal au protocol home easy est reçu…
if(receivedSignal.isSignal){
if (receivedSignal.sender==666){
Serial.println("Signal correspondant");
//On ferme ou on ouvre le relais en fonction du bit d'etat (on/off) du signal
if(receivedSignal.state)
{
Serial.println("Etat : on, fermeture du relais");
digitalWrite(RPin[receivedSignal.receptor],HIGH);
}
else
{
Serial.println("Etat : off, ouverture du relais");
digitalWrite(RPin[receivedSignal.receptor],LOW);
}
//La led clignotte 10 fois rapidemment pour signaler que le signal est le bon
blinkLed(2,200);
}
blablabla
}
Bon évidemment c'est absolument tout pompé sur ton code, mais j'ai pas eu besoin de stocker des trucs dans l'EPROM. Ce serait pour optimiser la vitesse que tu y stocke là ?
L’eeprom est une mémoire morte, de ce fait lorsque tu stocke une information dedans, tu peux la réutiliser même lorsque le circuit à été hors tension, c’est une sorte de mini disque dur si tu préfére mais qui peux contenir très peu de données.
Si tu souhaite conserver le signal sur le long terme, tu es obligé de passer par l’eeprom ou par une mémoire morte autre type carte sd etc…
Daccord 😀
Merci!
Hello,
Bravo pour ton blog, c’est très instructif! Je suis programmeur et je m’intéresse aussi beaucoup à la domotique. Le rasberry m’intéresse beaucoup mais j’ai l’impression qu’il me manque pas mal de petits trucs/connaissances pour commencer à faire des tweaks sympa.
Ou as-tu trouvé les cables, ta sorte de plaque ou tu peux planter tes éléments dedans, les diodes(faut des diodes avec certaines spécificités? ), les résistances(Comment tu sais quelle résistance prendre?)
Ces tweaks, tu as trouvé les matos comment? Par tes connaissances existantes ou il y a des places ou les commander?
Avec le recul, prendrais tu encore la raspberry ou un autre similaire?(Je pense notamment à la panda board, qui est bien plus complète de base($++ aussi))
Merci bien 😉
La plaque s’appelle une breadboard, j’ai acheté la mienne il y a longtemps sur conrad.fr, mais je te conseille plutôt d’en acheter une sur ebay, c’est bien moins cher.
Les diodes j’ai acheté un “pack” avec divers assortiments de diodes de plusieurs couleurs/tailles/intensités etc… ça me permet de bidouiller tranquillement.
Pour connaitre la bonne résistance à placer sur une LED, il faut appliquer la loi d’ohm (U = R*I, Tension(Volts) = Résistance(Ohms) * Intensité(Ampères) ).
En retournant la loi d’ohm tu as R = U/I, or la tension aux pour une LED, un courant de 20 mA (milliampères) est suffisant et les broches GPIO font du 3V3 en sortie, donc :
R = 3,3 / 0,02 = 165 ohms
Mais la c’est la théorie d’une grosse pipe en électronique qui parle, je ne peux pas t’assurer que je ne dise pas de grosses conneries 🙂
Perso pour les tests courts je ne met pas de résistances du tout, les LED résistent un certain temps, ce qui me suffit vu que les tests font rarement plus de 20 sc :p (je sais c’est pas bien).
Je reprendrais le rpi oui, la plupart des cartes concurrentes sont seulement l’oeuvre d’opportunistes qui profitent du fait que les gens ne savent pas/veulent pas connecter 3 composants à 4 centimes sur leurs board, pour vendre ces composants intégrés à 10 fois leurs prix.
Pour moi le rpi à tout ce qu’il lui faut de base, et de simples recherches sur le net + un peu de bon sens suffisent à le transformer en à peu près n’importe quoi
Merci bien pour ta réponse! Je suis pas sur d’avoir tout compris, pour moi si on mettait des résitance, c’est pour baisser la tension (car en série, on somme les résistances) que la diode allait recevoir.
Mais vais faire qques tests, j’ai commandé ma RPI, + 1 arduino(j’aimerais faire un ambilight like sur mon écran). Peut-on faire communiquer le RPI avec l’arduino?(pas forcément en radio, rien qu’avec des cables).
En tout cas merci pour ton blog, ca motive bien à essayer!
Oui on peux faire communiquer les deux par le port série, je te souhaite une bonne chance pour ton projet 🙂
Petit feedback, j’ai trouvé une autre source super intéressante:
http://forum.pcinpact.com/topic/165594-raspberry-pi-fabriquons-des-trucs/?p=2745571#entry2745571
Il est mentionné que c’est la tension des LED qui est importante(entre 2.2 et 3V suivant la LED), à 20mA.
Sauf qu’on alimente en principe en 5V, ce qui risque d’endomager la led à long terme.
5V à 20mA, avec la loi d’ohm, on a 250ohms(5/0.02), donc si on prend une led qui nécessecite 2.2V(et qui du coup bouffe 110 ohms(2.2/0.02)) il manque encore 140 ohms à combler par des résistances.
Si tu l’alimente via le RPI avec ses 3.3, tu as des résitances plus petites à mettre:
3.3/0.02 = 165 ohm
2.2/0.02 = 110 ohms
–> 55ohms
En gros pour calculer ta résistance, c’est plutôt (Tension à l’entrée – Tension fonctionnement diode) / intensité:
(3.3-2.2)/0.02 = 55 ohms 😉
J’ai que de très vieilles connaissances en électrotechnique, mais je crois pas me tromper 😉 Si jamais ca peut aider
Ils peuvent communiquer par I2C
Ces deux liens pourraient servir:
http://blog.mshmelev.com/2013/06/connecting-raspberry-pi-and-arduino.html
http://blog.mshmelev.com/2013/06/connecting-raspberry-pi-and-arduino-software.html
Salut,
Comme tout le monde, je vais commencer par te féliciter pour ton boulot, c’est plein de bonnes idées et de bons conseils (et de code ouvert, merci pour ça aussi).
Je voulais pour ma part contrôler ma climatisation avec mon Pi, ce qui a été déjà une petite aventure vu qu’il me fallait repiquer les codes IR de la télécommande associée. D’ailleurs je t’ai piqué la première version de PiHome pour faire la base de ma page de contrôle, n’étant pas développeur web ça m’a bien aidé.
Par contre je compte contrôler une autre clim et pour ça il me faut un autre émetteur IR dans l’autre pièce. Le plan est d’utiliser mon arduino pour ça, connecté via radio.
Là où je rencontre un problème, c’est que même en partant de ton code hcc – et d’autres que j’ai trouvés à droite à gauche – pas moyen de faire reconnaître les signaux à l’Arduino. En testant un peu en envoyant des impulsions en boucle de 1000us alternées avec des impulsions de 500us, je vois que mon arduino me remonte des valeurs de tempo de :
…
1229
603
1237
607
1228
612
1237
587
…
Je trouve que ça fait beaucoup de marge d’erreur. J’ai essayé avec un nanosleep, pas mieux. J’ai une raspbian par défaut, le code tourne avec les droits qui vont bien pour passer en realtime… as tu installé un kernel particulier pour ça ? Je sêche un peu là.
C’est toujours difficile de faire communiquer un rasp et un ardui/atmega en radio, tu peux la plupart du temps améliorer les résultats en :
Choississant un kit emetteur/recepteur de meilleur qualité
Plaçant des antennes en quart d’ondes sur les deux
Alimentant avec une source externe a l’ardui et au rasp les émetteurs/récepteurs
Alimentant au max de leurs capacité les modules radio
Merci pour la réponse.
Mon montage est alimenté en externe, j’ai un cable d’antenne (d’ailleurs ça porte assez loin pour moi, c’est à dire d’un bout à l’autre). C’est vraiment les temporisations le problème.
En mettant des affichages partout dans le code de l’arduino (c’est à dire en stockant les valeurs reçues dans un tableau et en analysant après coup à tête reposée, sinon on peut en rater) j’ai pu évaluer les valeurs de temporisations récupérées par l’arduino, qui sont souvent supérieures de 200 à 250us à l’attendu, même en passant par des boucles d’attente active dans le code de l’émetteur… J’ai du modifier les temps dans le code de l’arduino, et modifier les temps à l’état HIGH dans le code du Pi (là j’imagine que c’est l’Arduino qui ne suit pas mais ça me parait très étonnant vu que je ne fais que lire le pulseIn et le stocker en boucle dans un tableau pour analyse ultérieure). Bref, j’ai galéré, j’ai modifié les valeurs de temps à la porc, ça ne me permettrait sans doute pas de contrôler une prise du commerce mais ça fonctionne pour mon système, c’est tout ce qu’il me fallait. 🙂
Maintenant faut que j’étende le protocole, parce que je veux faire passer bien plus que du on/off entre les 2 🙂
…et puis que je teste la comm’ dans l’autre sens aussi.
Oaip, je pense que sur le long terme c’est mieux de créer une carte de transition pour le rpi qui semble être un peu attardé de ce coté la ^^
Hello,
trés sympa tes tutos … ils m’ont donné envie de reprendre un de mes projets.
je voudrais comme toi faire ma domotique que j’ai laissé en plan depuis longtemps.
lorsque que j’ai rénové ma maison(en 2001), j’ai tiré un bus (4 fils) pour mes volets roulants, mais quand j’ai vu le prix des modules (hager) j’ai mis des bons vieux bouton 😉
Avec l’atmega, je vais pouvoir faire ca moi meme à faible cout …
Par contre il y a un point dans ce tuto qui m’interresse tout particulièrement (qui n’a rien a voir avec mes volets) : la conso des prises !
je voudrais pouvoir surveiller la conso de certaines prises et je me demandais si tu avais des pistes pour réaliser ce genre de chose. C’est surtout au niveau mesure, comment mesurer la puissance consommée d’une prise (pour au final envoyer un signal analogique à l’atmega) ?
si tu as des idées je suis preneur !
autre point, pour l’alim 250ac->5dc de l’atmega, je pense a une alim capacitive genre http://www.astuces-pratiques.fr/electronique/alimentation-capacitive-sans-transfo#
il semblerait qu’il existe un ci qui fait ca bien, le MAX610, mais je n’arrive pas à le trouver. connais tu d’autres références ?
mon dernier probleme est l’encombrement: comment mettre tout ca dans une prise relatievement estétique ? y a t’il des boitiers pour y ajouter une carte … ou faut il attendre que les imprimantes 3d soit abordables 🙂
ps: je débute en electronique 🙁
merci d’avance pour tes idées
++
Pour la consso je comte m’y mettre un de ces 4, mais je n’ai encore rien recherché de ce coté la désolé :), tu peux peut être regarder du coté des shunt (sorte de résistances qui résistent à de grandes tensions) et appliquer une loi d’ohms pour mesure ton courant, un de mes lecteur à fait un truc du genre pour surveiller la consso d’une île, mais je n’en sait pas plus.
Ça m’a l’air intéressant cette histoire de transfo capacitif, après mes expériences avec les transfo maison/chinois/low cost m’ont appris à me méfier, ça fait déjà 3 fois que je manque de cramer mon chat :); à creuser.
Le must pour faire des boitiers adaptés, c’est les légos, c’est pas trop cher (quoique ça a bien augmenté) c’est en plastique , c’est modulable, tu peux laisser cœur à ta créativité etc.. :), après il faut penser récup, beaucoup de tupperware, conteneur à bouffe un peu classes peuvent servir 🙂
Super dangereux, le neutre est directement relié au 0V du raspberry !!! si il y a un cour circuit au 230V le Raspberry va le payer… tres cher… et toi aussi peut etre…
Bonjour,
Dans le cas de l’alimentation du Rasp oui tout à fait d’accord, mais sur les modules 433mHz utilisés dans les prises c’est ce qui est employé, sinon bonjour l’encombrement.
D’ailleurs je suis prêt à parier que même sur les Chacon, ou autre marque certifiées CE, c’est du kif.
Je n’ai pour l’instant que de très vielles prises Superstar, mais lorsque je les ai ouvertes je n’ai jamais vu de transfo. Par contre il y a une très belle capa couplée à plusieurs résistance donc le montage capacitif.
D’ailleurs au sujet de ces prises Superstar marquées APT-2305, je galère pour trouver la trame à envoyer.
Le protocole semble être de l’ARC, de toutes façons j’ai paumé la telco donc si quelqu’un à des infos je suis preneur, sinon elle finiront à la poubelle.
… les légos … excellent ! j’aurai jamais pensé à ca 😉
pour info, je me suis amusé a démonter (enfin, exploser à coup de marteau) une ampoule à diode 220v, c’est trés instructif ! meme si le circuit retranscrit sur papier me laisse dubitatif, ca ressemble bcp à une alim capacitive, mais la mesure en sortie (diodes) me fait penser que mon voltmetre à trempé dans la biere (300v DC !!!). Je crois que je vais finir par exploser une mini alim usb à l’occas 🙂
Sinon, oui le shunt, ca à l’air de le faire pour le “wattmetre”, je vais creuser de mon coté aussi, parce que meme si ce n’est pas ma priorité, ca me botterait bien de créer une communauté autour de la conso/mesure domestique, genre “suivez en ligne votre conso en temps réel” et damer le pion à edf et pourquoi pas gdf ! … l’internet des objets est en marche …
et merci pour ta réponse !
++
Ya pas de quoi :), si t’as envie de partager un article un de ces 4 sur ce blog concernant les mesure de consso n’hésite pas à me “poker” je te faire un compte invité 🙂
Salut, pour programmer l’atmega on peut pas tout simplement enlever l’atmega dejà présent sur l’arduino puis le remplacer par celui que l’on veut programmer et “télé-verser” le code ?
On peut tout à fait procéder comme ça oui :), je passe par un circuit externe car dans l’avenir il nous sera nécessaire de pouvoir passer outre le support de la carte 🙂
ok ^^
pour commencer, bonsoir et surtout bravo pour ces bon tutos.
tes prises sont tout a fait ce que cherche a faire, perso j’aimerai reproduire du “zwave” (reseau maillé, emission de l’état) mais pour beaucoup moins cher (chez moi j’ai pas loint de 30 points lumineux et a plus de 50€ le module de reception ça va vraiment pas le faire).
dans cette optique j’ai commandé hier un arduino + tout les “petits” accessoires necessaires.
je precise que je suis totalement novice en radio-frequence et en programmation, j’ai de bonnes notions en electrique et de petites connaissances en electronique.
néanmoins, je possède une alimentation de labo (une petite qui demandera surement une remise en etat), une insoleuse (fabrication maison), une graveuse verticale ainsi des programmateurs d’eeprom.
je viens donc ici pour apprendre mais aussi pour proposer mon aide (enfin si je peux aider)
en tout cas j’ai trouvé ça pour l’alimentation:
http://www.astuces-pratiques.fr/electronique/alimentation-capacitive-sans-transfo
il existe des modules vides pour rail din, ce qui pourait etre utile pour integrer des modules de reception directment dans les coffrets electrique.
a tres vite, @!3x
En voila un bel équipement ^^, jme sent minable avec mon tournevis, ma breadboard et ma vielle pile en fin de vie XD
L’alim capacitive on ‘men à déja parlé et je trouve ça très interessant effectivement :), il faudrait que je teste mais je manque de temps et surtout, je suis très méfiant avec les solutions d’alim alternative étant donné que j’ai echappé 2 fois à la mort en testant des truc chinois 😀
surtout quand je vois ce message en fin :
Bref je sais pas si je me sent prêt pour ça tout de suite mais je garde l’alim dans un coin de bookmark :p
oui, équipement gardé de l’époque ou canalsat et tps etaient encore en seca1 et donc facilement … heuuuu …. modifiable XD
et bien que je soit d’accord avec toi sur la mefaince a avoir face aux alim capacitives, il faut bien avouer que les prises et modules du marché n’ont pas de transfo.
une autre piste a creuser serait du coté du max610, un convertiseur 230/5V en boitier dil. seulement voila, il y a deux problemes (sans parler de l’absence d’isolation entre le primaire et le secondaire) il semblerai qu’il soit obselete et il couterai dans les 6€ unitée, ce qui ferait grimper de façon assez significative le cout d’une prise.
a suivre …
Je viens de me rendre compte que le relais que j’ai acheté est alimenté en 7A pour 240V au lieu de 10A.
Est ce que cela ne va pas poser de problèmes si je le relie au secteur de mon appart ? ( genre explosion )
Merci.
Ca dépends à quoi tu le relie, si P=U*I alors tu ne dois pas relier des appareils consommant une puissance supérieure à 1680 W a ton relais, sans quoi le relais en question risque de souffrir.
Merci pour la réponse rapide. J’comptais relier une lampe, alors ça va l’faire.
Salut Idleman,
J’ai trouvé ton site par hasard sur google en cherchant des articles domotique low cost compatible avec le Raspberry. J’ai trouvé pas mal de sites, mais le tien est pile ce que je chercher. Merci beaucoup pour les informations que tu échangent avec nous.
J’ai trouvé un relais pilotable à distance sur ce site :
http://hackspark.fr/fr/433mhz-codec-adaptive-wireless-relay.html
Il coûte un peu cher (env. 10euros) et doit être alimenté en 12v. Par contre ce qui m’a interpellé c’est le circuit de commande (2 petites puces). Je ne sais pas ce que c’est et si on peux le savoir mais çà à l’air de bien concurrencer l’atmega au niveau taille ? çà pourrait être pas mal de savoir ce que c’est.
Ensuite, j’ai une question qui pourra paraître toute bête pour certains mais comme je ne suis pas très calée en électronique (on est deux ;)).
Voilà, je voudrais utiliser mon Raspberry pour ouvrir la porte d’interphone de chez moi. Je m’explique, dans mon appartement le système du combiné qui permet d’écouter qui sonne à la porte et d’ouvrir la porte est tout simple. Il n’y a qu’un bouton qui permet à la fois de décrocher/raccrocher et d’ouvrir la porte avec un pousse-bouton de ce type :
http://dx.com/p/diy-self-locking-push-button-switches-20-piece-pack-138327
Le bouton poussé à une certaine distance raccroche et si tu le pousse un peu plus, il ouvre la porte. Le système est simple et il faut juste fermer un circuit pour laisser passer le courant et ouvrir la porte.
Ce que je voudrait faire, c’est fermer ce circuit à distance avec mon raspberry en insérant un récepteur radio 433Mhz et un composant supplémentaire pour fermer le circuit ou pas : genre un relais mais pour du faible courant.
Qu’est-ce que je pourrais utiliser ? Un transistor ?
Merci d’avance pour vos lumières. En éspérant ne pas avoir été trop long 😉
Bonjour,
je voulais avoir des conseils sur la façon de faire pour effectuer votre montage sur la plaque mais dans une boite que ça ne fasse pas gros bloc au bon milieu de mon apart surtout que je veut effectuer divers taches.
La il faut être créatif, perso j’affectionne beaucoup des légo pour créer la boite, pour la plaque il faut acheter une plaque PCB à trou dispo sur ebay & co 🙂
j’ai acheté chez DépotBrico un set de 3 prises télécommandées pour 13€…je pense que l’on peut faire de la recup et puis pour le prix je ne suis meme plus sur qu’il faille s’embeter a refaire des prises ( outre le fait de vouloir s’amuser, et de vouloir rajouter des composants supplémentaires). Me reste plus qu’a recuperer le code de transmission de la télécommande pour piloter via Rpi et normalement ca devrait le faire. A savoir que la telecommande pilote trois prises et qu’il existe 4 reglages différents sur chaque telecommandes ( soit 12 prises télécommandées) ca fait deja pas mal, je redis lorsque j’aurais démonté la prise pour savoir s’il reste de la place pour y stocker d’autre capteurs)
Méfie toi c’est certainement le plus dur :), il est difficile de comprendre et d’imiter un protocole radio sans aucune doc, j’ai bien mis 1 mois pour le home easy alors qu’il y a des bribes de docs sur le net.
Après avec un peu de chance le protocole de ces prises low cost n’est pas trop compliqué à imiter 🙂
le lien des prises:
http://www.bricodepot.fr/essey-les-nancy/lot-de-3-prises-telecommandees/prod11199/
Salut,
super série.
J’aimerais me mettre à l’arduino. Je sais qu’à la base tu n’es pas spécialiste, mais tu as l’air de t’adapter vite, et de maîtriser rapidement les sujets. C’est pourquoi j’aimerais ton avis sur cette carte dont le prix est intéressant.
Merci
La duemilanove est la carte la moins chère d’arduino, c’est sur celle la que j’ai commencé mes bidouilles et je l’aime beaucoup, elle se prête tout à fait aux gens qui veulent commencer.
Après au niveau du prix c’est une enchere donc elle peut monter encore ^^, perso si tu cherche une duemilanove à bas prix je serais toi j’achèterais une chinduino, ça te coutera 2/3 € de lus mais pas de frais de ports et l’assurance d’avoir un clone de la duemilanove neuf et fonctionnel en achat immédiat.
Après en ce qui concerne l’avis tout dépends de ce que tu souhaite faire avec 🙂
Hello,
excellent tuto………….. vraiment une mine d’or!!! Pour ma part je compte piloter mon arrosage avec ta solution. Donc en entrée des relais je vais avoir du 24V AC a la place du 220. Tu crois que ce peux poser problème?
Merci
Absolument aucun non :), l’essentiel pour la partie qui n’est pas “commande” c’est de ne pas dépasser la puissance max autorisée sur la notice du relais.
Merci…………….c ce que je pensais aussi!!
autre amélioration a prévoir : pouvoir connecter un vrai interrupteur en parallèle du module. J’ai regarder ton code y aurait juste a rajouter la gestion d’un IO supplentaire non?
Oui il y a peu de modif à faire, faudrait juste que j’ai un peu de temps et de motiv pour l’améliorer, les améliorations prévues sont multiples :
ah…. juste un petit detail…..quand tu dis 6$ tu ne prends pas en compte le convertisseur 220V vers 5V pour alimenter l’ATMEL. D’ailleurs si tu as de bonne adresse ou l’on peut trouver ça pour pas cher je suis perneur
Si tu pars de la je ne prends pas non plus en compte le prix du rpi, ni celui de la breadboard, du fer à souder, d’edf, de la paye horaire et de la TVA sur l’étain XD !
Plus sérieusement tu peux trouver des alims pour chargeur d’iphone à 1€/1,50€ sur ebay, mais fait bien gaffe aux normes, certaines d’entre elles peuvent te pêter dans les doigts :p
salut ici j’ai un soucis quand je tente d’envoyer vers la carte j’ai une erreur de compilation avec les erreurs suivantes :
C:\arduino-0018-fr\libraries\EEPROMAnything/EEPROMAnything.h:5:46: error: Arduino.h: No such file or directory
C:\arduino-0018-fr\libraries\EEPROMAnything/EEPROMAnything.h: In function ‘int EEPROM_writeAnything(int, const T&)’:
C:\arduino-0018-fr\libraries\EEPROMAnything/EEPROMAnything.h:52: error: expected initializer before ‘*’ token
C:\arduino-0018-fr\libraries\EEPROMAnything/EEPROMAnything.h:55: error: ‘p’ was not declared in this scope
C:\arduino-0018-fr\libraries\EEPROMAnything/EEPROMAnything.h: In function ‘int EEPROM_readAnything(int, T&)’:
C:\arduino-0018-fr\libraries\EEPROMAnything/EEPROMAnything.h:62: error: ‘byte’ was not declared in this scope
C:\arduino-0018-fr\libraries\EEPROMAnything/EEPROMAnything.h:62: error: ‘p’ was not declared in this scope
C:\arduino-0018-fr\libraries\EEPROMAnything/EEPROMAnything.h:62: error: expected primary-expression before ‘)’ token
C:\arduino-0018-fr\libraries\EEPROMAnything/EEPROMAnything.h:62: error: expected primary-expression before ‘void’
j’ai essayer de mettre une autre puce Artmega et idem, je n’y connait rien en arduino donc si quelqu’un peut jeter un coup d’oeil, merci
As tu bien acheté l’atmega AVEC le bootloader inclus ?
Car ça ressemble a une erreur de bootloader manquant ça…
oui merci c’était bien ça et ça marche parfaitement !!
par contre je rencontre une autre difficulté, pour mes volets roulant :
avec ‘envoie de commande ça descend bien mais quand je le fait monter il va jusqu’au bout et redescend (le relais claque) comme si il avais reçu l’ordre de descendre.
quelqu’un sait d’ou ça peut venir ?
merci d’avance
Il vas falloir expliquer un peu mieux ton branchement parce que sans plus de details on peux difficilement t’aider ^^ tu as branché quoi, ou comment et pourquoi?
Hello
Je suis avec intérêt tous ces articles, je suis en attente de mon kit de “départ” (rpi et arduino) pour jouer aussi à ce jeu 🙂
Pour les prises, j’ai trouvé des multiprises avec transfo 5V USB intégré, ce qui fourni l’alim nécessaire au kit, reste a trouver un modèle avec assez de place pour caser tout cela.
Par contre pour la prise de température, j’ai peur que les données soient faussées dues à la chaleur générée par la prise (pas énorme mais assez pour changer de 1-2°
Après sur la prise, je pense ajouter un UM3750 pour le codage, j’ai trouvé pas mal de prises a bas prix utilisant ce système dans les magasins de brico
N’hésite pas a parler de tes projets sur la section projet du fofo histoire de partager ton expérience avec nous tous :), je crois d’ailleurs que géo a déjà posté un projet similaire dessus tu peux peut être t’en inspireze
Pas de soucis, le matériel doit arriver sous peu.
Yop !
J’aurais quelques questions pour toi , je cherche a faire un montage un peu pareil pour mon bateau mais j’ai différent soucis:
je trouve pas/plus les 5 résonateur que tu as mis sur ebay et j’ai un peu peur de me tromper en achetant n’importe quoi, pourrais-tu me donner un lien sur ?
Mon bateau a des batterie 12v et je cherche a le convertir en 5 v pour pouvoir alimenter la atmega , quel composant serais nécessaire ?
Et dernière question , je cherche a pouvoir laisser passer du 12 v grâce au pin de l’atmega ( le même principe que le relais) mais pour un courant plus petit , existe t’il un composant capable de faire sa ?
Merci a tous !
Pour passer du 12 V en 5V tu devrais pouvoir acheter un régulateur, ça te coutera moins cher qu’un transfo, cherche quelque chose comme regulator 12v/5v sur ebay
Concernant les résonnateurs n’importe lequel fonctionnant sur du 5v en 16mhz fera l’affaire, dans l’idéal tu devrais même pouvoir prendre des fréquences plus hautes mais je n’ai jamais testé.
Si tu ne souhaite pas utiliser de relais pour faire passer ton 12V, tu dois pouvoir t’orienter vers les MOSFET, des sortes d’interrupteurs électroniques un peu moins chiants à manœuvrer que les transistors et un peu moins cher et encombrant que les relais.
J’ai acheté tout ce que tu m’a dis 🙂 mais j’ai acheter un pack de transistor pour être a peut près sur que sa soit bon mais pourrais tu me confirmer ?http://www.selectronic.fr/assortiment-de-100-transistors.html
Merci pour ta réponse 🙂
Salut idle !
Juste une petite question, les resonateurs ne sont plus dispos, je ne trouve que http://www.ebay.fr/itm/5-Pcs-CERAMIC-RESONATOR-1-80MHz-1-800-MHz-3-PIN-Free-Shipping-/321007675251?pt=LH_DefaultDomain_0&hash=item4abd8c6773 (18mhz au lieu de 16), est il possible d’utiliser ceux ci ? (les autres 16mhz dispos coutant beaucoup plus cher)
Merci 🙂
Tant que tu prends au dessus ça devrait pouvoir le faire, après je ne garantis rien 🙂
bonjour serait il compliqué de brancher une webcam au raspberry pour qu’il détecte les zones de la pièce éclairée ou non et donc déduire quelle lampe est allumée pour fournir un retour d état ?
Bonjour: oui :), bien plus compliqué que d’installer des retours filaires 🙂
Coucou !
J’ai beau chercher sur internet mais je ne troue pas a quoi sert l résonateur dans ton montage :/
Aurais-tu une explication a me donner ?
Et est-ce-que si j’utilise la atmega sans les ondes radio mais seulement avec des ” delay(1000);) , aurais-je besoin d’un résonateur ?
Merci
Le résonateur sert d’horloge en 16 mhz pour l’atmega, ça évite d’avoir à utiliser l’horloge interne de 8 mhz un peu faible pour ce qu’on veux faire et qui nous obligerait a modifier le bootlader.
Techniquement tu peux utiliser l’atmega sans le résonateur même pour la radio mais comme je le disais il te faudra modifier le bootloader (il existe pas mal de tuto a ce sujet sur le web) et ça risque d’être parfois peu stable.
Merci pour tes réponses ,
Pour mon projet j’ai besoin de 7 pins , 3 pour des led , 3 pour des relais ,1 pour un bouton poussoir mais je ne trouve que 6 digital pins (pwm) puis-je utiliser un pins autre que pwm ? Merci
Tu me parle du rpi ou de l’atmega ? Sur le rpi tu peux utiliser quasiement tous les pins, même si certains sont normalement plus voués a des protocoles de transmissions particuliers comme I2C,UART etc… fie toi a ce schema :http://blog.idleman.fr/oangyxoa/2012/08/254px-GPIOs.png .
Non je parle de l’atmega
Il y a 14 pins digitaux sur l’atmega, fie toi a l’image de sa présentation sur le fofo : http://forum.idleman.fr/discussion/11/electronique-atmega/p1
De plus tu peux utiliser les pins analogiques en tant que pin digitales en faisant varier la tension par palier direct de 3v3 (enfin de la tension d’un pin digitale sur l’atmega je sais pas si c’est la même que sur le rpi faut regarder au multimètre).
Enfin tu peux multiplier les pin en utilisant les shifts registers comme dans le tuto 20
Bonjour,
Super tuto !
Petite question sur la puissance acceptée par la prise, jusque quelle puissance peut montée avec ce type de prototype ?
Mon but est de faire une prise qui sera capable d’encaisser jusqu’à 2600W (centrale vapeur où je souhaite éteindre la prise juste au cas où)
As-tu eu le temps de prévoir le retour d’état si le contrôleur interroge la prise depuis ce tuto (je sais que tu bosses sur Ydle et que c’est pas évident) ?
Merci de ton aide,
Sachawolf
J’ai peur que la carte relias proposée ne soit trop juste pour une telle puissance, la carte relais actuelle fait 10A, si P=UI alors la puissance max supportée sera de 2200 W, il te faut donc un relais avec une plus grosse intensité (trouvable sur ebay mais un peu plus cher je pense).
Pour le retour d’etat je n’ai pas trop investigué la dessus, je me concentre pour le moment sur d’autres types de recepteurs/emetteur histoire de voir plein de trucs histoire de faire un tour général de tout ce qui est possible avant de perfectionner/fignoler tout ce qu’on aura déja vu.
Merci pour ton retour,
Pour le moment, j’ai commandé les prises Chacon D-IO (par 3) qui supportent pas moins de 2500W.
Je vais me basé sur tuto pour les piloter via un raspPI ou un cubie à voir le WAF result 😀
J’essayerai avec ce tutoriel plus tard en prenant comme tu me l’a conseillé un relai plus costaud.
Encore chapeau pour cette série de tuto.
@ ++
Salut bravo pour ton blog
comment t’y prendrais tu pour un retour d’état pour pas trop cher
sinon je pense qu’on peux se passer de l’arduino pour la programmation des atmega en recyclant un cable usb de nokia http://pmr446.xooit.com/t1672-Recycler-un-cable-data-de-GSM-Nokia-pour-la-prog.htm
En realité il existe même des cables voués a la programmation directe d’atmega qui coutet une misère sur ebay, mais je n’arrive pas a retrouver la ref 🙂
Après je pense que c’est agréable de commencer avec une plateforme confortable comme l’arduino duemilanove quand on débute, ça fournis une source d’alim en plus et ça permet de faire les tests sans trop se compliquer la vie, c’est pas au prix que ça coute 🙂
Pour un retour d’etat il faut simplement rajouter un emetteur a la prise et un recepteur au rpi (donc acheter deux kit rf au lieu d’un idéalement) puis modifier le protocole dans le code de l’ardui et du rpi pour que le rpi attente un retour régulier de l’etat de la prise et que la prise émette régulièrement son état (après ya mille façon de faire ça, on peux aussi imaginer que l’atmega attente l’interrogation du rpi au lieu de balancer bêtement son etat a tout bout de champs)
L’idée d’utiliser la carte Arduino est super par rapport à son prix! par contre l’ATmega est vraiment un gros MCU pour un si petit travail à effectuer. sais tu si d’autres MCU plus petits pourraient convenir pour l’utilisation de la carte Arduino?
Super blog, au passage!
J’avais pensé à l’attiny qui peux fonctionner avec le même code que l’atmega (a quelques bidouilles près) mais je n’ai jamais eu le temps de me pencher sur sa programmation, après c’est presque el même prix que l’atmega donc on gagne seulement en taille (et peut être en consso)
Salut,
Je me demandais s’il était possible de faire un système d’interrupteur piloté par radio tout en gardant une installation “classique”?
J’ai pensé à peut être faire un système de va et vient à 3 interrupteurs (2 physiques et un logique piloté par radio)
quelque chose dans ce genre est il faisable selon toi ou y a t’il une solution plus simple ou plus efficace?
http://i76.servimg.com/u/f76/16/24/52/32/gaine_10.jpg
pour le schéma du va et vient
Je ne suis pas électricien du coup je suis assez mauvais quand il s’agit de relier ça au système classique, personnellement pour une installation définitive (le jour ou j’aurais une maison a moi ^^) je préfèrerais tout mettre en filaire, la radio pouvant être “interceptée” par tes voisins :p, et puis le filaire est plus fiable qu’il s’agisse de la transmission du signal ou du retour d’état.
Or en filaire le pb ne se pose pas puisque tout peux fonctionner sur le même principe a partir du moment ou tes interrupteurs sont reliés a ton rpi et non au circuit de puissance.
Ok pas de souci 🙂
Je pense que je vais me tourner vers du tout prêt 🙂
http://www.ebay.fr/itm/MODULE-RECEPTEUR-1000W-POUR-SYSTEME-SANS-FIL-CHACON-/380160367078?pt=FR_YO_MaisonJardin_Bricolage_InstallationElectrique&hash=item588352d9e6
Après contact avec le vendeur c’est ce module qui permet de conserver l’interrupteur d’origine
http://cgi.ebay.fr/MODULE-ON-OFF-EXTRA-PLAT-200W-CHACON-/380359213577?pt=FR_YO_MaisonJardin_SecuriteDomotique&hash=item588f2d0209
Pour un vas et viens a 3 interrupteurs il faut utiliser un telerupteur et des poussoirs.
On peux donc remplacer les interupteurs classique de la maison par des poussoirs relié a l’arduino et des relais qui alimentent les ampoules.
quel cable utiliser pour relier les arduino et le rasp en filaire sur une distance d’au moins 10m?
si on pouvais utiliser du cable telephone ou reseau ca me plairait mieux que le sans fil!
En plus ca doit etre bien plus facile de gerer le retour d’etat de cette maniere. Les protocoles sans fils c’est quand meme compliqué.
Si tu gère l’i2c tu peux relier le rpi et les ardui avec de simples files électriques, je suis en train de me renseigner la dessus pour mon projet de porte domotique, j’attends mon convertisseur de tension pour I2C (parce que les tensions doivent être les mêmes pour communiquer sinon tu grille une des deux cartes (enfin ya des cas particulier ou c’est safe mais c’est tout un bordel))
Tu fais tout simplement comme sur le schéma ci dessous (ce qui te permet de ne pas creuser des trous dans les mur car tu réutilise l’installation)
http://img4.hostingpics.net/pics/528617gaine10.jpg
Tu remplaces juste tes inter par des poussoirs et tu ajoutera un code qui passera a de 0 a 1 ou de 1 a 0 en fonction de l’état actuel le relais 5v a chaque pression sur un des poussoirs).
Pour le télérupteur c’est encore plus simple soit tu met le même système qu’ici derrière un poussoir de l’instal (n importe lequel) ou si t’es un fou tu le met direct sur le télérupteur entre la Phase et l’entrée Bobine (comme si c’était un poussoir quoi)
Salut IDLEMAN sympa ce montage je vais le tester trés vitre car je ne vais bientot plus avoir de chacon de dispo, je planche aussi sur le truc de la conso electrique, ma question est peut etre idiote mais pourais ont le faire avec un ampermetre comme celui-la (http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MAIN.ArduinoExpertCanLcdCapteurCourantACS714) ??
le faire quoi ? 🙂 Capter le courant consommé via ce composant ? Il semblerait que ce soit tout à fait faisable oui :), note que tu dois pouvoir trouver le composant moins cher genre : http://www.ebay.fr/itm/20A-Range-ACS712T-ELC-20A-Current-Sensor-Module-Free-Shipping-/181091439790?pt=LH_DefaultDomain_0&hash=item2a29e414ae (a verifier si la différence d’amperage change quelque chose ou pas)
Exactement pour monitorer la consommation électrique. Je trouve un électronicien au plus vite pour vérifier cette histoire d’ampérage.
Etant trop stupide pour avoir reussi a poster sur le forum je partage ici une ebauche de code pour faire une sorte de telerupteur, controlable soit par poussoir soit par RF.
Edit idleman : maintenant que tu peux te connecter sur le fofo tu pourrait le mettre dessus ? 😀 Je t’avoue qu’un si long commentaire risquerais de mettre pas mal de lecteurs sur les rotules ^^
Edit idleman : maintenant que tu peux te connecter sur le fofo tu pourrait le mettre dessus ? 😀 Je t’avoue qu’un si long commentaire risquerais de mettre pas mal de lecteurs sur les rotules ^^
Je suis tombé la dessus en cherchant comment faire de l’I2C sur longue distance (un bordel)
http://www.instructables.com/id/A-credit-card-sized-Ethernet-Arduino-compatable-co/
Ca nous permet d’utiliser directement un lan pour pas cher du tout.
plus securisé et rapide que le rf433 on econnomise les emeteurs recepteurs de chaque esclave pour s’offrir un petit hub pas cher. on a juste besoin d’un recepteur si on veux utiliser une telecommande rf.
Vous en pensez quoi?
Une autre question bete, vu que c’est l’été est ce qu’on peut se passer d’insoleuse? L’aprem a bronzer sous les infrarouge de papa soleil ca devrais le faire?
Pas mal du tout :), après faut voir si c’est pas trop chiant a construire et que les fournitures sont pas trop chères à acheter cela dit ça a l’air assez bien détaillé c’est un bon point 🙂
Par contre quitte a utiliser du filaire je pense qu’une communication I2C entre le rpi et l’atmega sera moins couteuse à mettre en place.
Pour ce qui est de l’insoleuse j’ai bien peur que papa soleil ne suffise pas a lui seul 🙂
Oui I2C est plus simple mais marche tres mal a plus d’1m. J’ai au moins 3 esclaves a 6/7m du raspi d’ou l’idée du reseau. meme si le rpi plante on peux tjr acceder a l’arduino directement car il heberge sa propre page web.
Super tuto ça marche chez moi mais impossible d’avoir une portée suffisante avec les émetteurs/récepteurs achetés sur Ebay. Je ne dépasse pas le mètre.. J’ai mis des antennes de 17cm, j’alimente le récepteur en 5v tout pile, j’alimente l’émetteur en 5v et j’ai 1 mètre de portée :-(. J’ai essayé d’alimenter l’émetteur en 11,95v (12v maxi) là ça ne fonctionne plus.
Je vais tester avec du 9v sur l’émetteur pour voir… si la portée n’augmente pas je chercherai une autre techno (Xbee, ZWave, …)
Bonjour Idleman,
Je me dirige vers toi car j’ai beaucoup apprécié tout tes tuto sur le Raspebrry.
As-tu déjà utilisé les Attiny ?
Si oui j’ai un soucis… voila:
– Un Arduino avec un module d’émission RF 315Mhz.
– Un Attiny avec un module de réception RF315Mhz.
L’Attiny ne reçoit pas d’informations alors que si je mets un Arduino cela fonctionne.
J’ai changé de librairie spéciale Attiny, y avait des erreurs au début, mais après quelques recherches j’ai trouvé des solutions mon code n’a plus d’erreur.
Si tu as déjà réalisé cela même avec un Raspberry, merci de me tenir au courant
Cordialement
Romain
J’ai des Attiny mais je ne les ai pas encore branchés a mon système dsl ^^, j’avais fait une petite tentative a une époque mais l’attiny a grillé au premier essai (sans raison valable il était correctement alimenté) du coup j’avais plus que des atmega alors j’ai continué dans ce filon, il faudra que je m’y remette maintenant que j’en ai reçu d’autres
Bonjour bonjour,
Tu as fais vraiment un très bon site. Les tutos sont très complets, et pile poil le genre de bidouille que j’aime 🙂
Mais j’ai une petite question sur ce tuto.
Puisque tu enlèves le microcontroleur de l’arduino pour programmer un autre Atmega en passant par un ptit montage. Pourquoi ne pas placer l’Atmega à programmer directement sur l’arduino à la place de celui précédemment enlevé ? Et de le programmer de la même manière avant de le retirer ?
Comme je l’ai dit dans les commentaires précédents (oui, il y en a 240 alors je tolère les doublons ^^) il est possible de faire des deux façon, je privilégie celle ci car elle permet mieux de comprendre quelles pattes de l’atmega sont ciblées par la programmation et cela permet de reprogrammer un atmega qu’on ne pourrait pas bouger (soudé en plaque ou inaccessible dans un boitier)
Bonjour,
Quel type de prise as-tu utilisé exactement ?
Merci d’avance.
Je ne comprends pas la question : nous fabriquons notre prise dans ce tuto, nous n’utilisons donc aucun type de prise vendu dans le commerce…
bonjour à tous,
Pour info pour miniaturisé l’arduino et dont le cout est pratiquement comparable à ta solution.
C’est l’arduino pro mini
A ce jour il se trouve pour 2,70 € livré
http://www.ebay.fr/itm/Arduino-PRO-MINI-ATMEGA328-5V-16M-MWC-avr328P-Development-Board-/271251071444?pt=LH_DefaultDomain_0&hash=item3f27d2e1d4
Pour le programmer, c’est comme ce que tu fais…..
http://www.zem.fr/arduino-utiliser-un-arduino-uno-comme-programmateur-ftdi/
@+
Lamalice
Yop, c’est pas mal mais ça reste plus cher pour la même utilisation et une taille plus grosse que l’atmega seul, du coup ça en perd un peu de l’intérêt.
Bonjour a tous,
Merci pour ces tutos que je trouve tres interessants.
Je voudrais reagir sur ce dernier commentaire car en cherchant des atmega328 je ne trouve rien a moins cher que la proposition de lamalice.
Je trouve des attiny13 a 1.3€ piece ou a 0.7€ par paquet de 10.
l’attiny85 est a 2€.
tous ces prix s’entendent port inclus.
le moins cher que je puisse trouver pour atmega328 est de l’ordre de 4.4 €
Alors si on trouve moins cher ce serait sympa de donner qqs liens.
Merci et bon courage.
hutu
Super tuto. Bravo !
Comment modifier le code Arduino et la commande shell pour piloter plusieurs relais (faire fonctionner la lampe-lapin 🙂 ?
Bonjour
Trés intéressant ce site, je pense que je vais me lancer dans la domotique a partir de l’arduino.
Pour gérer mes radiateurs, je vais utiliser la sonde du tuto 18.
Pour gerer le radiateur, ce tuto mais quelques questions:
1 ce relais pour piloter le radiateur risque de faire du bruit (clic, clac…), donc peut-on passe par un relais opto style FOD852 (http://fr.farnell.com/fairchild-semiconductor/fod852/optocoupleur-e-s-darlington/dp/1495371) donc pas de bruit.
2 possibilité peut être avec 2 relais et jeux de diode de piloter le fil pilote sur ordre ON/OFF et faire de la régul du radiateur, sans bruit.
3 quand je lis 433Kz, parfois on lis dans les doc des matériel, 433,92hz. C’est important la dif?
merci
Non l’essentiel c’est que ça reste dans les 433mhz, ce qu’il y a après la virgule généralement ça reviens au même, je suppose que 433.92 est la valeur réelle de la fréquence autorisée mais que beaucoup de constructeurs “arrondissent” le terme a 433 mhz par flemme d’écrire le .92 🙂
Bonjour,
merci pour tout ces tutos qui me sont d’un grand secours !
J’ai mis un moment avant de résoudre mon problème alors pour ceux qui serais dans le même cas que moi:
Mon kit émetteur récepteur ( voir plus bas ) a la particularité ( inutile ? ) d’avoir , sur l’émetteur , non pas une broche “DATA” mais “ATAD” ce qui signifie finalement que cette broche est une entrée inverseuse …
Cela a pour conséquence de convertir les 0 en 1 et les 1 en 0 sur le signal que l’on tente d’envoyer !
Le problème peut être résolu en modifiant le fichier radioEmission.cpp dans lequel il faut changer les LOW en HIGH et inversement dans les deux fonctions d’envoi !
J’espère que cela pourra en aider certains !
ps : J’habite a bordeaux et j’ai entendu parler du labx, j’ai vu que tu en faisais parti, si tu pouvais m’en dire plus ça m’a l’air intéressant 😉
kit : http://www.ebay.com/itm/5pcs-433Mhz-RF-transmitter-and-receiver-kit-for-Arduino-ARM-MCU-WL-/370800682991?ssPageName=ADME:L:OC:FR:3160
Effectivement c’est couillon comme fonctionnement je suis étonné qu’ils aient mis ça en place …
Je ne vais plus beaucoup au lab ces derniers temps (fait trop froid ^^) mais si tu passe un de ces mardi dis le moi que j’y aille faire un tour :).
Le lab à déménagé a l’ancienne usine de tri postale de Bègles, c’est le gros bâtiment au bout des boulevard, ya vachement plus de place.
Après ben c’est une bande de geek barbus totalement désorganisés mais bien sympa et compétents dans divers domaines donc ya de quoi s’amuser ^^
Reste que malgrès tout mes efforts je n’arrive pas a faire tourner ton programme sur un ATtyni 45 … j’ai u beau essayer plein de petites “bidouilles” ( en 1 ou 8 Mhz ) rien n’y fait =/ …
Si quelqu’un a réussi je suis plus qu’intéressé !
Salut Idle, et bravo pour tes tutos!
Penses tu qu’il serait possible d’utiliser un autre microPro plus petit et moins cher? Si oui, m’en conseillerais-tu un?
Merci’
Moins cher il n’en existe pas beaucoup (généralement les prix sont dans les mêmes eau) par contre plus petit ça oui tu peux trouver, l’attiny85 par exemple, évidemment le code est à adapter légèrement mais il existe pas mal de tuto sur le web pour faire tourner du code arduino sur un attiny 🙂
Salut,
Tout d’abord, merci pour les articles super sympa que tu postes, c’est attractif, intéressant et instructif ! Donc merci 🙂
Je suis tombé sous le charme de la Rpi et depuis je suis avide de nouveautés et d’expérimentations sur cette board.
Désolé si c’est pas vraiment l’article le plus approprié pour ma demande mais voici : je cherche à envoyer/recevoir des sms depuis une board GPRS, GSM vers ma raspberry pi, du coup j’ai 2 questions :
– pensez vous que ce type de board puisse être compatible (a priori oui) : http://www.amazon.com/SainSmart-Compatible-Wireless-Adapter-Siemens/dp/B005ZMG6L0/ref=pd_sim_sbs_misc_6
– pensez-vous que la carte SIM free à 2€ serait compatible avec ce genre de board, car j’ai vu sur certaines ils précisent que c’est pas forcément compatible avec tous les opérateurs (problème de fréquence ?)
Merci d’avance
Autre truc, c’est une suggestion, mais ce serait bien qu’il y ait un forum sur le site pour communiquer entre membres, poser des questions, des idées, des projets.. enfin voilà si jamais ça t’intéresse il y a Simple Press (la charte fait un peu peur : http://simple-press.com/download/) mais il est super bien comme plugin wordpress pour mettre un place un forum (type phpBB) mais pleinement intégré à wordpress. (et si jamais tu as besoin d’info pour du dev ou autre wordpress n’hésite pas à me contacter).
Trêve de blabla, Merci encore !
Bonjour,
D’abord bravo à idleman pour son site très inspirant.
Je ne sais pas si je comprend bien ta demande mais il est possible d’envoyer et recevoir des sms depuis une RPi, avec une carte SIM Free Mobile depuis une clef 3G. Je le fais avec une ZTE MF626 USB et c’est bien pratique.
http://blog.uggy.org/?post/2013/01/21/Envoi-de-SMS-par-le-RaspberryPi
https://www.bentasker.co.uk/documentation/linux/19-installing-and-using-a-t-mobile-zte-mf626-usb-3g-mobile-broadband-dongle-under-linux
Salut Idleman!
Tout d’abord, merci pour tes tutos qui m’aident bien à comprendre le raspberry et à en faire autre chose qu’un HTPC.
Pour me faire un peu la main, je pense réaliser ta prise radio. Cependant, je me pause une petite question, je possède un arduino UNO et je me demande si je pourrais programmer la puce ATmega328 avec? En effet, ce lien m’a mis le doute: http://arduino.cc/en/Tutorial/ArduinoToBreadboard
En effet il est écrit: Note that these techniques only work with the Arduino Duemilanove w/ an ATmega328, not the Arduino Uno (or older Arduino boards w/ an ATmega168).
Qu’en penses-tu?
Ensuite aurait tu un lien pour les puces ATmega328 avec bootloader? car celles que je trouvent coutent le double du prix que tu annonce en début d’article.
Merci 🙂
Tu peux parfaitement programmer un atmega 328 avec un bootloader uno via une plateforme duemilanove, c’est ce que je fais chez moi, et si tu ne veux pas te prendre la tête à monter leurs circuit, tu as juste a planter ton 328 dans la broche de ta plateforme a la place du microcontroller fournis avec et a executer ton code (attention au sens de l’atmega par contre).
Les liens changent souvent sur ebay mais généralement je tape atmega 328 with bootloader puis j’active les filtres “dans le monde entier” puis “achat immédiat” et enfin “tris par prix + livraison” pour avoir les meilleurs prix.
Après tu peux aussi en acheter sans le bootloader pour els avoir moins cher et graver le bootloader toi même
Ce qui me gène c’est l’alimentation de tout ca, sachant qu’on à le 220v si on doit trouver un 220v => 5 v l’encombrement augmente et le prix aussi.
Quand on voit le prix d’une prise chacon a 30€ les 3 ou les modules chacun pour interrupteur ultraplat. (un peu chère mais moins qu’un fibaro)
Je me demande comment fait chacon pour l’alimentation vu le faible encombrement.
l’idéale serait un relai 5V/220v avec directement le convertiseur 220v 5v 🙂
Il existe pas mal d’alimentation a bas prix sous forme de chargeur de portables, sur ebay on peux trouver des chargeurs 220/5v à 1€ l’unité.
La seule complication c’est de trouver un fournisseur fiable qui respecte les normes européennes, il ne faut pas rigoler avec les transformateurs ^^
Hello,
Malgré des heures de recherche et surtout après avoir suivi à la lettre ton tuto (très bien fait d’ailleurs) j’ai encore et toujours l’erreur avrdude: stk500_getsync(): not in sync: resp=0x00.
j’ai beau revérifié (cablage, sélection du type de carte, valeur des composants…) toujours pareil… j’ai un atmega328p…
as tu eu des retours sur cette erreur ? une idée ? please !
Merci beaucoup
Guillaume
Le port COM est le bon ? Le type de carte sélectionné correspond bien au bootloader de ton atmega ? L’atmega est il bien bootloadé ? As tu essayé avec la dernière version d’arduino IDE ?
Malheureusement c’est oui, oui, oui et oui.
j’ai plus d’idée là…
pour l’instant je charge le prog avec l’atmega sur l’arduino en attendant une méthode plus clean et plus pratique…
Ca viens donc du circuit si ça fonctionne direct sur l’atmega, ton résonateur n’est pas grillé ou à la mauvaise fréquence?
Salut
j’ai tout repris avec les mêmes composants et sur un atmega ça fonctionne pas et sur l’autre c’est OK !
c’est déjà ça mais après l’upload rien ne s’exécute ! Le code est bien uploadé car si je pose l’atmega sur la carte Arduino le code s’exécute de suite.
j’ai encore besoin d’aide quoi 😉
Merci
Bonjour et encore bravo!
Je voudrais juste savoir si tu pouvais améliorer le code de l’atmega afin de pouvoir enregistrer dans sa mémoire plusieurs code d’apprentissage pour pouvoir piloter nos relais et donc nos prises par plusieurs sources “chacun”
Merci pour ta réponse
C’est possible mais je manque de temps pour cela :), donc si ça se fait ce n’est pas pour tout de suite 🙂
Bonjour,
Pour la programmation de la puce ATMEGA328-20PU est-ce qu’il est possible de brancher la puce directement sur le module arduino?
Merci d’avance,
Maxime
oui :), pense juste a prnedr eun bootloader compatible avec ta plateforme (uno,duemilanove,etc..)
Bonjour Idleman,
Encore merci pour ton super blog!!! tu fais vraiment un super boulo!
Je met en place un système complet de domotique et je souhaite piloter certain équipements par radio. Du coup, j’ai suivi une fois de plus un de tes tuto sur la raspberry.
afin de partir du bon pied, j’ai configuré ma raspberry comme dans le tuto 12 et me suis fait le montage du tuto 15. Mais là, j’ai quelques petits soucis de communication radio. je n’arrive pas à faire bouger le micro. la diode ne clignote pas.
En modifiant légèrement le code du micro, j’ai pu confirmer q’il reçoit bien des infos radio mais pas de protocole homeeasy. je pense donc que cela vient de l’émission. afin de vérifier que tout ce passe bien, j’ai souhaiter activé les log que tu as judicieusement placé dans le radioemission.cpp mais lorsque je veux le recompiler, j’ai des erreurs de multiple definition en relation avec crtstuff.c. j’utilise la commande suivante:
sudo g++ /var/www/hcc/radioEmission.cpp -O /var/www/hcc/radioEmission -lwiringPi
As tu une idée du problème de compilation?
En revanche, étant électronicien, je peux vous proposer une petite alime 230Vac –> 5Vdc faite maison afin d’alimenter le montage micro/relais…
je me suis basé sur ce convertisseur: http://fr.rs-online.com/web/p/alimentations-a-decoupage-integrables/7719360/
De plus, afin d’éviter d’avoir à piloter en permanence le relais de sortie, je vous propose l’utilisation d’un relais bistable du type G6AK-234P-ST
si cela intéresse quelqu’un, je peux vous fournir des schémas.
cordialement,
PY
Bonsoir PY
Es – tu sur que ce relai G6AK-234P-ST est capable de couper et isoler du 220v car on dirait qu’il plafonne a 125VAC.
En revanche je suis très intéressé par ton montage avec alim a découpage.
Si tu peu me fournit un schéma et quelques explications cela serait royal.
Par avance merci
Franck
Salut PY,
je ne sais pas de quand date ton post mais je suis également très intéressé par ton schéma,
si tu l’as toujours.
J’ai découvert ce blog il y a une semaine et franchement chapeau!
Bonne continuation,
Thibault
Bonjour,
Super Tuto que je m’applique à suivre depuis le premier ! 🙂 Merci à toi Idle pour ce super boulot !!
Par contre j’aimerais savoir si certains ont tenté d’acheter le transmiter/recepteur via le lien ebay donné ici… Car celà fais maintenant 3 semaines que j’ai commandé de mien et toujours pas de nouvelles. Du coup je m’inquiète car…
Je suis en manque de bidouillage !!! 🙂
Merci d’avance !
Bonjour,
J’ai une petite question, car je ne comprends pas très bien ce tuto, ce que je recherche ses de contrôler une lampe avec mon raspberry sans fils (enfin de mon raspberry a ma lampe) et je vois que sur le schéma nous somme obliger de relier notre raspberry au récepteur ?
J’ai dû zapper un truck mais ses vrai que là je ne peux pas faire de test car je n’ai pas encore reçus mon raspberry.
non le rpi est relié à l’emetteur, c’est l’arduino qui est relié au recepteur.
L’arduino constitue le “cerveau” de ta prise télécommandée, il n’y a donc bien pas de fils entre ton rpi et la prise arduino reliée à ta lampe.
Le schema n’est plus disponible T_T
C’est re up désolé petite panne réseau 🙂
Salutations,
Je voulais savoir s’il était grave de prendre un ATmega328P-PU à la place d’un ATmega328-PU ?
Cordialement,
Simonfr
honnêtement je n’ai jamais fait la différence :), à tester
Salut idle
Je rencontre un probleme au tuto 15 que j ai exposé sur le fofo mais aucune solution trouvée pour le moment.
http://forum.idleman.fr/discussion/335/relais-radio-change-pas-d-etat-code-apprentissage#Item_5
J aimerais avoir ton opinion sur le clignotement de mes LEDs d activitée radio qu on voit dans la video.
Probleme d apprentissage du code?
Merci
Bonjour à tous,
Voila moi j’ai un petit problème avec cela, j’utilise une carte Arduino Uno pour réaliser le tuto et pourtant cela ne fonctionne pas. Je ne sais pas si cela viens de ma RPi ou de mon Arduino mais quelques chose coince. Je crois que ma carte Arduino ne recoi pas tout, car dans la boucle “while(i < 64)" le i s'arrête à 4.
Voici un petit aperçu de ce qu'il se passe avec i:
latch 1
latch 2
i=
0
latch 1
latch 2
i=
0
i=
1
latch 1
latch 2
i=
0
i=
1
i=
2
i=
3
latch 1
latch 2
i=
0
latch 1
Si quelqu'un a une solution je suis preneur.
Merci
Pourquoi avoir utiliser un atmega et pas tout simplement un PIC ?
Parce que si je l’avais fait on m’aurais demandé “pourquoi un PIC et pas un atmega” ou encore “pourquoi un PIC et pas un attiny” etc etc…
Toutes les options sont permises, j’ai choisis l’atmega parce que je le trouve plus simple à aborder pour les non électronicien, simple à programmer, polyvalent, et disposant d’une plateforme (arduino) permettant sa découverte à bas prix
Bonjour,
Super site et super tuto que du bonheur, merci. Par contre, les liens de ce tuto ne fonctionne plus et les images ne s’affiche pas.
Pourrais-tu corriger le problème stp Merci
C’est corrigé normalement merci de me l’avoir signalé 🙂
Merci à toi pour le partage de connaissance.
Une question, pour faire le 1er montage pour programmer l’Atmega328PU, pourquoi ne pas mettre l’At328PU directement dans l’Arduino en lieu et place de celui d’origine ?
Merci,
Tu peux le faire aussi, je trouve plus didactique d’utiliser la liaison serie, surtout que ça permet de programmer un atmega sans plateforme si besoin est
Merci pour le partage mais les images des cablages ont disparus…
Serait il possible de les republier ?
Encore Merci 🙂
Coucou, c’est corrigé, merci d’avoir signalé 🙂
salut 🙂
est ce que vous pouvez vérifier le lien de téléchargement du fichier zip
http://domotique.idleman.fr/data/priseMaison/priseRadio.zip
il n’est pas valide .
merci d’avance .
Coucou, c’est corrigé merci du signalement 🙂
Bonjour,
J’essaye de le faire avec un ATTINY45 mais cela ne fonctionne pas.
quand j’essaye d’envoyer le programme j’ai cette erreur :
avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny45
avrdude: Yikes! Invalid device signature.
Double check connections and try again, or use -F to override
this check.
Est-ce que tu aurais une solution ?
J’ai penser au bootloader mais j’arrive pas à trouver un bootloader pour ATTINY45 sur le web.
Merci
Bonjour,
lorsque je veux envoyer le programme dans un ATTINY45, j’ai ce message d’erreur :
avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny45
avrdude: Yikes! Invalid device signature.
Double check connections and try again, or use -F to override
this check.
Quelqu’un sait comme corriger le problème ?
Merci
Bonjour et merci pour ce tuto magnifique,
J’essaye d’utiliser ton programme avec Attyni85 mais je n’arrive pas à le faire fonctionner.
Est-ce que tu pourrais m’expliquer un peux ton code, celui que tu installe dans l’Atmega ? il faudrait que je le modifie pour qu’il puisse fonctionner avec un Attiny85.
en gros je voudrais que quand il reçoit le code 1234 on il allume ma prise et quand il reçoit 1234 off il éteins ma prise. Si tu peux m’aider.
Merci
Salut à toi ! et au futur lecteur d’ailleurs 😀
J’ai parcouru ce blog, lu ce blog, et je trouve vraiment ton approche génial, pédagogique, didactique, et surtout accessible ! Bravo pour cela !!!
Voila ma question relative au sujet :
J’ai souhaite contrôler plusieurs relais, en me basant sur ton tuto avec la config suivante 1x(arduino + emeteur) + 8x(recepteur+atméga+relay)= ??? . Je cherche à comprendre comment attribuer des identifiants à chaque atméga, et comment glisser cet identifiant dans le signal emit par l’Arduino, pour n’actionner que le relai voulu !
Je me casse la tête contre mon écran depuis plusieurs semaine pour trouver comment faire, alors je t’en pris, sort moi de ce cauchemar, car j’approche la commotion cérébral !
Salut, encore merci pour tes super tuto qui nous simplifie grandement notre vie :p
Je souhaiterai adapter ton code pour faire un boitier avec une PIR. Dès qu’un mouvement est détecter elle envoi le signal a l’atmega qui le renvoi sur l’emeteur 433mhz pour le recevoir sur le raspberry au final. Penses tu que c’est faisable ? 🙂
Hello, j’ai trouvé ceci qui pourrait surement intéressé plus d’un :
http://www.ebay.fr/itm/1Button-315-433MHZ-Wireless-Module-Receiver-Controller-F-Relay-Remote-Switch-BA-/271497083662?pt=FR_YO_MaisonJardin_Bricolage_ElectroniqueComposants&var=&hash=item3f367cbb0e
Un relai piloté en 433 mhz pour 3,50 euros 🙂
Bonjour,
J’ai essayer d’utiliser un ATTYNI85, j’arrive à le programmer avec un arduino (y’a plein de tuto sur le net pour sa) mais lorsque j’envoie ton programme ( en ayant modifier les numéro des pin pour faire correspondre avec un ATTYNI85) cela ne fonctionne pas. Aurais-tu une idée stp ?
Merci
Super blog, merci pour tes tutos en or 😀
J’essaye de mon côté de réaliser un allumage automatique d’arrosage avec cette solution, mais je bloque avec mon arduino.
Avec le montage proposé, quand je branche l’arduino la LED 13 reste allumée et lorsque je veux uploader le programme sur la puce ça me met cette erreur :
”
C:\Program Files (x86)\Arduino\hardware/tools/avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware/tools/avr/etc/avrdude.conf -v -v -v -v -patmega328p -carduino -P\\.\COM4 -b115200 -D -Uflash:w:C:\Users\AppData\Local\Temp\build3147920903532555117.tmp\Blink.cpp.hex:i
avrdude: Version 5.11, compiled on Sep 2 2011 at 19:38:36
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2009 Joerg Wunsch
System wide configuration file is “C:\Program Files (x86)\Arduino\hardware/tools/avr/etc/avrdude.conf”
Using Port : \\.\COM4
Using Programmer : arduino
Overriding Baud Rate : 115200
avrdude: Send: 0 [30] [20]
avrdude: Send: 0 [30] [20]
avrdude: Send: 0 [30] [20]
avrdude: Recv:
avrdude: stk500_getsync(): not in sync: resp=0x00
avrdude done. Thank you.
”
alors que quand je mets la puce directement sur l’arduino uno, ça fonctionne (j’ai testé le blink code d’example).
Lorsque l’on met ton code avec la puce directement sur l’arduino si j’ai tout suivi (ce qui n’est pas certain) j’ai pas une horloge à 16Mhz mais à 8Mhz (enfin je dis ça mais je comprends pas grand chose à cette horloge, hein :/ ) et donc le montage suivant pour envoyer les ondes ne fonctionne surement pas à cause de cette histoire d’horloge ?
As-tu une solution sous la main pour un zéro en éléctronique ? oO
Merci d’avance,
Jean
Bonsoir,tout d’abord merci pour vos nombreux articles qui m’on donnée pas mal d’envie.Que ce soit d’enfin me mettre à la programation ou me faire mon systéme de domotique pour mes plantes carnivores et surveiller mes chats lorsque je suis au boulot.
Pour le packaging pourquoi ne pas regardé du coté des boites de dérivation? C’est étanche,résistant et surtout pas chére.
http://www.conrad.fr/ce/fr/product/522589/?utm_source=google-search-product&utm_medium=comparateur&utm_campaign=522589&WT.mc_id=comparateur-gsp-522589&LGWCODE=522589;43857;390&gclid=CKjx6L3ttr8CFcbKtAodr18AHg
Au revoir. 🙂
Salut a tous, j’ai testé le montage tout fonctionne parfaitement par contre au delà de 5 mètres je capte rien du tout, j’ai bien revu mon alimentation et ayant acheter un lot de 20 pièce d’émetteur et récepteur 433mhz j’ai refait la soudure avec une bonne antenne de 17.3 cm, la soudure étant propre mais toujours le même résultat.
Je n’arrive pas à augmenter ma porté.
Un petit point que je souhaiterai préciser c’est que dès que j’alimente mon émetteur 433mhz en 12 v rien fonctionne.
Quelqu’un a une idée ?
Le pack 1atmega avec bootloader + la résistance 10kOhm + le résonateur ZTT (quartz 16MHz) + plein de petits trucs toujours utiles sur ebay à 6.99€ ici :
http://cgi.ebay.fr/ws/eBayISAPI.dll?ViewItem&item=251500335558
(on est bien d’accord que le quartz et le résonateur c’est pareil hein ?)
Le quart et le résonateurs peuvent tout les deux servir d’horloge mais sont de différents composants, le résonnateur peux fonctionner tout seul, pas les quartz.
D’une manière globale, le kit est un peu cher si on prends les pieces une par une
Bonjour,
Ou as tu récupéré les deux prises nue que tu montre dans la vidéo? c’est exactement ce que je cherche pour faire la boite anglobante moi-même imprimée en 3D.
merci d’avance.
J’ai du trouver ça dans une quincaillerie, ça trainais dans une vielle boite chez moi depuis une éternité ^^, désolé je n’ai pas plus d’info sur le sujet 🙂
Bonjour
Un détail me surprend dans la configuration de l’atmega: “résistance de 1.27homs une 10k conviendrais mieux” cela fait un bel écart je n’ai pas de 1.27 quelle serait la valeur idéale?
cordialement
Je trouve les deux valeurs sur le net, j’ignore laquelle est la plus appropriée, par mesure de sécurisé je prendrais plus celle à 10k, mieux vaut que ça ne marche pas que ça grille un pin.
Merci pour ta reponse, je vais suivre ce conseil.
cordialement
Bonsoir,
Avez-vous un code arduino pour allumer une prise chacon ?
Le montage en récepteur marche très bien, mais pas en transmission.
Merci
Oui, tu peux trouver le code ici : http://playground.arduino.cc/Code/HomeEasy
Bonjour a tous,
Pour commencer, un grand merci à Idleman et aux membres qui suivent les créations de son blog avec intérêt.
Les sujets de la domotique sont passionnants et attirent ma curiosité comme tout ceux qui sont présents ici.
Me concernant, j aimerai piloter depuis mon raspberry et un émetteur RF (ou par mon LAN ), un adruiano à connecté à un recepteur RF (ou shield ETHERNET) afin de gérer plusieurs relais. ces relais viendront piloter différents points lumineux dans mon installation électrique. pas de probleme de cablage me concerant pour l’ensemble du projet.
L avantage de mon installation est que les circuits lumineux sont centralisés dans un coffret de dérivation à proximité de mon tableau électrique, le tout dans un local technique donc caché et très discret. donc pratique pour y installer un tranfo 5VCC et 12VCC.
j aurais voulu avoir des infos sur l adruiano car encore inconnu pour moi,
– savoir s ‘il est possible de connecter l ‘ensemble de mes relais + le récepteur RF a l arduiano ( 10 relais => 10 points lumineux) ???? ” a priori oui vu le nombre de broche sur le port GPIO”
– et savoir ou je peux trouver un peu de doc sur un projet similaire car dans cette article nous abordons la programmation du contrôleur dépourvu de carte.
Cordialement
chris
Salut, d’abord, je tiens a te remercier pour ses excellents tuto qui m’ont permis de ma lancer dans la domotique. Tout y est vraiment bien expliqué et donne envie de tester.
Par contre, j’ai un petit souci concernant l’alimentation de mes atmega328. Mon premier projet consiste a essayer de faire un module gérant les ordres des fil pilotes pour mes chauffages. J’ai donc une puce atmega328, une sonde DS18B20 et un kit emetteur/recepteur de brancher sur ma puce (faut encore que je gère la partie relais pour envoyé les infos au fil pilote mais bon).
Pour le moment tout fonctionne correctement lorsque j’alimente mon montage avec la sortie 5V de mon arduino (avec une portée plus que correct pour les emissions/receptions radio). Mais lorsque je l’alimente avec une alim externe (type chargeur d’iphone acheter pas cher sur ebay), je n’ai plus aucune porté radio!!!
Voila le type de chargeur que j’ai commandé : http://www.ebay.fr/itm/121410035111?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1497.l2649
Sur les caractéristiques, ils débitent du 5V à 1A, ca devrait être largement suffissant pour alimenter mon circuit normalement.
J’ai lu pas mal de choses sur ce type de chargeur dans les commentaires du post, je voulais savoir si t’avais reussi du coup a en trouver qui fonctionnait correctement ou si il y avait une astuce (peut etre un composant pour reguler la tension de sortie ou autre a rajouter afin de faire fonctionner l’ensemble… (ps:j’y connait encore rien en electronique alors désolé si c’est complètement hors sujet…))
Pour le moment, je suis un peu perdu du coup, j’me retrouve avec 10 convertisseurs 5V qui me servent pas a grand chose…
Hello,
Merci pour tous tes tutos j’ai commandé mon rasberrypi et dès que je le reçois je me lance pour connecté mon appart ^^.
Je suis dév et j’aimerai tout faire moi de A à Z ^^ du coup je serais pas contre plus d’explication sur le protocole radio comment ca marche et comment je peux encoder décoder les messages qui transite. Si tu as quelques liens ou infos je suis preneur
Petites questions cependant :
As tu un tuto justement pour rajouter un émetteur à la prise ?
Partout je vois que c’est gérer via onde radio mais est ce bien sécurisé du coup ?
Petit idée de tutos :
– l’ajout d’une webcam via wifi avec visualisation du flux vidéo via une page web
– l’ajout d’enceinte (je sais pas si besoin ou si le rasberry as déjà une sortie audio) avec possibilité de parler (ou jouer une musique ect…) via une appli dans les enceintes (en cas d’intrusion ca permet de parler au gens dans l’appart, ou pour réveiller/faire peur à ta copine ca marche aussi :D)
Hello,
L’arduino duemilanove n’existe plus (ou je ne le trouve pas) il faut le remplacer par le Arduino UNO Rev3 ? http://store.arduino.cc/product/A000066
Dans le cas d’une multi prise combien de prise peut on gérer avec un ATmega328 ? Il faut forcément un relais + un résonateur par prise ? ou juste un relais par prise suffis ?
Merci pour ton boulot avec ces tutos !!
Re ^^
J’ai reçu mon raspberry pi et j’ai commencé à monter mon serveur web. Tout fonctionne nickel 😀 j’aimerais maintenant rentrer dans le vif du sujet avec tes tutos. Le problème c’est que je ne trouve pas de carte d’alimentation comme tu as dans la vidéo (ou sinon à 20€ c’est trop cher) aurais tu un lien ou je peux trouver ça à 2€ comme tu dis ds ta vidéo ?
Merci
Jim
Bonjour Idleman,
Peut etre mon post arrive tard au vu des dates mais bon je tente le coup. Voila je viens de réaliser tous tes tutos à la lettre et tout marche à la perfection en revanche j’ai un souci avec la fabrication de cette “prise maison”. en effet atmega programmé tout est ok mais en aucun cas je n’arrive à envoyer un signal via l’emetteur branché sur le rpi. D’un coté le rpi avec emetteur envoi les codes sur les prises chacon sans souci mais n’arrive pas à envoyer sur la prise maison, par contre la telecommande chacon arrive à me programmer ma prise maison avec l’atmega ??? J’ai l’impression que le recepteur ne recoit pas la trame correctement de l’emetteur car la led ne scintille jamais donc apparemment ce n’est pas un protocole home esay tel que tu le décris en revanche la telecommande me fait vaciller la led et la ca fonctionne ? c’est quoi la difference entre telecommande et envoi via rpi ? protocolle semblable pourtant.
J’espere que tu pourras me donner une piste pour avancer car j’ai tous les compos pour me faire ma domotique tout fonctionne plus ou mien bien mais la je bloque. Merci par avance
Salut Idleman et toute l’équipe,
Après avoir suivi IDLEMAN sur son GITHUB concernant Yana-server. je vous fais part des petites modifications que j’apporte à l’excellent travail du patron 🙂 (le but étant l’entraide donc je suis conscient que certains points peuvent être améliorés. nul n’est parfait !!! :p )
Je me permets donc de poster, mes petites modifications concernant la création de prises radio .
Modification apportée permet de : piloter plus d’un relais en fonction d’un Sender et de différents code radio (0 A 15) évidement toujours avec le protocole HOMEeasy (depuis RPI ou telecommande, ect ….) .
Prérequis : Connaitre le code radio à émettre (telecommande ou RPI), récupérable avec la bibliothèque HRCSWITCH ou en modifiant légèrement le code du programme de idleman, il vous suffit de faire un “serialprintln” du receivedSignal.sender && du receivedSignal.receptor, à inclure juste après la condition if(receivedSignal.isSignal) {
nota : les signaux ne seront pas stockés dans l EEPROM, mais possibilité de les rajouter, et la led est supprimée car pas utile dans mon cas, suivit des infos à travers une console.
CODE du sketch
—————————————————————————————————-
#define LAMPE_1 1 // A CHANGER SUIVANT VOS CODES RADIO
#define LAMPE_2 2 // A CHANGER SUIVANT VOS CODES RADIO
int recepteurPin = 9;
int relaiPin1 = 10; // NUMERO DE PIN UTILISE PAR L ARDUI pour PILOTER LE RELAI1
int relaiPin2 = 11; // NUMERO DE PIN UTILISE PAR L ARDUI pour PILOTER LE RELAI2
struct config_t
{
long sender;
int receptor;
} signal;
struct signal_t
{
long sender;
int receptor;
boolean isSignal;
boolean state;
} receivedSignal;
void setup() // CONFIGURATION DES E/S
{ pinMode(recepteurPin, INPUT);
pinMode(relaiPin1, OUTPUT);
pinMode(relaiPin2, OUTPUT);
Serial.begin(9600);
Serial.println(“start”);
}
void loop()
{
//Ecoute des signaux
listenSignal();
//Si un signal au protocol home easy est reçu…
if(receivedSignal.isSignal)
{
//Comparaison signal de référence, signal reçu
if (receivedSignal.sender==16814350) // CORRESPOND AU CODE DU SENDER
{
Serial.println(“Signal correspondant”);
switch (receivedSignal.receptor) // SWITCH EN FONCTION DU CODE RADIO, ICI 1 OU 2
//On ferme ou on ouvre le relais en fonction du bit d’etat (on/off) du signal
{
case LAMPE_1 : // SI CODE RADIO = 1
if(receivedSignal.state)
{
Serial.println(“Etat : on, fermeture du relais LAMPE_1”);
digitalWrite(relaiPin1,HIGH);
}
else
{
Serial.println(“Etat : off, ouverture du relais LAMPE_1”);
digitalWrite(relaiPin1,LOW);
}
delay(500);
break;
case LAMPE_2 : // SI CODE RADIO = 2
if(receivedSignal.state)iol
{
Serial.println(“Etat : on, fermeture du relais LAMPE_2”);
digitalWrite(relaiPin2,HIGH);
}
else
{
Serial.println(“Etat : off, ouverture du relais LAMPE_2”);
digitalWrite(relaiPin2,LOW);
}
delay(500);
break;
}
}
else{
Serial.println(“Signal inconnu”); // AFFICHAGE DANS LA CONSOLE SI LE SENDER EST DIFFERENT
}
}
}
void listenSignal(){
receivedSignal.sender = 0;
receivedSignal.receptor = 0;
receivedSignal.isSignal = false;
int i = 0;
unsigned long t = 0;
byte prevBit = 0;
byte bit = 0;
unsigned long sender = 0;
bool group = false;
bool on = false;
unsigned int recipient = 0;
// latch 1
while((t 11350))
{ t = pulseIn(recepteurPin, LOW, 1000000);
}
Serial.println(“latch 1”);
// latch 2
while(t 2800)
{ t = pulseIn(recepteurPin, LOW, 1000000);
}
Serial.println(“latch 2”);
// data
while(i 200 && t 1000 && t < 1400)
{ bit = 1;
}
else
{ i = 0;
break;
Serial.println("bit mort"+t);
}
if(i % 2 == 1)
{
if((prevBit ^ bit) == 0)
{ // must be either 01 or 10, cannot be 00 or 11
i = 0;
break;
}
if(i < 53)
{ // first 26 data bits
sender <<= 1;
sender |= prevBit;
}
else if(i == 53)
{ // 26th data bit
group = prevBit;
}
else if(i == 55)
{ // 27th data bit
on = prevBit;
}
else
{ // last 4 data bits
recipient < 0)
{
receivedSignal.sender = sender;
receivedSignal.receptor = recipient;
receivedSignal.isSignal = true;
if(on)
{
receivedSignal.state = true;
}else{
receivedSignal.state = false;
}
}
}
@++
Salut !
Chapeau pour ce tuto, c’est trop cool. Ca fait des semaines que je galère pour essayer de piloter un Arduino avec des commandes Chacon (j’ai une Zibase)…mais en vain.
J’ai testé ton tuto mais à part une série de “latch 1” et “latch 2”, rien d’autre ne se passe…??? (ça veut dire quoi au passage “latch…” ?)
Aurais-tu des suggestions à me faire ?
J’ai un Arduino Uno officiel, une carte RF433 XY-MK-5V (data sur pin 9)
Je n’ai pas mis de relais ni Led pour le moment car je cherche avant tout à tester pour voir si j’arrive à recevoir mes commandes “B3 ON” / “B3 OFF” …. mais en vain donc…
HELP !!!!!!!!!!!!!!!!!! je craque <3
Christophe
j’ai exactement le même problème, avez-vous trouvez une solution?
Merci
Bonjour,
Et lorsque l’on ne peut pas enlever l’atmega de l’arduino, comment fait-on ?
Merci 😉
Bonjour,
j’aimerais savoir s’il est possible de brancher l’alim 5v en parallèle avec l’objet qui se situe après la prise afin d’alimenter la lampe par exemple et l’arduino a partir d’une seule prise.
Maxime
Bonjour,
Je suis vraiment novice sur le sujet (enfin les sujets: domotique, programmation et electronique).
Je voudrais me lancer dans la fabrication de ces prises mais je voudrais comprendre quelques points. Via l’interface HCC, on configure un périphérique avec un code radio. Mais ce code radio, on le défini où dans le atmega?
Si on veux faire plusieurs prises, où on doit définir dans l’atmega que ce code radio est 1 ou 8 🙂 ?
Merci a vous
Salut,
Je souhaite utiliser le tuto mais pour gérer 8 relais. Comment je dois modifier le code pour cela ?
bonjours
comment fait pour commande ton relai avec une tension positiv alors que il fonction en commande negative ?
Est-ce qu’on peut avec le même capteur mesurer en même temps la hauteur ?
merci
Super boulot Idleman ! Merci pour tout ces tutos ! Mais j’ai cependant un problème…
Mon but : envoyer des commandes depuis une page web (sur un Raspberry) pour piloter des volets roulants (Arduino).
J’ai un soucis avec la réception : dans la console Arduino j’ai des caractères bizarres ou des infos tronquées !? (voir ci-dessous) Et même si ça écrit “fermeture du relais” il ne se ferme jamais ! Alors que si j’écris la commande digitalWrite(relaiPin,HIGH) au début du LOOP il se ferme (donc pas d’erreur de câblage)
J’ai essayé avec 2 Arduinos et même soucis (Uno et Nano).
On dirait que la communication se fait mais qu’elle est mal interprétée, une idée ? Merci.
tch 1
tch ch 1
mme signal de réferßþ/÷ü’W5+ëŸ?ïûïÁÇ;ñúûÝÿüážú}Çýêo÷¤0Yiÿþí矟4ëù{ëõå.Qe¯ÁÿRѦEæÿ‹Zåô>Ûò/Ö<|ßû¿÷¯ìµ
º¿÷ò?þ[¯·ÿí«½_=ûÿñz¸}ÞY#ÚÒ\;ÿK¾o¸úGÇûûì¾~þ·¾ôoøÿ_éäwVìË»ÆÛù·YkoøÏþ®~óÍÈîÕº
latch 1
latch 2
ne, enregistrement du signal recu comme signal de reference
latch 1
latch 2
latch 1
latch 2
e reference
latch 1
latch 2
signal de reference
latch 1
latch 2
al correspondant
latch 1
latch 2
latch 1
latch 2
Etat : on, fermeture du relais
latch 1
latch 2
e reference
Salut,
super tuto!!!
Depuis que je suis ton blog, j’ai enfin trouvé comment utilisé mes connaissances (car gros manque de créativité) et les mariées.
Un seul mot à te dire; merci
P.S. : Vive la domotique
Ca fait plaisir :), bonne continuation 😀
Salut!
Tuto très simple à comprendre!
j’essaye de réduire la consommation au maximum, j’ai donc intégré la librairie sleep à ton programme en l’utilisant avec les interruption.
A première vue, tout fonctionne comme je veux.
je met mon script ici ( j’ai retirer tout ce qui concerne l’interprétation du signal, la mise en eeprom , mais pas la reception)
#include
#define LEDPIN 12 //pin digital de la led témoin
#define RELPIN 10 // pin digital du relais
#define RECPIN 2 // recepteur 433.92 Mhz (pin d’interruption)
#define INT 0 // interruption externe
struct signal_t{
long sender;
int receptor;
boolean isSignal;
boolean state;
} receivedSignal;
void wakeUpNow() //Fonction appelé après réveil
{
// ici l’interruption est traitée après le réveil avant la boucle loop
// les “timers” (delay) ou code utilisant les timers ne fonctionne pas, de même que Serial.print et bien d’autre
// pas forcément besoin d’implémenter de code içi.
}
void sleepNow(){//Fonction de mise en sommeil
delay(100);
set_sleep_mode(SLEEP_MODE_PWR_DOWN); // réglage du mode de sommeil
sleep_enable(); //active la possibilité du mode sommeil
attachInterrupt(INT,wakeUpNow, FALLING); //attache l’interruption externe INT à la fonction wakeUpNow
sleep_mode(); // mise en mode sommeil
}
void setup()
{
initPin();
sleepNow();
//attachInterrupt(INT,wakeUpNow,FALLING); // attache l’interruption externe INT à la fonction wakeUpNow
}
void loop()
{
Serial.println(“Écoute des signaux”);
listenSignal();
}
void initPin(){
pinMode(RECPIN,INPUT);//défini le récepteur en entré
pinMode(RELPIN,OUTPUT);//défini le relais en sortie
pinMode(LEDPIN,OUTPUT);//défini la led en sortie
digitalWrite(LEDPIN,LOW);//met à 0 la sortie de la led
Serial.begin(9600);
Serial.println(“start”);
}
void blink(int nb, int temps) // fonction de clignotante pour la led
{
for(int i=0;i<nb;i++){
digitalWrite(LEDPIN,LOW);
delay(temps);
digitalWrite(LEDPIN,HIGH);
delay(temps);
}
}
void listenSignal(){
sleepNow();
Serial.println("entré dans la fonction listenSignal");
receivedSignal.sender=0;
receivedSignal.receptor=0;
receivedSignal.isSignal = false;
int i=0;
unsigned long t=0;
byte prevBit=0;
byte bit=0;
unsigned long sender=0;
bool group=false;
bool on=false;
unsigned int recipient=0;
while(t11350){
t=pulseIn(RECPIN,LOW,1000000);
}
Serial.println(“Verrou 1”);
while(t2800){
t=pulseIn(RECPIN,LOW,1000000);
}
Serial.println(“Verrou 2”);
while(i250 && t1000 && t<1450){
bit=1;
}
else{
i=0;
break;
Serial.println("Bit mort");
}
if(i%2==1){
if((prevBit^bit)==0){
i=0;
break;
}
if(i<53){
sender<<=1;
sender |= prevBit;
}
else if(i==53){
group==prevBit;
}
else if(i==55){
on=prevBit;
}
else{
recipient<<=1;
recipient |= prevBit;
}
}
prevBit=bit;
++i;
}
Serial.print("Nombre de bit recu : ");
Serial.println(i);
Serial.print("Emmeteur : ");
Serial.println(sender);
Serial.print("recepteur : ");
Serial.println(recipient);
}
Bien entendu, les "Serial.print" ne sont la que pour le debug et j'utilise une alim externe +5V pour le recepteur.
J'avais mis une résistance de pull-up 220 ohm entre le pin digital 2 (int0) et le +5V pour limiter les parasites, ça fonctionne bien.
Le problème est que la distance de réception s'en est retrouvée considérablement réduite(de 10m à 20cm) donc pas très performant.
Je me demande si au final c'est trés utile d'utilisé les interruptions et le mode sleep, car pour bien capter je suis obliger de retirer la résistance, donc plus de filtrage des parasites, le µC tourne alors non stop.
Dois-je continuer sur cette vois ou simplement utiliser ton script ????
Merci
Salut !
Super tuto que je vais m’empresser de reproduire dès que j’aurais reçu le matos 🙂
Tout est super bien expliqué et détaillé c’est vraiment top.
j’ai une petite question car j’ai beau googliser comme un fou je ne trouve pas comment faire car je n’y connais pas grand chose pour le moment :
J’ai dans l’idée d’adapter ce type de système sur des switchs electroniques, comme le switch de ma nespresso ou des boutons physiques du meme type. J’aimerais savoir comment m’y prendre en me basant sur cette technologie. Une piste aiderait bien dans ma démarche et un tuto me rendrait super heureux 😀
Pour l’instant je m’imaginais me baser sur le meme principe mais en programmant l’arduino afin qu’il agisse comme un switch NO (pression d’une demi seconde lorsqu’il reçoit le signal)
Merci 🙂
Salut!
très bon tuto ! 🙂
Je voulais faire un petit essai avec ma carte arduino atmega2560 avant d’acheter quelques composants attiny85 ou atmega328 pour pouvoir jouer un peu avec ce système.
Cependant, cela ne fonctionne pas! j’ai connecté la sortie du récepteur sur la PIN DIGITAL 2, la LED en PIN DIGITAL 9 et le relais en PIN DIGITAL 10. Modif également de ces PINs dans le code, sans succès.
Auriez-vous une idée où j’ai effectué une erreur?
Bonjour our our our (je fais bien l’échos hein 😉 )
Je sais pas si il y a toujours quelqu’un qui traîne par la pour me renseigner…
Mais je tente quand même. En fait j’ai quelques questions, mais avant petit présentation :
Je suis pas un craque en électronique et en programmation… en fait à par les macro excel je connais rien d’autre lol.
Tout d’abord, serait-il possible de faire ce circuit en 3V afin de pouvoir mettre un pile lithium plutôt que de l’alimenter par un chargeur 5V qui va beaucoup plus consommer?
L’idée du retour d’état est extrêmement intéressante, et surtout très utile quand il s’agit de domotique. Pourrait-on intégré un notion de question/réponse? du style, la box domotique demande à tour de rôle l’état de chaque prise, et chaque prise lui répond?
Si oui C’EST GENIAL!!! … mais je sais pas faire lol
J’espère que quelqu’un passera lire mon message….
Et sinon Idleman très très très bon site. Je t’en félicite et surtout je t’en remercie.
PS : A un moment tu parlais du packaging… tu as pensé à l’impression 3D (soit par ton imprimante, soit par de nombreux site web)? je sais c’est plus onéreux…mais il faut bien avoir des rêves dans la vie lol
bonjour,
j’ai suivi tous le tutoriel, mais j’ai un petit problème, quand j’exécutes la commande sudo ./radioEmission 0 12325261 1 on/off, il ne se passe rien sur ma prise. la led ne clignote pas.
J’ai installé piscope pour voir l’activité de la pin relier à l’émetteur, j’ai placé une led entre le pin de l’emetteur et la masse, et il y a bien une activité…
je n’ai plus d’idée.
Quelqu’un aurait une idée?
merci d’avance,
Maxime
par contre quand je relie la led entre la masse et la pin data du recepteur, la elle se mets a clignoter
Bonjour je suis un débutant en ARDUINO. Je viens d’acheter: http://www.banggood.com/UNO-R3-ATmega328P-Development-Board-For-Arduino-No-Cable-p-964163.html
Comment fais-t-on pour déclipser adin d’utiliser cette carte pour programmer un ATmega 328P que je voudrais utiliser avec un DS18b20 et un afficheur 128*64. Merci de ton aide.
Tu fais comment pour communiquer entre l’arduino et le raspi par radio ? Sinon ca gère
Merci pour ce tuto.
Juste une question : serait-il possible de publier le code Arduino pour contrôler une carte relais 4 canaux avec un seul émetteur / récepteur ?
Merci d’avance
Hello,
Un grand bravo pour ce tuto!
Pour reprendre les remarques de oznerol et Maxime, y-a-t’il une contre-indication à monter le transformateur 5v en parallèle ? J’imagine que non mais une rapide confirmation serait le bienvenue.
Pour rebondir aussi sur la remaque de ravin, ça métonne que personne d’autre ne parle de ces relais radio ici,
ça semble pourtant être une bonne solution, petite et peu couteuse. Quelqu’un aurait un retour d’expérience là-dessus ?