from umqtt.simple import MQTTClient
import network
import machine
import dht
import time
# Гостьова мережа
WIFI_SSID = "Wokwi-GUEST"
WIFI_PASSWORD = ""
# Дані MQTT пристрою ThingSpeak
MQTT_SERVER = "mqtt3.thingspeak.com"
MQTT_PORT = 1883
MQTT_USER =
MQTT_PASSWORD =
MQTT_CLIENT_ID =
# Містить номер каналу ThingSpeak
MQTT_TOPIC = "channels/2494474/publish"
# Під'єднання до WiFi
station = network.WLAN(network.STA_IF)
station.active(True)
station.connect(WIFI_SSID, WIFI_PASSWORD)
while not station.isconnected():
print(".", end="")
time.sleep(0.1)
print("Connected to WiFi")
# Під'єднання до MQTT пристрою ThingSpeak
client = MQTTClient(MQTT_CLIENT_ID, MQTT_SERVER, port=MQTT_PORT, user=MQTT_USER, password=MQTT_PASSWORD)
client.connect()
print("Connected to MQTT")
# Активація DHT сенсору (дані приймає 5-й пін ESP32)
dht_sensor = dht.DHT22(machine.Pin(5))
while True:
# Зчитування температури і вологи
dht_sensor.measure()
temperature = dht_sensor.temperature()
humidity = dht_sensor.humidity()
print("Temperature: {}°C, Humidity: {}%".format(temperature, humidity))
# Передача даних на сервер ThingSpeak через MQTT-клієнт
message = "field1={}&field2={}".format(temperature, humidity)
client.publish(MQTT_TOPIC, message)
time.sleep(5)