Para quem usa o Home Assistant através do Hassio, existe um addon chamado EspHomeLib, este addon permite-te de uma forma muito simples criares vários switch´s, sensores, etc… no teu home assistant.
Neste tutorial vou te demonstrar apenas dois exemplos…
Vou criar um switch, e um sensor de temperatura/humidade com um DHT22 em um Nodemcu.
Ok o que vais precisar:
1x - Placa Nodemcu
1x - Sensor temperatura/humidade DHT22
Caso já tenhas reunido o que te disse que precisavas vamos então instalar o addon.
Onde diz Add new repository by URL coloca isto: https://github.com/OttoWinter/esphomeyaml
E clicas e ADD
De seguida vai te aparecer isto:
Clicas , depois vai aparecer isto:
Clicas em Install e vai aparecer isto:
Clicas em Start e vai aparecer o seguinte quadro:
Se Não Aparecer nada tens que aceder pelo ip_do_teu_rpi:6052
exemplo: 192.168.1…69:6052
Clicas no + e depois vais ter alguns passos para prencher…
No passo Nº1 campo colocas o nome que queres dar ao teu projecto.
No passo Nº2 onde diz MicroController Type colocas esp8266 e onde diz Board Type colocas nodemcuv2.
No passo Nº3 onde diz Wifi SSid colocas o nome da rua rede wifi, e onde diz Wifi Passord colocas a password da rua rede, e onde diz Ota Password escolhes uma password à tua escolha.
No passo Nº4 onde diz Mqtt Broker colocas o ip onde tens o teu broker mqtt a correr , se for um RPI colocas o ip do teu RPI, no campo onde diz Mqtt username e Mqtt password metes os dados correspondentes a isso.
No passo Nº5 Clicas em SUBMIT
Vai te aparecer isto :
Mas ainda não faças nada aqui… vai primeiro a esta pasta:
que está em /config
Ao abrires a pasta /config/esphomelib
Vai te aparecer:
1 ficheiro com o nome do projecto que tu deste.yaml
Abres esse ficheiro e vai te aparecer isto:
esphomeyaml:
name: teste
platform: ESP8266
board: nodemcuv2
wifi:
ssid: 'nome da rua rede wifi'
password: 'tua password wifi
mqtt:
broker: '192.168.1.85'
username: 'teu username'
password: 'tua password'
# Enable logging
logger:
ota:
password: 'tua pass ota'
ok vais adicionar esta linha no campo wifi
domain: .internal.local
manual_ip:
static_ip: ip_do_teu_nodemcu/wemos
gateway: ip_do_teu_router
subnet: 255.255.255.0
Ou seja vai ficar assim:
wifi:
ssid: 'Nome da rua rede Wifi'
password: 'tua password wifi'
domain: .internal.local
manual_ip:
static_ip: ip_do_teu_nodemcu/wemos
gateway: ip_do_teu_router
subnet: 255.255.255.0
Ok agora vamos adicionar primeiro um switch
Para isso é muito simples , em baixo de:
ota:
password: 'tua pass ota'
Vais colocar:
switch:
- platform: gpio
pin: 12
name: "teste switch"
Ou seja o ficheiro completo vai ser:
esphomeyaml:
name: teste
platform: ESP8266
board: nodemcuv2
wifi:
ssid: 'nome da rua rede wifi'
password: 'tua password wifi
domain: .internal.local
manual_ip:
static_ip: ip_do_teu_nodemcu/wemos
gateway: ip_do_teu_router
subnet: 255.255.255.0
mqtt:
broker: '192.168.1.85'
username: 'teu username'
password: 'tua password'
# Enable logging
logger:
ota:
password: 'tua pass ota'
switch:
- platform: gpio
pin: 12
name: "teste switch"
Ok podes salvar o ficheiro…
Agora vais novamente aqui:~
Agora clica em VALIDATE e verifica se não te dá erro nenhum, de tiver tudo ok clica em COMPILE
Vai te aparecer algo parecido com isto:
Aguarda uns minutos…porque isso vai começar a criar código…
Se no fim tudo der certo vai aparecer isto:
Agora vais gravar o .bin para isso clicas aí do lado direito onde diz DOWNLOAD BINARY.
De seguida vais enviar o .bin para dentro do teu nodemcu, para o flashares vais precisar de fazer download deste programa.
Após teres descompactado o programa, vais copiar o teu.bin para dentro da pasta do programa chamada: DIST
Agora abres essa pasta e vais ver isto:
Ligas o teu Nodemcu com um cabo microusb ao teu PC e
Clicas onde diz FlashESP8266.exe vai te abrir o programa escolhes a porta e o .bin como ves na imagem.
Depois clicas em Flash e vais ver isto:
O teu nodemcu deve estar a piscar com um led azul e se o flash for feito com sucesso vai te aparecer um POPUP a dizer FLASH COMPLETE.
Ok agora vais ao teu configuration.yaml
e onde tens o teu mqtt:
colocas a linha discovery: true
Ou seja fica algo parecido com isto:
mqtt:
broker: 127.0.0.1
port: 1883
username: !secret username_mqtt
password: !secret password_mqtt
keepalive: 60
discovery: true
No teu ficheiro groups.yaml adicionas isto:
esphomelib:
view: yes
name: esphomelib
entities:
- group.teste_esphomelib
teste_esphomelib:
entities:
- switch.teste_switch
E reinicias o teu home assistant.
Quando reiniciares o teu home assistant , vais depois ver isto:
Quer isto dizer que o teu switch esta a bombar…
Agora vais adicionar o sensor de temperatura…mas desta vez vais fazer via OTA (Over the Air)
primeiro passo… vais novamente ao teu ficheiro nome do teu projecto.yaml que está em:
/config/homeesplib
vais abrir o ficheiro editar e colocas isto:
sensor:
- platform: dht
pin: D2
temperature:
name: “teste temperatura”
humidity:
name: “teste humidade”
update_interval: 15s
ou seja o teu ficheiro completo vai ser:
esphomeyaml:
name: teste
platform: ESP8266
board: nodemcuv2
wifi:
ssid: 'nome da rua rede wifi'
password: 'tua password wifi
domain: .internal.local
manual_ip:
static_ip: ip_do_teu_nodemcu/wemos
gateway: ip_do_teu_router
subnet: 255.255.255.0
mqtt:
broker: '192.168.1.85'
username: 'teu username'
password: 'tua password'
# Enable logging
logger:
ota:
password: 'tua pass ota'
switch:
- platform: gpio
pin: 12
name: "teste switch"
sensor:
- platform: dht
pin: D2
temperature:
name: "teste temperatura"
humidity:
name: "teste humidade"
update_interval: 15s
E salvas o ficheiro.
Agora basta teres o teu nodemcu alimentado não precisa de estar ligado ao computador.
Após fazeres isso vais aqui:
E clicas em RESTART
Após clicares em Restart, clicas novamente em OPEN WEB UI caso nao abra tentas com
ip_do_teu_pi:6052
exemplo: 192.168.1.69:6052
E clicas ai em cima do lado superior direito e escolhe essa opão que diz: OTA (Over-the-air)
Ao clicares o teu código vai ser enviado via OTA , vai demorar algum tempo se tudo correr bem vais ver no fim:
Agora vais ligar o teu dht22 ao teu nodemcu…
As ligações são:
Dht22 NODEMCU
DAT--------> D2
VCC ------> VU
GND -----> GND
De seguinda clica no botao reset do teu nodemcu e reinicia o teu home assisstant, de seguida vais ver isto:
(não ligues aos nomes dos sensores)
E pronto, acabaste de configurar de forma muito facil um switch e um sensor…
Agora a imaginação é o limite, podes ter vários sensores ligados a um nodemcu, ou a uma outra placas, tens AQUImuita informação em inglês onde podes adicionar mais coisas… este projecto achei genial e decidi partilhar convosco.
Alguma dúvida não hesitem em perguntar, e partilhem também aqui os vossos projectos com o esphomelib.