#include <WiFi.h> // WiFi Library
#include <PubSubClient.h> // MQTT Library
#define WiFiSSID "Wokwi-GUEST" // WiFi SSID
#define WiFiPass "" // WiFi Password
#define BrokerAddr "broker.hivemq.com" // MQTT Broker IP Addr
#define BrokerPort 1883 // MQTT Broker Port Addr
#define DevID "ESP32C3-0272" // just a name to identify this client
#define TopcSub "casa-teste/topic-teste/sub" // Sub Topic
#define TopcPub "casa-teste/topic-teste/pub" // Pub Topic
#define pubTime 300 // Publish time in seconds
String ipAddr;
WiFiClient tcpSocket;
PubSubClient broker(tcpSocket);
void setup() { /*************** Setup Function ***************/
Serial.begin(9600);
WiFi.begin(WiFiSSID, WiFiPass);
broker.setServer(BrokerAddr, BrokerPort); // Set broker address and port
broker.setCallback(brokerCallback); // callback attribution
netConnect();
String bootLog = "DevID: " + String(DevID) + " IP Addr: " + ipAddr;
Serial.println(bootLog);
broker.publish(TopcPub, bootLog.c_str());
}
void loop() { /*************** Infinite Loop Forever ***************/
netConnect();
brokerHandle();
broker.loop();
delay(50);
}