import network
import time
from machine import Pin
import ujson
from umqtt.simple import MQTTClient
# MQTT SERVER
SERVIDOR = "broker.hivemq.com"
MQTT_TOPICO = "sensor/movimento"
led_12 = Pin(12, Pin.OUT)
led_14 = Pin(14, Pin.OUT)
botao_4 = Pin(4, Pin.IN)
print("Conectando-se ao WiFi", end="")
sta_if = network.WLAN(network.STA_IF)
sta_if.active(True)
sta_if.connect('Wokwi-GUEST', '')
while not sta_if.isconnected():
print(".", end="")
time.sleep(0.1)
print(" Conectado!")
print("Conectando-se ao servidor MQTT... ", end="")
client = MQTTClient("ESP32", SERVIDOR, 1883)
client.connect()
print("Conectado!")
while True:
print("Monitorando a residência... ", end="")
estado_botao = botao_4.value()
if estado_botao == 1:
print("Detectado movimento!")
print("Enviando ao tópico MQTT {}: {}".format(MQTT_TOPICO, "Detectei intruso!"))
client.publish(MQTT_TOPICO, "Joao, detectei movimento!")
led_12.value(1)
led_14.value(1)
else:
print("Sem atualizações!")
led_12.value (0)
led_14.value (0)
time.sleep(1)