from machine import Pin, ADC
from umqtt.simple import MQTTClient
from network import WLAN, STA_IF
from time import sleep_ms
from json import dumps
bot = Pin(5, Pin.IN, Pin.PULL_DOWN)
pot1 = ADC(Pin(32))
pot2 = ADC(Pin(33))
BROKER = 'broker.emqx.io'
PORT = 1883
CLIENT_ID = 'esp32_'
TOPIC = b'brenno/braco/controle'
TOPIC2 = b'rafael_do_xebiu/mensagem/devolta'
rede = WLAN(STA_IF)
rede.active(True)
rede.connect('Wokwi-GUEST', '')
while not rede.isconnected():
sleep_ms(500)
print('wifi ok')
client = MQTTClient(CLIENT_ID, BROKER, port=PORT)
client.connect()
print('mqtt ok')
def quando_chegar_os_dados_do_brenno(msg, topic):
comando = msg.decode()
if len(mnsg) == 1:
print("já ta podendo afofar o botão")
if len(mnsgm) != 1:
return
pot1.atten(ADC.ATTN_11DB)
pot2.atten(ADC.ATTN_11DB)
if bot == 1:
v1 = pot1.read_u16()
v2 = pot2.read_u16()
payload = {
"pot1": v1,
"pot2": v2
}
print(payload)
client.publish(TOPIC, dumps(payload).encode())
while client.set_callback(quando_chegar_os_dados_do_brenno):
v1 = pot1.read_u16()
v2 = pot2.read_u16()
payload = {
"pot1": v1,
"pot2": v2
}
if bot == 1:
print(payload)
client.publish(TOPIC, dumps(payload).encode())
client = MQTTClient(CLIENT_ID, BROKER)
client.set_callback(quando_chegar_os_dados_do_brenno)
client.connect()
client.subscribe(TOPIC2)
sleep_ms(300)