Como parte de mis publicaciones sobre autohospedaje, luego de haber instalado una nube privada para intercambiar fotos con mi familia e instalado un transmisión de música para tener acceso a mi música desde cualquier lugar, me lancé hace unas semanas en domótica con Jeedom, Le sugiero que haga un pequeño resumen sobre el tema con un poco de retrospectiva. Si quieres iniciarte en la domótica, pero nunca te has atrevido a dar el paso, este artículo es para ti.
La elección del protocolo.
Uno de los primeros puntos que surgen cuando se quiere montar la domótica en casa es la elección del protocolo.
Los dos principales son RFXCom y Z-Wave (pero no son los únicos). Cada uno tiene sus ventajas y desventajas. ZWave, por ejemplo, utiliza una técnica de malla donde todos los elementos de ZWave participan en la malla de señales para una mejor confiabilidad (con un sistema de reconocimiento de respuesta). En cambio, donde un módulo RFXCom puede rondar los veinte euros por los primeros precios, es raro tener un módulo ZWave por debajo de los 60 euros. El RFXCom es compatible con diferentes módulos. Como sensores Oregon Scientific o Somfy RTS (pero no con IO HomeControl también utilizado por Somfy y Velux). La ventaja es que los protocolos no son incompatibles. Por otro lado, es necesario proporcionar un receptor por protocolo (RFXtrx433E V2 por ejemplo para RFXCom a unos cien euros, un dongle USB para ZWave a unos cuarenta euros). Por tanto, la elección se hará en función de las necesidades que tengas para tu instalación domótica. Por mi parte, opté por RFXCom de momento, con dos tomas de radio para controlar las luces, un sensor de apertura de puertas y un mando a distancia. Todo para poder hacer las primeras pruebas, y jugar con Jeedom y los escenarios. Volveremos a esto un poco más adelante en este post.
Instalación de Jeedom
La instalación de Jeedom es bastante simple. Encontrarás todos los detalles según tu configuración (en una Raspberry, en un NAS, en un sistema Linux, etc.) siguiendo este enlace . Por mi parte, lo instalé en mi servidor Debian. Tenga en cuenta que, de forma predeterminada, Jeedom se ejecuta en Nginx, si lo desea, puede instalarlo en Apache. Por mi parte, lo dejé en Nginx, lo que significa que se ejecuta en un puerto diferente al puerto 80 (que usa mi Apache).
Primeros pasos
complementos
Después de la instalación y configuración básica, una de las primeras cosas que harás es buscar complementos en el mercado de Jeedom (en el menú «General», «Complemento»). Ya necesitará el complemento que corresponda a su protocolo para poder conectar sus diferentes módulos después.
Aquí hay algunos complementos que podrían serle útiles (una lista no exhaustiva, por supuesto, hay muchos, algunos de los cuales están relacionados con hardware específico):
- Clima: podrás recuperar con este plugin la información del clima correspondiente a tu ciudad a través de la web. Luego puede usar estos valores en escenarios, por ejemplo (enviarme un sms en caso de viento fuerte, comenzar a regar si el clima está seco…)
- Correo: permitirá que Jeedom envíe correos electrónicos. Conveniente para ser notificado de eventos especiales.
- SMS gratuitos: si está en Free Mobile, Jeedom podrá enviarle SMS a través de la API de Free Mobile (sin necesidad de colocar una tarjeta 3g en Jeedom).
- Imperihome: permite unir Jeedom e Imperihome (aplicaciones móviles).
- Virtual: le permitirá crear módulos virtuales en Jeedom, por ejemplo, un interruptor virtual que tiene el efecto de encender todas las luces en un piso.
- Waze in time: recupera información del tiempo de viaje a través de Waze, conveniente para que Jeedom nos envíe un SMS si el tiempo de viaje es más largo de lo esperado, por ejemplo.
- Cámara: Le permite administrar las cámaras IP.
- Alarma: le permite administrar las alarmas y la seguridad.
- Calefacción: le permite tener control sobre la gestión de la calefacción.
- SARAH: permite gestionar las interacciones con el software SARAH para controlar todo esto por voz.
- … y todos los muchos otros que te dejo descubrir.
Tenga en cuenta que no todos los complementos son gratuitos y que hay complementos oficiales (creados y ahora por el equipo de Jeedom) y complementos no oficiales (creados y mantenidos por usuarios de Internet, por lo que pueden estar menos alineados con el núcleo de Jeedom).
Objetos
Para fines organizativos, podrá crear objetos (menú «General», «Objetos») en Jeedom. Estos son virtuales y le permiten crear grupos de equipos. En general, los objetos esquematizarán tu hogar. Por ejemplo, podrá crear un objeto «Planta baja» y luego crear, por ejemplo, un objeto «Comedor» que dependerá de la «Planta baja».
Entonces podrá asignar su equipo y sus escenarios a estos objetos.
Equipo
Ya puedes conectar tu equipo.
Para hacer esto, debe ir al complemento correspondiente a su protocolo. Dispondrás de la lista de equipos ya conectados y un botón de añadir. La forma más sencilla es incluso activar la creación automática de equipos en la administración de los plugins. Para otros, no será suficiente. Por ejemplo, para agregar un enchufe DIO, primero debe crear el equipo (antes de conectarlo) a través del botón «Agregar» (+), elegir de la lista de enchufes DIO, activarlo y guardar todo. Luego verá la creación automática en la parte inferior del equipo de los comandos, en particular «encendido» y «apagado». Luego puede conectar el enchufe, y durante el momento en que el diodo parpadee (generalmente dentro de los 5 segundos de la conexión), deberá hacer clic en el botón «Probar» frente al comando de encendido. Luego, su socket se empareja con Jeedom. Será el mismo principio con los enchufes.
Luego puedes entrar en los detalles de un equipo para configurar las diferentes acciones posibles, los valores esperados, la vinculación con el objeto, si activarlo o no…
Escenarios
Es el corazón y el interés del sistema. Por el momento solo dispones de objetos y equipos que pueden recibir o crear información, con los escenarios podrás dotar de inteligencia a todo ello. Los escenarios se encuentran en el menú “General”, “Escenarios”.
Podrá asignarlos a objetos y agruparlos.
Cuando cree un escenario, podrá elegir entre un modo simple y un modo avanzado. El modo que describiré es el modo avanzado. Al ingresar a un escenario, podrá, al igual que los equipos, asignarlos a un objeto a modo de clasificación. Un punto importante del escenario es el modo de lanzamiento, ya sea provocado (por un evento, como presionar un botón o activar un sensor) o programado (por un lanzamiento regular en cron). Varios otros parámetros están disponibles en el encabezado de un escenario como en este ejemplo:
Luego definirá qué hará el escenario con precisión, y para esto podrá agregar bloques, a través del botón dedicado:
Es posible añadir bloques de acción, bloques condicionales (if…then…else), bucles… En definitiva, suficiente para hacer algo bastante avanzado.
Sobre todo porque podrás anidar estos diferentes bloques. También es posible tener escenarios que llamen a otros escenarios. Tomemos el ejemplo simple de un control remoto con el que queremos tener un botón que controle una luz. Vamos a crear un bloque condicional, si el botón envía la información de iluminación encendemos la luz, de lo contrario la apagamos:
En el bloque, tienes botones que te permiten buscar comandos. No hay mucho que ingresar en este bloque, solo debe elegir el equipo adecuado con los valores esperados a través de cuadros de diálogo como este:
En este punto, mide la utilidad de los objetos y la asignación correcta de su equipo y escenarios a sus objetos. Porque cuanto más grande sea tu instalación, más complicado será encontrar a tus pequeños si no tienes una buena organización desde el principio.
También podemos ver que mezclando equipos físicos (sensores, enchufes, enchufes, etc.) con equipos virtuales (información recuperada por plugins, envío de emails, sms) podrás crear escenarios muy completos. Algunos ejemplos de posibles ideas:
- Un sensor te deja ver que estoy llegando a casa. Con la información recuperada por Weather, sé que el sol se ha puesto. En este caso, enciendo una luz.
- Cuando no estoy en casa, enciendo las luces durante la noche para simular una presencia. Si se activa un sensor de apertura de puerta, me avisa por SMS y la cámara recibe la orden de grabar durante 30 s.
- El complemento de Waze recopila los tiempos de viaje a mi trabajo. Si alguna vez el tiempo de viaje es más largo de lo normal, se me notifica por SMS para salir un poco antes.
- …
Como ves, las ideas son infinitas y dependen sobre todo de lo que esperas de tu instalación.
Posibles problemas
Pérdida de RFXCOM
Lo pongo aquí, aunque es poco probable que te encuentres con el mismo problema que encontré, porque me tomó un tiempo resolver este problema.
Reinstalé mi sistema, y una vez que mi Debian se reinstaló, mi Jeedom se instaló y se volvió a ensamblar con la copia de seguridad, ninguno de mis comandos RFXCOM funcionó. El demonio RFXCOM se estaba iniciando (aunque parecía complicado, el modo automático ya no funcionaba), los registros se veían correctos (estaba tratando de encender un enchufe, podía ver claramente que pasaba la solicitud) pero no pasaba nada, mi bombilla seguía sin esperanza extinguido. Mientras examinaba los mensajes del sistema cuando conecto y desconecto mi transmisor RFXCOM en el puerto USB a través del comando dmesg, encontré el siguiente mensaje:
usbfs: interfaz 0 reclamada por ftdi_sio mientras que 'brltty' establece la configuración #1
Por lo tanto, parecería que mi puerto usb fue monopolizado por este paquete brltty (que aparentemente hace posible administrar teclados braille). Y de repente mi transmisor no pudo hacerse cargo. Desinstalar este paquete (apt-get remove brltty) resolvió mi problema.
502 Puerta de enlace no válida
A veces me he encontrado con este problema, especialmente al actualizar mi sistema (migración de Debian Wheezy a Jessie, por ejemplo). Esto a menudo se debe a que los módulos PHP se reinstalaron o reconfiguraron correctamente (en particular, php-fpm y php-cgi).
El error al enviar la solicitud a la solicitud de jeedom obtuvo un argumento de palabra clave inesperado json
Encontré este problema después de una actualización de Jeedom. Mis escenarios continuaron funcionando, pero era imposible, por ejemplo, agregar un objeto RFXCom en modo de inclusión. Entonces estaba en Debian Wheezy. Actualizar a Debian Jessie resolvió mi problema. Probablemente se debió a paquetes que eran demasiado antiguos en Wheezy, pero no pude identificar cuáles (tal vez la versión de PHP, pero aún pude actualizar a 5.6 en Wheezy).
Recursos
Aquí hay una primera descripción general de Jeedom. No es exhaustivo, porque hay muchos aspectos que no he tratado (administración, dashboard, creación de vistas, enlace con ImperiHome, interacciones…). Pero debería permitirle comenzar si desea iniciarse en la automatización del hogar con Jeedom.
Algunos enlaces para ir más allá:
Sitio oficial
Documentación
Canal de Youtube (por otro lado desde los primeros tutoriales han cambiado algunos elementos de la interfaz o de la organización).