En esta entrada voy a explicar como mejorar el enchufe inteligente Sonoff S20 y poder ampliar su lista de funcionalidades. De serie, permite su control a través de la app EWeLink, y con asistentes domésticos como Google Assistant y Alexa. Nosotros lo vamos a mejorar para permitir su uso con Home Assistant, y de rebote, con HomeKit.
Por si no conocéis la marca, Sonoff es una empresa que fabrica diversos dispositivos electrónicos, muchos de ellos orientados a la domótica, y de muy fácil uso. Probablemente, el más conocido sea el Sonoff Basic. Éstos se caracterizan por ser de bajo coste, y permitir automatizar un enchufe y/o linea de corriente (iluminación, por ejemplo) vía wifi por medio de apps.

Antes de empezar es importante señalar que vamos a soldar. Muy poco, pero vamos a hacerlo. No hay que tenerle miedo. Importante: Bajo ningún concepto enchufar el dispositivo a la corriente de casa mientras estemos trabajando con él, soldando o flasheando.
Vamos al lío
Lo primero es quitar los tres tornillos que tiene en la parte posterior. Con una punta de estrella.
Le damos la vuelta y retiramos la tapa superior, dejando al descubierto la placa. En la parte inferior de la misma, veréis cuatro agujeros y uno de ellos tiene un marca/flecha. Indica que es el pin de corriente o VCC. Como esos agujeros no nos sirven así, tendremos que colocarles cuatro pines para poder conectar a nuestro conversor de serie-usb y poder flashear Tasmota. Lo más cómodo es sacar la placa y soldarlos por bajo, pero he visto gente que se apaña desde arriba. Eso al gusto de cada uno, pero asegúrate de no comunicar dos pines con estaño.

Una vez tengamos los pines colocados, vamos a conectarlos a nuestro conversor de serie-usb. Importante! Según qué conversor utilicemos, algunos te dejan elegir voltaje de salida mediante un jumper. Nuestra placa del sonoff funciona con 3.3 V. No le pongáis 5 V que la podéis fundir.
Los pines del Sonoff van de arriba a abajo GND-TX-RX-VCC, tal y como muestra la imagen. Para conectarlo al FTDI, el plan es GND-GND, TX-RX, RX-TX y VCC-VCC. Es decir, cruzando los TX-RX.
No me cansaré de decirlo. No le pongáis corriente al enchufe mientras estéis manipulando la placa y los pines, ya que hay riesgo de chispazo del bueno. Cuando terminemos, ya tendréis tiempo de probarlo.
Flasheando Tasmota
Una vez tengamos el cable conectado al ftdi, vamos a conectar el USB al ordenador para proceder a flashearlo. Para ello necesitaremos la aplicación de ESPEasy flash tool para poder flashear el firmware, y por otro lado, necesitaremos el firmware propiamente dicho de la web de GitHub del desarrollador.
Descomprimimos, y metemos el archivo sonoff.bin (firmware) en la carpeta junto con el exe del programa para flashear. Al abrir el programa, veremos que aparece al final nuestro archivo. Solo queda elegir el puerto COM de vuestro FTDI y a esperar a que termine.
Cuando finalice el flasheado, lo tendréis casi listo. Ahora queda quitar el cable a la placa del sonoff (los pines los podéis dejar, ya que no influye en su funcionamiento), cerrar la tapa, poner tornillos y listo para conectar a la corriente. Una vez conectado, tenéis que usar un equipo con Wifi (portátil, tablet o móvil) y conectar a la red wifi que creará el Sonoff. Al conectar, saltará una ventana para configurar la red wifi de vuestra casa (SSID y contraseña) y establecer un nombre único a vuestro enchufe. Guardamos los cambios y se reiniciará para conectar a vuestra red wifi. Solo queda buscar en vuestro router la IP que le ha asignado por DHCP y ponerla en el navegador para poder controlar el enchufe. Con esto ya lo tendremos listo para empezar a jugar.
Si tiene éxito (y si no, probablemente también) haré una entrada para poder usarlo mediante MQTT.
Por si queréis, os dejo enlaces de compra en Amazon para lo que hemos utilizado en el tutorial: