Olá pessoal.
Tenho um raspberry com um fim de curso que me indica se uma porta está aberta ou não.
Este script, tal como este Alarme Domestico C/ Raspberry já estiveram em funcionamento no HA, isto com uma versão do HA mais antiga. Depois ficou encostado porque já não precisava. Agora tenho novamente sitio para o instalar.
O problemas é que já não me mostra o estado no HA.
Segue o script, será que falta algum dado do mqtt?:
porta.py
import RPi.GPIO as GPIO
import time
import os
from datetime import datetime
from time import gmtime, strftime #importamos gmtime y strftime
import paho.mqtt.client as mqtt
Zonas = {}
Zonas["Porta_Oficina"] = 7
client = mqtt.Client("POficina1")
client.connect ("172.16.40.50")
for k in Zonas:
GPIO.setmode(GPIO.BCM) # Broadcom pin-numbering scheme
GPIO.setup(Zonas[k], GPIO.IN, pull_up_down=GPIO.PUD_UP) # Button pin set as input w/ pull-up
def check_motion(pin, zona):
if GPIO.input(pin): # button is released
timex = str(datetime.now())
time.sleep(0.5)
print " | %s | Porta Aberta |"% (zona)
client.publish ("oficina/sensor/porta","Porta Aberta")
else:
print " | %s | Porta Fechada |"% (zona)
client.publish("oficina/sensor/porta","Porta Fechada")
time.sleep(0.5)
try:
while(1):
for k in Zonas:
check_motion(Zonas[k], k)
time.sleep(0.5)
except KeyboardInterrupt: # If CTRL+C is pressed, exit cleanly:
GPIO.cleanup() # cleanup all GPIO
Obrigado