Domótica en RaspberryPi (parte 1)

Domótica en RaspberryPi (parte 1)

... uno de los SuperPoderes más esperados

¡¡Ha llegado el momento!! Voy a controlar las luces de mi casa, alguna alarma y hasta el termo del agua (soy de Sevilla y hoy sale magma por los grifos). Una brevísima introducción y la explicación tras el salto.

Sistemas de domótica en el mercado puede haber cientos. Los hay carísimos y complejos que sólo controlan un par de luces, los hay que son capaces de controlar miles de dispositivos, puedes hacerte uno tu mismo con un poco de electrónica y los hay que son modulares, que los puedes ir poniendo poco a poco, no muy caros, que permiten conectarse a un pc por usb, que no requieren cableado extra ... es el que voy a usar. Concretamente elprotocolo X10, en su versión europea (si sigues mis pasos por favor asegúrate de no equivocarte eligiéndolos).
Mi sistema consta de un controlador-receptor llamado CM15PRO, conecta por usb al RaspberryPi y a un enchufe convencional:
Para las luces usaré módulos on/off para las luces led y de bajo consumo, el AW12:

Para el resto de luce usare módulos regulables en intensidad, el LW12:

Para el termo usare un módulo de aparato, el AM12:

La idea es manejar los módulos desde este micromando, KR22:

también desde el móvil, via web y via teléfono. Y si me quedo sin ruter y sin micromando, puedo seguir encendiendo y apagando con los interruptores de toda la vida. Para el software usaré Mochad.
No voy a entrar ahora mismo en la parte de la instalación eléctrica de los módulos, pero si os diré que es muy sencillo. Recuerda elegir un código de casa y programa el mando y los micromódulos en ese código.

Bueno bueno bueno, instalamos un LW12 en una de las luces del salón, le asigno el código A3. Conecto el CM15PRO a un enchufe y a un usb del Raspberry, ejecuto un dmesg y veo lo siguiente:
?
1
2
3
4
5
usb 1-1.3: new low speed USB device number 4 using dwc_otg
usb 1-1.3: New USB device found, idVendor=0bc7, idProduct=0001
usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
usb 1-1.3: Product: USB ActiveHome Interface
usb 1-1.3: Manufacturer: X10 Wireless Technology Inc
Muy bien muy bien. Ahora vamos a compilar mochad: descatgamos de http://sourceforge.net/projects/mochad/
?
1
2
3
4
5
6
7
tar -xvzf mochad-0.1.15.tar.gz
cd mochad-0.1.15
apt-get install libusb-1.0-0-dev
./configure
make
make install
./mochad
Para ver y manejar el CM15PRO, hay que realizar una conexión por puerto 1099, así que:
?
1
nc localhost 1099
y vamos a encender la luz:
?
1
pl a3 on
jejeje y ahora vamos a apagarla
?
1
pl a3 off
Perfecto, además puedo controlar el brillo y todo, es tan fácil que es insultante. En próximos post, publicaré unos scripts y demonios para automatizar tareas y además veremos como controlarlo fácilmente desde la web y desde un móvil.

ACTUALIZACIÓN: siguiendo en mi nivel de scripting, voy a usar este superfástico script que me acabo de fabricar, para mandar cómodamente las ordenes al mochad (aviso gurús: es tela de cutre):
?
1
2
#!/bin/bash
echo pl $1 $2 | nc localhost 1099 - eliminame & kill $(ps aux | grep nc | grep eliminame | awk '{ print $2 }')
lo guardamos como /usr/local/bin/x10.sh y le damos permisos de ejecución:
?
1
chmod +x /usr/local/bin/x10.sh
Para usarlo, es tan facil como:
?
1
x10.sh a2 off

Leave a Reply