from machine import Pin
from time import sleep
import json
import network
import time
from machine import Pin
import dht
from umqtt.simple import MQTTClient
def sub_cb(topic, msg):
global MSG_ONOFF
MSG_ONOFF = msg
print(MSG_ONOFF)
lHum = list()
lTmp = list()
print("Conectando al WiFi", end="")
sta_if = network.WLAN(network.STA_IF)
sta_if.active(True)
sta_if.connect('Wokwi-GUEST', '')
sensor = dht.DHT22(Pin(15))
#esperando se conecte a la wifi
while not sta_if.isconnected():
print(".", end="")
time.sleep(0.1)
print("Conectado!")
print("Conectando al MQTT server... ", end="")
client = MQTTClient(MQTT_CLIENT_ID, MQTT_BROKER,port=8741, user=MQTT_USER, password=MQTT_PASSWORD)
client.set_callback(sub_cb)
client.connect()
client.subscribe(MQTT_TOPIC_PUB)
print("Conectado!")
print("Iniciando la lectura sensor!")
while True:
sensor.measure() #captura inforación del sensor DTH22
lTmp.append(sensor.temperature())
lHum.append(sensor.humidity())
jdata = {"tipo":"grafico_1","valor":lTmp}
data = json.dumps(jdata)
print(data)
client.publish(MQTT_TOPIC_SUB, data)
jdata = {"tipo":"grafico_2","valor": lHum}
data = json.dumps(jdata)
print(data)
client.publish(MQTT_TOPIC_SUB, data)
#chequea boton on off en cada bucle
client.check_msg()
time.sleep(1)