lunes, 21 de noviembre de 2016

Integrar ESPEasy con Domoticz

Vamos a ver como dar de alta nuestro sensor / actuador basado en ESPEasy en Domoticz.


En domoticz tendremos que ir a Hardware y crear un Hardware virtual. Entramos en nuestro panel del domoticz, nos vamos al menú Configuración y pulsamos en Hardware.



Seleccionamos tipo Dummy, le damos un nombre a nuestro nuevo Hardware, marcamos la opción Activar y pulsamos en Añadir.




Para este ejemplo vamos a dar de alta un sensor de temperatura y humedad. Yo he utilizado un sensor DHT22. Vamos a dar de alta, dentro de nuestro hardware Dummy, un nuevo sensor.

En nuestro nuevo hardware virtual pulsamos en Crear Sensores Virtuales



Le damos un nombre y seleccionamos el tipo Temp+Hum





Nuestro dispositivo virtual ha sido creado. Vamos al menú dispositivos. 



Y veremos el listado de nuestros dispositivos, donde veremos el que acabamos de crear. Lo importante aquí es el ID que domoticz ha asignado a nuestro nuevo dispositivo. Ese ID es el que utilizaremos para que el ESPEasy le envié la información al domoticz. 





En este caso el ID es el 61. En datos vemos la última información que ha recibido. En mi caso muestra información porque ya lo tengo configurado, a vosotros os mostrará 0,0 en este punto ya que aun no estáis enviando la información. Y  última vista es la fecha / hora de la última actualización que ha recibido el dispositivo, en el caso de haberlo creado es la fecha de creación.

En domoticz ya hemos terminado.... Ahora vamos a configurar nuestro ESPEasy, damos de alta el DHT22 y configuramos el envío de datos a domoticz.

Abrimos la página web de configuración de nuestro ESPEasy. Nos vamos a la pestaña Config, y ahí verificamos que tengamos puesta correctamente la IP de nuestro domoticz. En el caso de que usemos usuario y contraseña lo rellenamos también. Os recomiendo usar una IP Fija para el servidor donde tengáis el domoticz y poner la IP en esta configuración, el útilizar nombre de host implicará mas trabajo y problemas en caso de fallo en la resolución de DNS internas.



Ahora vamos a la pestaña Devices y pulsamos en Edit en el dispositivo 1. En Device buscamos y seleccionamos Temperature & Humidity - DHT. Le damos un nombre a nuestro dispositivo. En Delay ponemos el tiempo tras el cual nuestro ESPEasy enviará la información (en mi caso 55seg). IDX es el ID que ha asignado nuestro domoticz a nuestro dispositivo virtual (61 en mi caso). Seleccionamos DHT22 y el GPIO donde hemos conectado nuestro DHT....

Nos aseguramos de tener marcada la casilla Send Data y pulsamos submit... Nuestro ESP enviará la información del sensor en el intervalo de tiempo que hayamos fijado.






Mas adelante veremos como controlar desde domoticz el relé de nuestro ESPEasy o cualquier actuador, led.... conectado a él.





jueves, 6 de octubre de 2016

SONOFF ESP8266 - EspEasy firmware

Itead nos ofrece un dispositivo Wifi con un relé para poder controlar a distancia cualquier dispositivo. El firmware que trae originalmente es bastante cutre y limitado.... Así que vamos a ver como poder cambiar el firmware. Vamos a ver como poder cargar el firmware ESPEASY, para mi el mejor firmware sin duda para el ESP8266....

Mas adelante veremos como poder compilar el firmare ESPEasy nosotros mismos, pero para esta primera toma de contacto con la programación de los ESP8266 vamos a utilizar un firmare ya compilado...

Necesitamos:



Abrimos nuestro SONOFF y nos fijamos en el PCB siguiente donde veremos donde tenermos que soldar los PADs para acceder a la programación del mismo. Como podemos ver tenemos 5 "agujeros" donde soldaremos nuestros PADS


1. GPIO 14 2. GND 3. TX 4. RX 5. VCC 3.3v


Soldamos los PADS y conectamos GND TX RX VCC a nuestro USB <-> TTL. Nunca, repito NUNCA, conectaremos a 220v nuestro sonoff para realizar tareas de programación. El chip se alimentará de nuestro USB


Una vez que tenemos preparado el sonoff para programarlo vamos con la parte del software.... 

Nos bajamos el firmware ESPEASY, vamos a www.esp8266.nu/index.php/Main_Page#Stable y veremos, en este caso, que tenemos dos versiones estables para bajar, la 108 y la 120. Vamos a descargar la 120, que es la última estable liberada.



Una vez descomprimido el ZIP veremos los siguientes ficheros:



Si os fijais tenemos 3 binarios (firmware ya compilado). Esto es debido a que la memoria disponible en los ESP8266 varia según dispositivo, en nuestro caso para el SONOFF tenemos 1024K.




Ejecutamos el script de flasheo.. Nos preguntará por orden, el puerto con en el que está nuestro conversor USB <-> TTL, el tamaño de la flash de nuestro dispositivo y la versión a grabar. En este caso 5, 1024, 120.... Antes de pulsar enter tras introducir el 120, tenemos que poner nuestro dispositivo en modo flash... Lo desconetamos del PC y dejando el pulsador presionado lo volvemos a enchufar, ahora SI pulsamos intro y empezará el proceso de flasheo





Con esto ya tendremos nuestro SONOFF con el firmware ESPEasy cargado... Tras la grabación del firmare esperamos un par de minutos, lo desenchufamos y enchufamos de nuevo, y ahora podemos buscar la Wifi ESP_0 ( clave configespo espconfig ).....

La ip que tendrá nuestro sonoff una vez cargado el firmware será la 192.168.4.1

Entraremos en http://192.168.4.1 y ahí le diremos cual es la wifi a la que ha de conectarse y la password del mismo.

Mas adelante veremos como configurar el ESPEasy.... 


Saludos!



miércoles, 5 de octubre de 2016

ESP8266 - Configuración IDE Arduino para utilizar los dispositivos ESP8266

A continuación vamos a ver como configurar el IDE de Arduino para utilizarlo para programar nuestros dispositivos ESP8266... Si no sabes que es un ESP8266 te estas perdiendo un gran mundo de posibilidades en el IOT....
Nos bajamos e instalamos el IDE de Arduino -> https://www.arduino.cc/en/Main/Software

Nos vamos a Menú -> Archivo -> Preferencias


En gestor de placas añadimos la siguiente URL que contiene la definición y librerias para el uso de los dispositivos ESP8266 (digo añadimos porque podemos tener mas de una definición de placas, en ese caso irán separadas por comas).

http://arduino.esp8266.com/package_esp8266com_index.json



Aceptamos y nos vamos a Herramientas -> Placa -> Gestor de tarjetas:

 


En la nueva ventana que se nos abre nos muestra todas las placas que podemos añadir a nuestro IDE de Arduino. Escribimos ESP8266 para filtrar por ese tipo de placa. Pinchamos sobre el y veremos un desplegable donde nos indica la versión que va a instalar, Seleccionamos la versión que queremos y pulsamos instalar.....





Con esto ya tenemos nuestro IDE Arduino preparado para programar dispositivos ESP8266