Tout d’abord, je me présente, Thibault, développeur et curieux des nouvelles technologies, j’ai découvert l’arduino et le raspberry pi il y a un peu plus de deux ans.

Pourquoi la domotique ?

Curieux, j’ai voulu tester ces deux cartes. J’ai commencé par m’intéresser au raspberry pi, et j’ai vite découvert que l’on pouvait faire une multitude de choses. En parallèle je me suis essayé à l’électronique avec l’arduino.

Après quelques tests, j’ai eu l’envie de coupler ces deux cartes et me suis rendu compte que l’on pouvait automatiser pas mal de choses. Tout cela m’a donné envie de m’essayer à la domotique 100% DIY.

Je me suis donc donné comme but de me faire ma box domotique personnelle.


Quel matériel ?

  • 1 Raspberry qui me sert de box domotique et de média center grâce à XBMC (43 € avec alimentation)
  • 3 arduino uno (13€ les 3)
  • 1 microprocesseur (attiny) (récupération)
  • 1 Module RF (433 Mhz) (1,79 €)
  • nrf24l01 (20€ pour 5)
  • Relais (2,40€ l’unité)
  • Capteur de température DS18B20 (échantillon)
  • etc.

Mon installation :

Dans un premier temps, j’ai voulu commencer par récupérer la température extérieure d’une sonde (433 Mhz) achetée il y a quelques années. Pour cela j’ai débuté à l’aide d’un raspberry pi afin de pouvoir décoder la trame envoyée par la sonde. Par la suite j’ai acheté un arduino afin de pouvoir faire mon système domotique.

Une fois ces deux cartes en ma possession et testées, j’ai pu débuter la mise en place du système :

J’ai donc développé une interface web (100% responsive) qui me permet :

  • de gérer l’ensemble des pièces de la maison (ajouter / supprimer pièces)
  • d’ajouter de nouveaux modules
  • de gérer les plannings
  • de créer des scénarios
  • de gérer les utilisateurs
  • d’avoir un suivi des logs

J’ai également developpé des scripts pythons permettant :

  • De récupérer les informations des différents contrôleurs
  • D’exécuter les plannings
  • D’exécuter les scénarios
  • De gérer les thermostats
  • De monitorer le Raspberry

Les codes pour les Arduinos / Attiny (microprocesseur)

Une application Android me permettant de recevoir les notifications push envoyées par mon système.

J’ai pu coder ce dont j’avais besoin et ainsi mette en place un système DIY.

Afin de pouvoir gérer l’ensemble de mes modules, la communication se passe entre Raspberry et Arduino :

  • Un arduino (maître) (qui permet de communiquer avec l’ensemble des modules) est relié en USB au Raspberry qui permet d’enregistrer les informations reçues par l’arduino.
  • L’arduino relié au Raspberry me permet de récupérer la température de la pièce dans lequel il se trouve mais aussi d’allumer des lampes et de communiquer avec le reste des arduino.
  • Les autres arduino, communiquent avec le maître à l’aide de module nrf24l01+, me permettent de récupérer la température de l’ensemble des pièces, de gérer les lampes, savoir si le facteur a déposé du courrier, savoir quand quelqu’un sonne…
  • A l’aide du module nrf24l01+, j’ai pu mettre en place un réseau de type mesh qui permet à un arduino même éloigné du maître de pouvoir communiquer avec lui, en passant par les arduino qui se trouvent entre eux.

Ma box :

Presentation

L’intérieur de ma box :

Presentation

Module NRF24L01 et 433 MHZ:

Presentation

Module permettant de récupérer l’état de la sonnette :

Presentation

Le relais qui est relié à la sonnette, est déclenché lorsque quelqu’un sonne.
Le changement d’état du relais est détecté par l’arduino qui transmet l’information à la « box ».

Composé de :

  • Un arduino uno (4,70€)
  • un relais (récupération)
  • Un nrf24l01 (70 cts)

Cout total : 5,40€

Module Boîte aux lettres :

Presentation

Ce module fonctionne comme un capteur d’ouverture. Lorsque du courrier est inséré un contact se fait grâce à un aimant.

Il est composé :

  • d’une pile Trustfire de 3.7v 900Mah (2,20€)
  • d’un capteur ILS (récupération)
  • d’un attiny (échantillon)
  • d’une résistance (récupération)
  • d’un condensateur (récupération)
  • d’un nrf24L01 (70 cts)

Le cout total est de 2,90 €

Module sonnette déportée :

Presentation

Ce module, placé dans un bâtiment (éloigné d’environ 50m), me permet lorsque je suis à l’arrière de ma maison, grâce à un haut-parleur, de savoir si quelqu’un sonne.
Le récepteur est placé à l’extérieur afin d’éviter tout problème de type cage à faraday avec le bâtiment.

Composé de :

  • un haut-parleur (récupération)
  • Un arduino uno (4,70€)
  • Un nrf24l01 avec antenne externe (7€)

Cout total : 11,70 €

Présentation de l’interface de l’application:

L’interface est responsive, c’est-à-dire qu’elle s’adapte à tout type d’écran du smartphone au pc. L’arrière-plan s’actualise en fonction de la météo, s’il pleut le fond sera pluvieux, si brumeux alors fond brumeux. Les données des capteurs sont mises à jour instantanément à chaque changement d’état.

Ecran d’accueil:

Presentation

L’ensemble des capteurs (défini comme visible dans la partie administration) sont affiché sur la page d’accueil.

Graphique :

Presentation

Toutes les données sont stockées en base ce qui me permet d’établir des graphiques de différentes données.

Gestion du planning:

Presentation

Il est possible de gérer un planning pour l’ensemble des capteurs, ici il s’agit d’un chauffage.

Partie Administration:

Liste et Gestion des Équipements

Presentation

Gestion des pièces:

Presentation

Gestion des scénarios:

Exemple de scénario qu’il est possible de faire:

Presentation

Réception notification Android:

J’ai aussi développé une application Android afin de recevoir les changements d’état de mes capteurs par notification push.

Presentation

Exemple de fonctionnement du réseau :

Les arduino ont un moyen de communications sans fil, que l’on peut comparer au Z-wave ou au Zigbee voici deux schémas qui seront plus explicatifs

Presentation
Retour à l'accueil