Christophe Nowicki

April 30, 2009

Configuration de l’USB-UIRT (Universal Infrared Receiver Transmitter) sous Debian GNU/Linux

L’USB-UIRT est un petit module qui se branche sur le port USB et qui permet d’envoyer et recevoir des ondes infrarouges.
Je l’utilise pour controler les différents éléments de mon installation home-cinéma (Amplificateur Audio/Vidéo, Freebox, Lecteur de DVD, etc…) à partir de ma machine Multimédia fonctionnant sous Debian GNU/Linux “Lenny”.
J’ai acheté mon module chez Domadoo en France : USB-UIRT (Universal Infrared Receiver/Transmitter).
L’objet de ce billet est l’installation du module sous Debian GNU/Linux.

Installation du matériel

Lorsque vous branchez le module sur le port USB, vous devez le voir via la commande lsusb :

$ lsusb
Bus 001 Device 025: ID 0403:f850 Future Technology Devices International, Ltd

Il faut ensuite charger le module ftdi_sio, le mettre dans le fichier /etc/modules, lors du chargement du module vous devez avoir les informations suivantes dans le fichier /var/log/messages :

[ 23.114110] ftdi_sio 4-1.1.1.1.1:1.0: FTDI USB Serial Device converter detected
[ 23.114110] ftdi_sio: Detected FT232RL
[ 23.114110] usb 4-1.1.1.1.1: FTDI USB Serial Device converter now attached to ttyUSB2

Installation du logiciel

Il suffit d’installer lirc via apt :

# apt-get install lirc

Le module ne nécessite pas de drivers spécifiques dans le noyau.
Il suffit de lancer lircd :

lircd -n -H usb_uirt_raw -d /dev/ttyUSB2
lircd-0.8.3[10254]: config file contains no valid remote control definition
lircd-0.8.3[10254]: lircd(userspace) ready

Puis irw dans une autre console pour lire les signaux IR :

lircd-0.8.3[10254]: uirt2_raw: checksum error
lircd-0.8.3[10254]: uirt2_raw: UIRT version 0905 ok

Et la, c’est le drame :)
Mais pas de panique, le message d’erreur checksum error, n’est pas important!
Il y a bien un bug dans le noyau depuis la version 2.6.20 : USB UIRT: uirt2_raw: checksum error.
Mais cela fonctionne avec le 2.6.26 disponible dans lenny, par contre si vous avez le message d’erreur suivant : uirt2_raw: could not set DTR, alors il faut upgrade votre version du noyau ou modifier le code source du module.

Configuration des télécommandes

De très nombreuses configurations de télécommandes sont disponibles sur le serveur du projet LIRC : ici.

Il suffit de télécharger le fichier de configuration de votre télécommande et de le mettre dans le fichier lircd.conf :

# cd /etc/lirc/
# wget http://lirc.sourceforge.net/remotes/logitech/Z-5500D
# cat Z-5500D >> lircd.conf

Nous allons ensuite configurer le fichier /etc/lirc/hardware.conf du deamon lirc pour le lancer:

# /etc/lirc/hardware.conf
#
# Arguments which will be used when launching lircd
LIRCD_ARGS=""

#Don't start lircmd even if there seems to be a good config file
#START_LIRCMD=false

#Don't start irexec, even if a good config file seems to exist.
#START_IREXEC=false

#Try to load appropriate kernel modules
LOAD_MODULES=false

# Run "lircd --driver=help" for a list of supported drivers.
DRIVER="usb_uirt_raw"
# If DEVICE is set to /dev/lirc and udev is in use /dev/lirc0 will be
# automatically used instead
DEVICE="/dev/ttyUSB2"
MODULES=""

# Default configuration files for your hardware if any
LIRCD_CONF=""
LIRCMD_CONF=""

Nous pouvons alors lancer lircd :

# /etc/init.d/lirc start
Starting lirc daemon: lircd.

Recevoir les ordres infrarouges

Pour recevoir les ordres, il faut utiliser la commande irw :

$ irw
0000000010ef58a7 00 vol+ logitech_z5500
0000000010ef58a7 01 vol+ logitech_z5500
0000000010ef708f 00 vol- logitech_z5500
0000000010ef708f 00 vol- logitech_z5500
0000000010ef58a7 00 vol+ logitech_z5500
0000000010ef58a7 01 vol+ logitech_z5500
0000000010efd02f 00 optical logitech_z5500
0000000010efd02f 01 optical logitech_z5500

Envoyer des ordres infrarouges

Pour envoyer des ordres, il faut utiliser la commande irsend :

$ irsend SEND_ONCE logitech_z5500 power

Conclusion

Pour toutes les autres fonctionnalités et la configuration de vos applications (mplayer, freevo, etc…) , je vous conseille de lire la documentation du projet LIRC.
Il existe d’autres modules que l’USB-UIRT, comme par exemple USB IR Transceiver de IguanaWorks.

Filed under: Debian,Home automation — Tags:, , — cscm @ 18:00

April 23, 2009

Mesure de température à l’aide de capteurs 1-wire

Cherchant une solution pour mesurer la température de mon appartement de manière informatisée ; j’ai découvert le bus 1-Wire qui permet de connecter des capteurs divers à l’aide d’un seul cable (téléphonique aka RJ11 dans mon cas).
Ce protocole est généralement utilisé pour des instruments de mesure météorologiques.

Ce billet explique le fonctionnement de mon installation.

Le matériel nécessaire

Composant Prix
Adaptateur USB vers 1-Wire ( DS9490R ) 29 $
Cable RJ12 2 à 10 $
Capteur de température ( TAI8520 ) 22 $
Capteur de température et d’humidité ( TAI8540D ) 50 $

Le fabriquant de ces modules est AAG Electronica.
Vous pouvez commander ce matériel directement chez le fabriquant aux USA ou bien chez Audon Electronics en Angleterre.

J’ai acheté mon matèriel chez Audon, car le taux de change de la Livre sterling est actuellement très avantageux (1 € = 1 £ ).
De plus, cela évite les diffèrents problèmes liés aux douanes (non … je vous dis que ce sont des capteurs de température pas des missiles ;-) )

Installation du matériel

Avant de brancher l’adaptateur USB, il faut désactiver le chargement des modules noyau ds2490 et wire dans le fichier : /etc/modprobe.d/blacklist


cat <<EOF >> /etc/modprobe.d/blacklist
blacklist ds9490r
blacklist ds2490
blacklist wire
EOF

Vous pouvez ensuite brancher l’adaptateur USB et vérifier qu’il est bien présent à l’aide de la commande lsusb :


$ lsusb | grep 1-Wire
Bus 002 Device 006: ID 04fa:2490 Dallas Semiconductor DS1490F 2-in-1 Fob, 1-Wire adapter

Digitemp, tu oublira vite

Lorsqu’on cherche une solution de monitoring de température, on trouve sur le programme Digitemp.
Je ne vous le conseille vraiment pas, car il ne fonctionne pas très bien :

  • il renvoie une valeur de manière aléatoire ;
  • il nécessite les droits root pour lire le port usb ;
  • les scripts fournis avec le programme ne fonctionnent pas, il faut les modifier, etc…

Bref après une soirée de configuration, j’ai bien réussi à mettre les valeurs dans une base MySQL avec un script cron et digitemp, mais le lendemain matin cela ne fonctionnait plus …

Owfs, rocks les ours de laponie du nord

Owfs est un bien meilleur solution pour le monitoring de la température.
L’installation et la configuration est décrite sur le Wiki de Sebastien Mei :

J’ai donc installé le tout et configuré le monitoring avec munin :

C’est pas ti beau?

Filed under: Debian,Home automation — Tags: — cscm @ 22:19

April 18, 2009

HADOPI : Lettre ouverte à mon député

Bonjour Monsieur XXX,

J’habite à XXX, je suis un jeune ingénieur en informatique. Mon vote et celui de ma conjointe vous a soutenu lors des dernières élections. Je me permets donc d’attirer votre attention, sur le retour du vote de la loi HADOPI dite « Création et Internet » à votre calendrier.
En effet, comme beaucoup de personnes, nous comptons sur votre présence lors du prochain vote.

Comme vous le savez, le développement d’Internet et la vulgarisation de l’outil informatique permettent d’avoir une relation d’affaires sans contrainte d’espace et de temps. Ils ont permis le développement du télétravail.

Il a été démontré que cette pratique, le télétravail, possède de nombreux avantages pour la société (réduction des coûts de transport, du stress, amélioration de la productivité, etc.) Elle est préconisée et expérimentée par de nombreuses entreprises parmis lesquelles IBM, EDF, Microsoft et Renault.

Dans le cadre de mon travail, l’employeur a l’obligation de couvrir mes coûts de communication ;
cela veut dire qu’il prend en charge la facture de ma ligne ADSL. La loi Création Internet vise à couper la line ADSL d’une personne si celle-ci est suspectée de télécharger des oeuvres protégées par le droit d’auteur. Plusieurs études montrent qu’il est très facile d’usurper une addresse IP sur Internet et que la loi que vous allez voter est dépassée techniquement et fait courrir un risque même aux internautes honnêtes.

Néanmoins, si vous persistez à soutenir cette loi, j’aimerais que vous proposiez au minimum un amendement pour protéger les télétravailleurs. En effet, une coupure de la ligne signifierait l’impossibilité de travailler et donc nous conduirait directement au chômage technique.
Cette loi placerait les télétravailleurs dans une insécurité juridique et mettrait en place une triple peine (coupure, paiement d’un service inutile et chômage) et freinerait le développement de cette pratique.

Je vous demande donc de proposer un amendement pour protéger les télétravailleurs.

Nous espérons que vous pourrez intervenir efficacement pour les télétravailleurs, et nous serions bien évidement prêt le cas échéant à vous renouveler toute notre confiance lors des prochaines élections.

Bien Cordialement,

Filed under: Coup de gueule — Tags: — cscm @ 15:06

April 12, 2009

Aquaero plugins for Munin

Aquaero My home servers are water cooled, I use the Aquaero device for monitoring the status of the cooling system. (fan speed, temperature and water flow).

The Aquaero is a monitoring system made by Aquacomputer, an German watercooling hardware manufacturer.

This monitoring system is working on Debian GNU/Linux and the source code of the monitoring program is available under the terms of the LGPL License.

You can find the command ligne monitoring system here : aquaero downloads.

I’ve wrote an C++ plugin for Munin, in order to get the watercooling status monitored.

Fan speed Water flow Temperature

Setup

Fallow thoses instructions in order to build and setup the plugin :

$ su
# cd /usr/src
# wget http://www.aqua-computer.de/download/aquaero_software/aeinfo-2.1-src.tar.gz
# tar xzf aeinfo-2.1-src.tar.gz
# cd aeinfo-2.1-src/
# wget http://svn.csquad.org/aquaero_munin/munin.cpp
# g++ -Wno-deprecated munin.cpp -lusb -o munin
# mv munin /usr/share/munin/plugins/aquaero
# cd /etc/munin/plugins
# ln -s /usr/share/munin/plugins/aquaero aquaero_fan
# ln -s /usr/share/munin/plugins/aquaero aquaero_temp
# ln -s /usr/share/munin/plugins/aquaero aquaero_flow
# echo < > /etc/munin/plugin-conf.d/munin-node
[aquaero_*]
user root
EOF
# /etc/init.d/munin-node restart

Enjoy and feel free to report bugs.

Filed under: Hardware — Tags:, , — cscm @ 08:10

April 11, 2009

AGF, Refus à votre demande de résiliation du contrat auto suite et fin

J’ai décris ma mésaventure avec mon assureur auto dans mon précédent billet :

AGF, Refus à votre demande de résiliation du Contrat Auto.

Voici la fin de la petite histoire. Après de nombreux appels téléphoniques, j’arrive à joindre le responsable de mon dossier dans la semaine qui suit la réception du courrier.
Après une courte explication, le responsable m’indique que ma lettre de résiliation ne comportait pas de date de fin du contrat (date de l’échéance annuelle).
Il me demande d’envoyer une lettre simple pour complẃter mon dossier pour résilier.
Ce que je fais la semaine suivante.

Au bout de deux mois, je recois une nouvelle lettre de la part d’AGF.
Celle-ci contient la nouvelle vigniette d’assurance et un nouveau échéancier de paiement avec biensûr une nouvelle augmentation de 5% du tarif.

Cela veut donc dire que mon contrat n’a pas été résilié après un recommandé, plusieurs coups de fils et une lettre simple.

L’agent d’assurance AGF m’aurait menti!?

Je prends donc mon télèphone, pour m’entendre dire que c’est normal et que c’est à cause de l’organisation d’AGF et que le siège n’a pas encore recu ma demande de résiliation ( au bout de deux mois, décidément … ).

Je renvoie un second recommandé, mais cette fois-ci j’ai demandé à un ami ancien assureur (repenti ? ;-) ) de
m’aider à rédiger la lettre pour que celle-ci soit en bonne et due forme.
Celle-ci se base sur la loi Chatel car j’ai dépassé la date limite de résiliation.

Voici le contenu de cette Lettre type :

Objet : résiliation contrat X XXX XXXX
Client n° :  XXX
Échéance : JJ/MM/YYYY


Messieurs, 


Par la présente, en application de la loi n°2005-67 du 28 janvier 2005, je vous remercie de bien vouloir procéder à la résiliation, 
à la fin de la période en cours, du contrat d'assurance ci-dessus référencé.

Sauf erreur de ma part, ce contrat prendra donc fin de JJ MM YYYY  à 24H00.

Vous remerciant de bien vouloir faire le nécessaire, je vous prie d'agréer, Messieurs, l'expression de mes sincères salutations.

Par sécurité, j’ai aussi interdit le prochain prélèvement de la part d’AGF.

Pour finir avec cette histoire, j’ai fais le tour des assurances pour faire des devis.

En une après-midi, j’ai fais cinq devis au près des diffèrentes assurances de ma région.
J’ai donc réussi à négocier un rabais de 50% sur mon contrat, tout en gardant les mêmes conditions.
Pour savoir si vous avez fait, une bonne négociation, il faut que le montant de votre facture d’assurance soit supèrieur à ce que vous avez réellement payer. Seulement dans ce cas, l’assureur à rééllement fait un effort ;-)

La moralité de cette histoire est qu’il ne faut pas être fidèle envers son assureur et faire jouer la concurrence sur vos contrats tous les ans.

Filed under: Coup de gueule — Tags: — cscm @ 22:20

Bon plan pour l’achat de composants Lego Mindstorms

Si vous cherchez des composants pour vos créations Lego Mindstorms, je vous conseille de faire un petit tour sur le site d’Active Robots.

Il s’agit d’un revendeur spécialisé en matériel robotique, situé en Angleterre qui propose une large gamme de produits.

Les principaux avantages de ce revendeur sont les suivants :

  • Très bon prix, à cause de la quasi parité monétaire entre l’euro et la livre, les prix sont infèrieurs de 30 à 40% par rapport aux magasins Francais ;
  • Livraison ultra rapide (en deux jours en moyenne) pour 9,45 euros ;
  • Large choix de produits dont des composants de chez Mindsensors et HiTechnic ;
  • Pas de frais de douane.

Voici un exemple pour illustrer mes propos, l’achat du couple classique Pile Rechargable + Transformateur pour NXT :

Soit au total 70 euros pour la France et 44 pounds (soit 46 euros) pour l’Angleterre.

Filed under: Robotics — Tags: — cscm @ 22:09

Powered by WordPress