Hack Regleta SmartLife

HACK REGLETA SMART LIFE

Si hay algo a lo que muchos usuarios de Home Assistant, no nos gusta….por eso usamos Home Assistant, valga la reflexión…es el hecho de tener que pasar por las nubes de los fabricantes para poder usar sus dispositivos. A este paso, el usuario que tenga muchos productos de varios fabricantes, va a necesitar un buen smartphone, para poder llenarlo de infinidad de apps….;-) Para los que amamos la privacidad de nuestra casa y la seguridad, os detallo el proceso para hackear en esta ocasión una regleta como la de la foto. Esta regleta funciona con la app de SmartLife y se integra con Alexa y Google Home. En esta ocasión el mérito no es mio, ya que podemos encontrar algún «tuto» al respecto, yo sólo me he limitado a ponerlo en «Cervantino» y añadirle alguna cosilla más. Y como siempre, intento hacer un «tuto» lo más llano y ameno posible porque sé que hay gente de todos los niveles y esto tiene que ser para todos.

https://github.com/arendst/Sonoff-Tasmota/wiki/4CH-Wifi-Socket-with-USB-Charger-SA-P402A-(TYWE2S)

Antes de que empecéis a desarmar la regleta, el compañero Juanma después de leer el tuto y pelearse con la apertura de esta, encontró un tuto para poder también Hackear la regleta vía OTA. Gracias Juanma por el aporte. Os dejo el link que me pasó:

https://github.com/ct-Open-Source/tuya-convert

Si decidís optar por soldar, seguimos… Para empezar ruego encarecidamente que NO SE TRABAJE CON LA REGLETA ENCHUFADA A 220V, no quiero vivir con remordimientos….:-(

Quitados los tapones vemos los tornillos al fondo.
Los susodichos tapones. Se ve uno que no lleva la «gomita» para haceros una idea.

Lo primero… esta claro.. abrir la regleta… Para esto en la base hay 6 gomitas, que esconden unos tapones y en el fondo 6 tornillos. Consejo… para quitar los tapones, sin despegar las gomitas, no seamos chapuzas… recomiendo el uso de un Cutter pequeño. Con la punta en el perímetro del tapón hacemos un poco de palanca y deben de salir gomilla y tapón juntos… lo sé… algunos se resisten….

Una vez que hemos abierto la regleta, tenemos que buscar la placa Wifi (creo que es una ESP8266). Esta es fácilmente reconocible por que está perpendicular a la placa principal.

Imagen de la placa. Una vez localizada procederemos a soldar los pines para conectar nuestro FTDI, Arduino o dispositivo que usemos para flashear.

Con la placa localizada, le soldamos los pines. Estos los he soldado verticales ya que observé que en esta posición caben perfectamente, pudiendo cerrar la regleta, así si algún día hay que «Lobotomizar» nuevamente la regleta…ya la tenemos lista. Cuando se suelden los pines, llevar cuidado y asegurarse de que no se mueven… lo digo por que tal y como está en la foto, de izquierda a derecha tenemos 3,3Vcc, GND, RX y TX. Si no se sueldan firmemente y en funcionamiento se tocan las patillas de alimentación y gnd… el resto lo podéis imaginar…

Si vuestro dispositivo de alimentación no dispone de pin para poder inyectar los 3,3Vcc, se puede enchufar la regleta y esta alimentaría la placa, pero cuidado, la pieza dorada que se ve en la foto a la derecha en un terminal de 220V, y si el relé se activa y sin querer tocáis… os puede dar la risa.
El cable
Este es el Gpio0 que hay que tocar para entrar en modo Flash, tu no… la placa..;-)

A partir de aquí el proceso es un «tasmoteo» como otro cualquiera… para entrar en el modo de «Flasheo», derivamos el Gpio0 a GND. Ya que alguno me lo ha preguntado esto… bueno es muy fácil, yo en mi caso uso un cable «como los de la foto» una punta al GND de mi FTDI y la otra punta toco el GPIO unos segundos y cuando veo que empieza el flasheo lo retiro.

Mi querido FTDI

Para flashear tenemos muchos programas, yo personalmente el que menos problemas me ha dado y siempre me ha funcionado es el Esptool (para ser exactos Esptool.exe, lo digo porque está la versión para Python). Recomiendo primeramente sacar una copia de seguridad del «firm» del dispositivo…no lo puedo poner porque ….ummm… niño malo…no lo hice…directo a reventar el cacharro, si alguien lo saca que me lo pase pse…. Así que pasamos a borrarlo todo, que no se quede nada dentro del chip…soy un nervios…lo sé.

esptool.exe -vv -cd nodemcu -cb 115200 -cp COM5 -ca 0x00000 -ce

Con esto dejamos «muñeco» total a la regleta. Debería saliros algo así….

Y ahora le metemos el firm…Diooosss… cuando hago esto me siento como el Dr.Frankenstein…

Para el flasheo recomiendo encarecidamente que se use una versión de Tasmota 6.5.0 que lleva el tema de las plantillas incorporadas, y luego diré por qué.

esptool.exe -vv -cd nodemcu -cb 115200 -cp COM5 -ca 0x00000 -cf sonoff.bin

Finalizado el proceso, reiniciamos la placa (quitar el cable de 3,3Vcc del FDTI y volverlo a pinchar). Si todo está bien, cogemos el teléfono móvil y en la wifi nos tiene que aparecer el Sonoff queriendo ser configurado para funcionar. Frankenstein vive….ja ja.

Una vez configurado los parámetros Wifi de la regleta en Tasmota, pasamos a la parte de configuración de los GPIO. Como siempre…una imagen vale más que mil palabras….

Bien…con esto estaría nuestra regleta lista para ser usada con Home Assistant (para integraciones en HA sería otro tutorial, o preguntar en los grupos de Télegram integración de dispositivos por MQTT).

Antes de que nadie me lo diga…»oye, es que le doy al botoncito de la regleta y sólo me enciende un enchufe…»si…lo sé… a mi también me pasó…por eso te voy a dar la solución a este terrible problema…

Le damos a la opción «Configure Template»
Y paremetrizamos los GPIO de esta forma.

Vamos a crear una plantilla….mande? si una plantilla…así…

Ahora nos tendremos que ir a la consola de Tasmota y hay que meter una regla. Los pasos son dos, la regla y la ejecución de la regla…

rule on button1#state do backlog POWER1 toggle; POWER2 toggle; POWER3 toggle; POWER4 toggle; POWER5 toggle endon

rule 1

Con esto podemos comprobar que al darle al botón de la regleta, ahora si que se encienden y se apagan todos los enchufes, además…algo que me gusta es que se encienden de manera secuencial, cosa que antes con el firm original, los enchufes de la regleta se encendían de golpe, y eso, si tenemos cosas con mucho consumo enchufadas…»no mola». Ahora de forma secuencial, la carga es progresiva….

Yo tengo Google Home y las regletas integradas…también he observado que ahora cuando le digo a la «Chata (u sea…google home), enciende esto o apaga lo otro, el proceso es más rápido que con el firm original, será por que no pasamos por el servidor externo de SmartLife…

Y recordad…sacad un Backup de la configuración de la regleta, si no luego vienen los «Hay madre mía…!!!»

Un saludo a todos.

———————– ACTUALIZACIÓN 08/08/2019 By DawiEs ———————–

METER ESPHOME EN LA REGLETA SMARTLIFE

El proceso de meter esphome en nuestra regleta es igual al que explique en este tutorial pero cambiando los datos del yaml por los que os paso a continuación y cambiando nuestro dispositivo a esp01_1m:

esphome:
  name: regleta
  platform: ESP8266
  board: esp01_1m
wifi:
  ssid: "XXXXXXXX"
  password: "XXXXXXX"
  manual_ip:
    static_ip: XXX.XXX.X.X
    gateway: 192.168.0.1
    subnet: 255.255.255.0
#Enable logging
logger:
#Enable Home Assistant API
api:
  password: "XXXXXX"
ota:
  password: "XXXXXXX"
binary_sensor:
  - platform: gpio
    pin:
      number: 1
      mode: INPUT_PULLUP
      inverted: true
    name: "Regleta button"
    on_multi_click:
    - timing: 
        - ON for at most 0.4s
        - OFF for at most 0.4s
        - ON for at most 0.4s
        - OFF for at most 0.4s
        - ON for at most 0.4s
        - OFF for at most 0.4s
        - ON for at most 0.4s
        - OFF for at least 0.2s
      then:
        - logger.log: "Quadruple Click - socket 3"
        - switch.toggle: relay4
    - timing: 
        - ON for at most 0.4s
        - OFF for at most 0.4s
        - ON for at most 0.4s
        - OFF for at most 0.4s
        - ON for at most 0.4s
        - OFF for at least 0.2s
      then:
        - logger.log: "Tripple Click - socket 3"
        - switch.toggle: relay3
    - timing: 
        - ON for at most 0.4s
        - OFF for at most 0.4s
        - ON for at most 0.4s
        - OFF for at least 0.2s
      then:
        - logger.log: "Double Click - socket 2"
        - switch.toggle: relay2
    - timing: 
        - ON for at most 0.5s
        - OFF for at least 0.4s
      then:
        - logger.log: "Single Click - socket 1"
        - switch.toggle: relay1 
      timing: 
        - ON for 0.6s to 3s
        - OFF for at least 0.3s
      then:
        - logger.log: "Single Long Click - USB"
        - switch.toggle: relay5
  - platform: status
    name: "Regleta Status" 
output:
  - platform: esp8266_pwm
    id: blue_led
    pin: GPIO3
    inverted: True 
switch:
  - platform: gpio
    name: "Regleta socket 1"
    pin: GPIO12
    id: relay1
  - platform: gpio
    name: "Regleta socket 2"
    pin: GPIO14
    id: relay2
  - platform: gpio
    name: "Regleta socket 3"
    pin: GPIO4
    id: relay3
  - platform: gpio
    name: "Regleta socket 4"
    pin: GPIO13
    id: relay4
  - platform: gpio
    name: "Regleta USB"
    pin: GPIO5
    id: relay5 

Luego en HA al agregarlo como integración nos meterá todos los switchs que anteriormente hemos generado. El botón físico de nuestra regleta funcionara con clics, es decir 1 clic activara un enchufe, Doble clic otro enchufe y así sucesivamente.

Esta es otra opción como la de Tasmota, es a gusto del consumidor funcionar con uno u otro! Espero que os haya gustado! 

——————————————————————————————————————–

 

Roberto Herrero…»Nasked»

Si alguien tiene alguna duda puede contactar por los grupos de Telegram: DomologyES 2.0 y Domoticaencasa.es donde estoy activo, o por correo a nasked@gmail.com

Deja un comentario

Síguenos

Siguenos en facebook