OpenHAB #18 (Reprogramar un SonOff S26)

Ya hemos visto con anterioridad como reprogramar otros artículos de Itead. Son baratos, fáciles de usar y tienen su propia aplicación que resulta adecuada para la mayoría de los usuarios. Pero nuestro objetivo en éste blog es hacer que dispositivos de varios fabricantes puedan funcionar en nuestro entorno OpenHAB y no tener que usar distintas aplicaciones para cada dispositivo instalado en nuestra casa.

Es por ello que el primer paso es desmontar el S26 para poder reprogramarlo a nuestro gusto. Y éste es aspecto del enchufe interiormente:

IMG_0317

Una vez desmontado es fácil localizar y acceder a los pines que necesitamos para la reprogramación:

IMG_0318

Tan sólo con soldar 4 cables ya podemos reprogramar el dispositivo. Como es habitual usamos el rojo para el positivo de alimentación (3,3v), el negro para el negativo (GND) y otro par de cables para los pines Tx y Rx que debemos intercambiar en el adaptador USB-serie de forma que conectemos Tx de un lado con Rx del otro y viceversa.

IMG_0320

Ya estamos listos para la reprogramación. Podeis descargar el sketch del siguiente enlace:

SonOff S26 OpenHAB.ino

Lo abrimos con nuestro arduino IDE, incluimos en el programa los campos necesarios para que funcione en nuestro domicilio

S26_sketch

Tendremos en cuenta antes de programarlo que el modelo de placa es una «Generic ESP8266 module» y que el puerto serie seleccionado sea el correcto.

Pulsamos programar y ya está listo para usar en nuestro entorno OpenHAB.

Ahora podemos desconectar los cables, volver a montar nuestro enchufe inteligente y enchufarlo a la corriente.

A partir de aquí sólo queda configurar los archivos .items, .sitemap y .rules para hacer uso del dispositivo en nuestro entorno OpenHAB.

Archivo .items:

Switch S26IN "Enchufe" <poweroutlet> ["Switchable"] {mqtt=">[mosquitto:s26/topic:command:ON:ON],>[mosquitto:s26/topic:command:OFF:OFF]"}
Switch S26OUT "Estado enchufe" {mqtt="<[mosquitto:status/topic:state:default]"}

Archivo .sitemap:

Switch item=S26IN

Archivo .rules:

rule "Enchufe encendido por pulsación"
when
Item S26OUT received update ON
then
sendCommand(S26IN, ON)
end

rule "Enchufe apagado por pulsación"
when
Item S26OUT received update OFF
then
sendCommand(S26IN, OFF)
end

A través del archivo .rules nos aseguramos que cuando se enciende o apaga el enchufe a través del pulsador, se notifica el cambio de estado al servidor y así tendremos en pantalla el estado real del enchufe en cada momento.

Deja una respuesta

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s