Dernières publications

Le Domodroid nouveau est sorti

Hier, Domodroid est sorti en bêta 2 sur le market. Il n’a en fait de bêta que le nom au vu des évolutions réalisées par Pierre depuis la dernière fois! La grande nouveauté étant le mode map. Je ne vous en dit pas plus pour le moment et je vous laisse découvrir de vous même (page d’accueil > Maps). Juste un indice : préparez vos jpg/png et autres images.

Soyez juste indulgents en cas de bugs. Nous avons été peu à tester les différentes évolutions faites par Pierre et il peut donc y avoir des bugs non découverts. N’hésitez pas à les remonter à l’email indiqué dans l’application.

L’application est compatible avec Domogik 0.1.0 et avec la version de développement.

Lien vers le market

Je ferais un test détaillé d’ici une ou deux semaines, à moins qu’une bonne âme ne se dévoue avant moi ;)

Petit aperçu du nouveau Domodroid

C’est la journée des vidéos : après le Karotz, voici une petite vidéo qui montre le prochain Domodroid en action. La principale évolution ne se voit pas sur cette vidéo, nous en reparlerons plus tard avec plus de détails.

Ici on voit les widgets (animés!) en action ainsi que l’affichage d’un graphique. Le film a été réalisé sur une tablette Archos de 7 pouces.

Application Domogik controller pour Karotz

Vendredi l’application Domogik controller a été mise à disposition sur le market du Karotz. Elle permet de contrôler Domogik depuis le Karotz mais aussi de faire de la synthèse vocale sur le Karotz depuis Domogik.

L’application : http://www.karotz.com/appz/app?id=1862&category_id=0&filter=mindscape

La documentation du plugin qui permet de contrôler le Karotz est ici : http://wiki.domogik.org/plugin_karotz. Ce plugin est disponible avec la version de développement de Domogik (et il faut l’avouer ne prendra pleinement intérêt qu’avec l’arrivée des scénarios). Voici un exemple du Karotz qui parle :

Utiliser le Karotz pour contrôler Domogik a déjà un intérêt. Il est possible de commander un lumière ou demander une température, soit de manière vocale (exemple : « Domogik intérieur ») ou avec des tags Rfid. Exemple :

Je trouve ça bluffant!

Merci à Cédric, l’auteur de ces contributions!

Karotz : des petites vidéos sympatiques

Karotz, le lapin communiquant a communiqué (ben tiens) quelques vidéos le mettant en scène.

La première concerne sa capacité à vous envoyer des informations à distance en fonction des tags RFID qu’il va renifler (Nanoztag, ztamps ou tout autre puce RFID compatible). Il s’agit d’un usage relativement banal mais toutefois pratique afin de vérifier certains évènements.

La seconde montre qu’il est possible de contrôler Karotz à distance.

La troisième montre qu’il est possible de faire parler Karotz à distance.

La dernière montre que Karotz fait office de réveil

Bon, au final ces vidéos nous apprennent peu de choses qu’on ne savait déjà… Mais j’en profite pour signaler un point important à mon avis : il est fini le temps où les annonces de nouvelles applications Karotz concernaient uniquement des webradios… Depuis la reprise, il y a plus d’applications variées et c’est à mon avis une bonne chose. Sans oubliez les efforts que semble faire Aldebaran Robotics vis à vis de la domotique…

Affaire à suivre ;)

Capteur de niveau d’eau pour une cuve : partie 2 – le code

Le code

Aujourd’hui, suite de l’aventure de la cuve avec le code arduino. Le code et le schéma de branchement du capteur à ultra sons est disponible dans les sources de Domogik dans la branche default à ce chemin : src/external/hardwares/ar_tank/. Les sources peuvent être consultées via l’url http://hg.domogik.org/domogik/.

Le code n’est pas complexe et est documenté, je vous laisse donc le découvrir vous même ;) . Pour utiliser le capteur à ultra sons, je me suis simplement basé sur sa documentation accessible à cette url : http://avrproject.ru/sonar_hc_sr04/HC-SR04.pdf

Configuration du code

Avant d’utiliser le code, il vous faudra toutefois le paramétrer (en début du fichier ar_tank.pde) :

/***************** xPL configuration part *******************/

// Name of device in body of xpl message
#define MY_DEVICE "macuve"

// Source. Format is -.
// Vendor id and device id should not be changed
// Instance could be the device name
// Instance should only use letters or numbers! (no underscore, ...)
#define MY_SOURCE "arduino-tank." MY_DEVICE

// Duration of a minute in seconds (to allow shorter delay in dev)
#define MINUTE 60

// Heartbeat interval : time in minutes between 2 sends of a xpl hbeat message
#define HBEAT_INTERVAL 5

// Values intervals : time in minutes between 2 sends of values
#define DISTANCE_INTERVAL 1

/******************** tank configuration ********************/

// tank total depth in centimeters
#define TANK_DEPTH 231
// distance between sensor and the max level of water in centimeters
#define TANK_ZERO 49

Tout d’abord, la partie xPL :

  • MY_DEVICE : nom (et adresse dans le message xPL) de votre capteur.
  • MY_SOURCE : source xPL (vous pouvez le laisser tel quel)
  • MINUTE : durée d’une minute (utile pour accélérer le temps en phase de dev)
  • HBEAT_INTERVAL : le délai en minutes entre chaque envoi d’un message de heartbeat
  • DISTANCE_INTERVAL : le délai en minutes entre chaque envoi de mesures faites par le capteur

Et pour finir, il faut donner les mensurations de votre cuve :

  • TANK_DEPTH : profondeur totale de la cuve depuis le capteur (distance entre le capteur et le fond)
  • TANK_ZERO : distance entre le capteur et le niveau d’eau le plus haut dans la cuve

Une fois ceci configuré, chargez le code et il ne reste plus qu’à tout mettre en place ;)

Les messages xPL émis

Trois messages xpl sont émis :

xpl-stat
{
hop=1
source=arduino.tank-macuve
target=*
}
sensor.basic
{
device=macuve
type=percent
value=
}
xpl-stat
{
hop=1
source=arduino.tank-macuve
target=*
}
hbeat.basic
{
interval=1
}

Intégration dans Domogik

Un peu de patience ;)
J’ai déjà réalisé l’intégration chez moi, toutefois je ne pousserais le code que dans quelques jours, ayant d’autres développements en cours. Ce sera donc pour un troisième article…

Faire un capteur de niveau pour une cuve d’eau

Aujourd’hui je vais vous présenter la mise en place d’un capteur de niveau pour relever le niveau de ma cuve d’eau enterrée. Nous verrons uniquement l’aspect matériel, toute la partie code et mise en place dans Domogik fera l’objet d’un prochain article.

Contexte


Ma cuve est située en façade de ma maison. J’ai une trappe d’accès en béton armé (façon puisard) pour y accéder.
J’avais déjà une gaine vide (trait bleu) allant de mon tableau électrique jusqu’au niveau de mes compteurs (qui correspondent en postion à un des angles du parking). La boîte au lettre est située au niveau des compteurs. De même, le compteur d’eau est tout proche.
L’existence de la gaine me permettait d’emmener à la fois du courant et un cable réseau afin d’alimenter un montage. Toutefois emmener à l’extérieur un cable réseau connecté au LAN local présente un risque d’intrusion non négligeable.
Il n’existe aucune gaine avec une sortie proche de la cuve. Donc soit je profitais de la gaine bleue, soit je prolongeais la gaine bleue afin d’ammener le montage final au niveau de la cuve (gaine jaune).

A ce jour je voulais en priorité surveiller le niveau d’eau de ma cuve. Toutefois, j’envisage de compléter le montage avec de futures fonctionnalités : relévé de la température extérieure, détecteur de présence, détection du passage du facteur, relevé de la luminosité, relevé du compteur d’eau, etc… Tous ces points m’ont incité à installer mon montage au niveau des compteurs. Pour réaliser tout ceci, un Arduno était le candidat idéal.

Restait la problématique de l’envoi des données. Plusieurs solutions s’offraient à moi :

  • Le shield ethernet : il implique le problème de sécurité éviqué plus haut.
  • L’envoi par onde radio sur la bande des 433MHz (comme les technologies gérées par le Rfxcom). Cette solution est peu chère mais ne me plaisait pas : ayant déjà un Rfxcom, il m’aurait fallu soit bidouiller en simulant un device de type connu par le Rfxcom, soit me créer un récepteur approprié, sans compter un plugin pour écouter ce récepteur et émettre en xPL sur le LAN
  • Le Xbee. Les puces de série 1 permettent une communication en mode série (il est même possible d’avoir plusieurs montages émettant en même temps et chaque puce reçoit les messages des autres puces. Un plugin pour faire passerelle xPL série=>UDP avait déjà été initié (mais jamais testé/fini), c’était donc l’occasion de finir ce point. D’un point de vue coût, le Xbee peut coûter cher si on prend toutes les options (nous détaillerons plus tard) mais ce choix reste quand même intéressant.

Pour finir, j’ai choisi de relever le niveau de l’eau avec un capteur à ultra sons.

Le matériel

Nous allons avoir besoin du côté du serveur :

  • Un Xbee explorer (23€)
  • Une puce Xbee série 1 (20€)

Cet ensemble pourra être utilisé quelque soit le nombre de capteur Xbee que vous réaliserez, le prix reste donc intéressant.

Du côté du capteur, j’ai pris :

  • Un Arduino Uno (24€)
  • Un shield Xbee (17€)
  • Une puce Xbee série 1 (20€)
  • Un capteur à ultra sons HC-SR04 (8€ à HK). J’ai choisi cette référence car il est simple à mettre en oeuvre.

On a donc un coût de 69€ pour le capteur (sans compter les connectiques). Celà semble cher au premier abord! Toutefois, il ne faut pas perdre de vue que je grefferais d’autres capteurs dessus par la suite, ce qui réduira le coût par fonctionnalité, que les prix que j’indique sont ceux d’un magasin d’électronique grand public français (il est possible de trouver bien moins cher sur ebay) et que j’ai choisi l’option « luxe » : le shield Xbee n’est pas indispensable et avec un fer à souder, un régulateur de tension ou un pont diviseur et quelques composants, on peut se passer du shield Xbee.

Côté alimentation, j’ai réutilisé l’alimentation Rail DIN 12V/4A que j’avais achetée pour un montage précédant. Elle est plus que suffisante pour alimenter plusieurs montages dont un gérant un ruban de leds. Une alimentation de ce type coûte assez cher (entre 30 et 60€) mais permet une intégration propre dans un tableau électrique. Il est toutefois possible de recycler une ancienne alimentation pour peu qu’elle respecte les tensions en ampérage supportés par l’arduino.

En connectique, j’ai choisi d’alimenter l’arduino via un cable réseau. De la même manière le capteur à ultra sons présent dans la cuve est relié à l’arduino via un second cable réseau. Ces 2 cables ne sont en aucune manière connectés au LAN : ils servent juste à transporter du courant (arduino) et des niveaux logiques (capteur).

J’ai donc eu besoin de

  • Un cable réseau d’environ 14 mètres entre l’arduino et le capteur à ultra sons.
  • Un cable réseau d’environ 12 mètres entre le tableau électrique et l’arduino.
  • Quatre prises RJ45 femelles pour réaliser les adaptateurs
  • Une prise mâle d’alimentation de 2.1mm

En divers :

  • Un tableau électrique pour commencer mon tableau électrique dédié à la domotique.
  • Un boitier étanche de taille moyenne pour héberger l’arduino à l’extérieur.
  • Un petit boitier étanche pour y mettre le capteur à ultra sons.
  • Un disjoncteur 16A pour pouvoir couper le tableau domotique (tableau qui est indirectement déjà lié à un différentiel).
  • Quelques borniers, fils et une plaque de circuit imprimé pour faire un adaptateur 8 borniersRJ45 femelle.

Les adaptateurs

8 borniersRJ45 femelle

Cet adaptateur servira à envoyer le courant sortant de l’alimentation 12V dans un cable RJ45. Les images parlent pour elles mêmes :

RJ45 femellefiche mâle d’alimentation pour arduino

Cet adaptateur connecte 2 fils du cable RJ45 au jack d’alimentation :

Adaptateur 4 brochesRJ45 femelle

Ici j’ai simplement branché les cables 4 broches fournis avec les capteurs ultra sons (ayant acheté 4 capteurs, j’avais 4 cables et j’ai donc pu en vampiriser 2). Du côté du capteur ultra sons, il suffira de le brancher directement sur un cable 4 broches et du côté de l’arduino, il suffit avec des straps de relier le cable 4 broches aux pins de l’arduino (Vcc, Gnd et 2 entrées/sorties numériques).
En haut la version scotchée, en bas la version nue :

Le tableau électrique

Un fois le tableau électrique monté et cablé j’obtiens ceci :

Notez l’adaptateur 8 borniersRJ45 qui est à ce jour fixé sur une plaque en bois en attendant que j’ai un boitier rail din pour l’intégrer plus proprement.

Mise en place du capteur à ultra sons

La mise en place du capteur à ultra sons a été le point le plus délicat et c’est celui qui m’inquiète le plus pour l’avenir : problématiques de corrosion, etc. Seul l’avenir me dire ce qu’il en est.
Tout d’abord, j’ai fait 2 trous à la dimension des « yeux » du capteur dans le couvercle d’un petit boitier étanche. Le diamètre des trous était juste en dessous du diamètre des yeux : ceci a permis d’assurer l’étanchéité autour des yeux via forçage.

La vue depuis l’intérieur :


Ensuite, j’ai fixé le fond du boitier étanche au couvercle en béton armé de la cuve :

On passe le cable réseau :

On connecte au capteur :

Et on ferme :

L’Arduino et le Xbee

L’arduino avec son shield Xbee et la puce Xbee ont été mis dans un boîtier étanche de taille moyenne. Come le montre la photo, j’ai déjà anticipé des futurs tests de capteurs en collant une mini breadboard au fond du boitier.

Attention à un point : évitez de faire passer le cable d’alimentation trop près de l’antenne, j’ai remarqué que ça pouvait bloquer la transmission (ce qui est logique).

Notez les 2 boîtes de kinder posées au fond du boîtier…

Et l’humidité dans tout ça ?

Mon inquiétude principale à ce jour concerne le veillissement de l’installation : l’arduino a beau être dehors dans un boîtier étanche, je ne sais pas exactement comment tout ceci va vieillir avec l’éventuelle condensation, les différences de température, le gel…
Afin d’absorbé l’humidité, j’ai fait des trous dans 2 boîtes de kinder que j’ai remplies de Riz (basmati s’il vous plaît!).

Si vous avez des astuces, je suis preneur ;)

Critiques vis à vis de mon montage

* Le choix d’une puce Xbee avec la petite antenne souple n’a pas été le meilleur dans mon cas : le cable d’alimentation à l’intérieur du boîtier de l’arduino peut provoquer des interférences. L’utilisation d’une vrai antenne est donc à recommander, surtout si comme chez moi les ondes ont plusieurs murs de parpaing à traverser
* Les cables RJ45 que j’ai utilisé sont « seulement » du cable FTP : c’est loin d’être le meilleur type de câbles d’un point de vue blindage. Par souci d’économie, j’ai pris ce que j’avais déjà sous la main. Je vous conseille d’utiliser du cable de catégorie 5. Notez toutefois que le choix d’utiliser des cables RJ45 et de faire des adaptateurs propres a ses avantages ici : je peux très facilement remplacer les cables au besoin ;) .

Et le code, et l’intégration dans Domogik ?

Une autre fois ;)

Séparation de l’IHM « Domoweb » de Domogik

Dans les heures qui viennent l’IHM web de Domogik va être supprimée du dépôt Domogik. En effet, il avait été décidé de séparer l’IHM de Domogik. Le nouveau dépôt étant opérationnel, nous allons donc faire du ménage sur le dépôt de Domogik.

Il va donc falloir installer Domoweb depuis le nouveau dépôt ;)

Plus d’informations dans le forum.

Fuite mémoire corrigée dans la version de développement de Domogik

Celà fait maintenant quelques semaines qu’une fuite mémoire était présente dans la version en cours de développement de Domogik. Elle est maintenant corrigée et le correctif est présent dans la branche default. Il vous suffit donc de mettre à jour les sources :)

Domogik cherche un webmaster

Aujourd’hui je mets ici une annonce que nous avions posté sur le forum et à laquelle nous n’avons eu aucune réponse à ce jour :

Nous cherchons une personne qui voudrais participer au projet Domogik, et aimerait nous aider a gérer les différents sites web.
Cela nous permettrait nous libérer un peu plus pour les développements.
Les taches ne sont pas difficiles mais elles sont régulières et prennent du temps.
Il faut donc que la personne soit obligatoirement disponible rapidement par email.
Voir, venir faire un petit tour sur l’irc plusieurs fois par semaine.

Les choses à faire:
- Corriger les éventuels problèmes sur les sites
- Veiller à l’organisation du Wiki, (et éventuellement gérer les traducteurs/traductions)
- Poster les différentes annonces de sortie sur les différents sites, listes.
Voilà en gros.

Les compétences requises au minimum:
- Aimer et suivre le Projet Domogik
- Savoir écrire en Anglais/Francais correctement.
- HTML/CSS , php, mysql
- Connaître le fonctionnement de ssh

Optionnel:
- Utiliser Mercurial
- Un petit peu de graphisme pour faire des bannières?

Si vous avez des questions sur les différents sites/taches n’hésitez pas.

A votre bon coeur!

Domogik 0.1.0 (finale) est sortie!

Bonjour,

Aujourd’hui Domogik est sorti en version 0.1.0 (finale) !!!


Voici l’annonce de sortie :

Bonjour,

L’équipe de Domogik est fière de vous annoncer la sortie de la première version
Finale de Domogik : la 0.1.0.

Domogik est une solution libre d’automatisation de votre habitat basée sur le
protocole xPL. Huit plugins sont livrés avec cette version :

* plcbus : support du PlcBus.
* x10_heyu : support du X10 via heyu.
* onewire : support de la technologie 1wire (DS18B20, DS18S20 et DS2401).
* ipx800 : support des cartes relai IPX 800 v1 et v2.
* teleinfo : support des compteurs EDF récents pour récupérer les informations
liées à la consommation électrique.
* mirror : support du lecteur RFID Mir:ror.
* cidmodem : gestion du « caller id » avec un modem.
* wol_ping : démarrage d’ordinateurs à distance et ping.

Une interface graphique est fournie avec Domogik : Domoweb. C’est une
application web utilisant les dernières technologies (HTML5, CSS3) afin de vous
permettre de contrôler votre maison depuis un navigateur internet. Une
application pour Android est en cours de développement (Domodroid) : elle est
déjà fonctionnelle et disponible en téléchargement gratuit sur Android Market.

Domogik a pour but de simplifier le contrôle des équipements de votre maison,
quelles que soient les technologies. Pour ce faire, Domogik est modulaire : le
support d’une nouvelle technologie peut être simplement ajouté à l’aide d’un
plugin et chacun peut créer sa propre interface avec le langage de son choix
grâce à son API REST.

Grâçe au wiki, une documentation très complète est disponible
(http://wiki.domogik.org). Elle détaille l’installation, l’utilisation ainsi que
les possibilités d’extension de Domogik.

A propos des versions futures :

La prochaine version (les développements sont déjà bien avancés) concernera plus
particulièrement les plugins. Domogik sera livré nu, pour installer seulement
les plugins dont vous avez besoin, il suffira de passer par l’administration, et
choisir les plugins présents dans un des dépôts. Cette indépendance entre les
plugins et le coeur de Domogik apportera beaucoup plus de souplesse et de
rapidité pour la mise à disposition des plugins. Il sera par exemple possible de
tester les plugins en cours de développement en activant le dépôt « experimental »
ou encore de se contenter des plugins stables avec la configuration par défaut.
Plusieurs contributeurs nous ont rejoint et différents plugins sont en cours de
développement : Zibase, Zwave, notifications Android et iPhone, envoi de sms,
rfxcom, TTS, tellstick, etc. Ces plugins seront disponibles dès la prochaine
version dans les dépôts « stable », « testing » ou « experimental » en fonction de
leur avancement.
La version suivante concernera la fonctionnalité la plus attendue de Domogik, à
savoir la possibilité de créer des scénarios.

Cette version est disponible ici : http://wiki.domogik.org/Download
La documentation détaillée de l’installation est ici :
http://wiki.domogik.org/doc_StandardInstallation

Cordialement,
L’équipe Domogik
http://www.domogik.org
http://forum.domogik.org
irc : #domogik@freenode.net
General Mailing list : domogik-general@lists.labs.libre-entreprise.org
Developers Mailing list : domogik-developers@lists.labs.libre-entreprise.org