Como tasmotizar un Sonoff Basic

Compartelo con otros!

Hoy va de openHAB y smarthome.
Ya tengo unos cuantos de estos módulos de sonoff en funcionamiento, y ningún problema de momento. Eso si, todos flasheados con tasmota, que permiten un control mucho más fácil, y los desconecta de los servidores chinos.

sonoff basic r3 con los elementos incluidos

El hardware

Me hacían falta aun un par de ellos más, y ya han llegado!
para poderlos añadir a openHAB necesitamos «tasmotizarlos» para que sean capaces de comunicarse por MQTT, y para ello necesitamos:
– un sonoff
– un conversor USB-TTL a 3v3 (importante!)
– una herramienta para Windows o Mac
– la última versión de tasmota

Lo voy a hacer con un Sonoff Basic R3, pero el procedimiento es muy similar para otros sonoff, como por ejemplo el sonoff mini.
Si aún no tienes ninguno, puedes conseguirlo aquí:

como conversor USB-TTL yo tengo uno muy sencillito, este de aqui:

conversor USB a TTL de 5v y 3v3

En principio cualquiera vale, incluso se podría usar un Arduino UNO o nano.
siempre es recomendable usar uno con chip FTDI, mas fiables.

Como flashear

para flashear, otras veces lo he hecho con una herramienta llamada esphome-flasher, ya que tiene version para Mac. Si lo vas a hacer con Windows, puedes usar la propia herramienta de Tasmota: Tasmotizer

https://github.com/tasmota/tasmotizer/releases

captura de pantalla de tasmotizer

Para que venga en español, elegid la opcion Release y dentro del desplegable el archivo que se llama tasmota-ES.bin

Para poner el módulo de tal modo que lo podamos flashear, hay que pulsar el botón al conectar la alimentación, y seguir este pinout:

pinout sonoff pcb y usb-ttl adapter

3V3 <-> 3V3
Rx <-> Tx
Tx <-> Rx
GND <-> GND

Una vez preparada la herramienta Tasmotizer y el sonoff listo en modo flash, solo hay que darle Tasmotize! y esperar a que termine.

Primera configuración

Después de un par de minutos, ya tenemos nuestro sonoff con tasmota listo. Para que tasmota empiece a funcionar hay que reiniciar el módulo desconectándolo del conversor TTL.

La misma herramienta tiene una opción para ponerle la configuración básica al módulo, como detalles del wifi, tipo de dispositivo o configuración MQTT. para ello hay que volver a conectar los cuatro cables antes de darle a save.

Ahora ya sí que lo podemos alimentar, y una vez lo localicemos en la red (con Fing, por ejemplo o mediante la interfaz del router) podemos terminar de configurarlo.
Todos mis tasmota tienen (normalmente) el parámetro PowerOnState configurado, para que al encender, el relay conmute a ON. muy útil por si algo fallara en openHAB, poder encender las luces usando el interruptor de la pared.

Y lo añadimos a openHAB

Ahora solo falta añadirlo a openHAB, y me gusta hacerlo directamente con archivos de configuración.
En el archivo /etc/openhab/things/XXX.things lo siguiente:

Thing topic LedJMDespacho "Led JM Despacho" @ "Despacho"{
Channels:
	Type string : reachable		"Online" 		[ stateTopic="tele/LedJMDespacho/LWT" ]
	Type switch : power 		"Power" 		[ stateTopic="stat/LedJMDespacho/POWER", commandTopic="cmnd/LedJMDespacho/POWER" ]
	Type number : rssi 			"Señal WiFi" 	[ stateTopic="tele/LedJMDespacho/STATE", transformationPattern="JSONPATH:$.Wifi.RSSI"]
}

y en el archivo /etc/openhab/items/XXX.items:

String LedJMDespacho_Reachable	"Online: [%s]"		<contactable>	(gLights)	{ channel="mqtt:topic:localhost:LucesDespacho:reachable" }
Switch LedJMDespacho_Power		"Luces Despacho"	<light>			(gLights)	{ channel="mqtt:topic:localhost:LucesDespacho:power", ga="Light" }
Number LedJMDespacho_RSSI		"Señal WiFi"		<wifi>			(gLights)	{ channel="mqtt:topic:localhost:LucesDespacho:rssi" }

y solo nos falta el archivo /etc/openhab/sitemaps/XXX.sitemap

Frame label= "Despacho"
{  
	Switch		item= LedJMDespacho_Power
}

y listo para funcionar!

Deja un comentario