#include <DHTesp.h>
#include <EspMQTTClient.h>
const char* SSIDName = "Wokwi-GUEST";
const char* SSIDPass = "";
const int DHT_PIN = 15;
const char* BrokerURL = "broker.hivemq.com";
const char* BrokerUserName = "";
const char* BrokerPassword = "";
const char* MQTTClientName = "mackenzie32154021";
const int BrokerPort = 1883;
const char* TopicoPrefixo = "higa-mack-iot";
const char* Topico_01 = "Temperatura";
DHTesp dhtSensor;
EspMQTTClient clienteMQTT(SSIDName, SSIDPass, BrokerURL, BrokerUserName, BrokerPassword, MQTTClientName, BrokerPort);
void onConnectionEstablished() {}
void enviarDados() {
TempAndHumidity temp_umid = dhtSensor.getTempAndHumidity();
clienteMQTT.publish(String(TopicoPrefixo) + "/" + String(Topico_01), String(temp_umid.temperature, 2) + "°C");
}
void setup() {
Serial.begin(9600);
dhtSensor.setup(DHT_PIN, DHTesp::DHT22);
clienteMQTT.enableDebuggingMessages();
}
void loop() {
clienteMQTT.loop();
enviarDados();
if (clienteMQTT.isWifiConnected()) {
Serial.println("Conectado ao WiFi!");
} else {
Serial.println("Não conectado ao WiFi!");
}
if (clienteMQTT.isMqttConnected()) {
Serial.println("Conectado ao broker MQTT!");
} else {
Serial.println("Não conectado ao broker MQTT!");
}
Serial.print("Nome do cliente: ");
Serial.print(clienteMQTT.getMqttClientName());
Serial.print(" / Broker MQTT: ");
Serial.print(clienteMQTT.getMqttServerIp());
Serial.print(" / Porta: ");
Serial.println(clienteMQTT.getMqttServerPort());
delay(5000);
}