#include "WiFi.h"
#include <PubSubClient.h>
#define MQTT_SERVER "broker.hivemq.com"
#define MQTT_PORT 1883
#define MQTT_USERNAME "dsel0"
#define MQTT_PASSWORD "piglet1234"
#define MQTT_ClientID "ESP32_6723000001"
#define LED1 14
WiFiClient myclient;
PubSubClient mqttbroker(myclient);
void callback(char * topic,byte* payload,unsigned length){
Serial.println("Visited");
payload[length]='\0';
String topic_str= topic;
String payload_str=(char*)payload;
Serial.println("I get topic:"+topic_str+" with payload:"+payload_str);
return;
}
void setup(){
String payload_pub;
payload_pub"{\"msg\":\"Hello MQTT\" }"; //{"msg" :"Hello MQTT"}
pinMode(LED1, OUTPUT);
Serial.begin(115200);
Serial.println("Hello, ESP32!");
WiFi.begin("Wokwi-GUEST","",6);
while (WiFi.status() !=WL_CONNECTED) {
Serial.print(".");
delay(500);
}
Serial.println("\nConnected");
mqttbroker.setServer(MQTT_SERVER,MQTT_PORT);
mqttbroker.setCallcack(callback);
Serial.println("MQTT has been Connected");
}
void loop() {
digitalWrite(LED1, HIGH);
delay(500);
digitalWrite(LED1, LOW);
delay(500);
while(mqttbroker.connected()==false){
if (mqttbroker.connect(MQTT_ClientID,MQTT,USERNAME,MQTT_PASSWORD)) {
mqttbroker.subscribe("Command");
}else{Serial.println(("Fail");delay(500);}
}
mqttbroker.loop();
//put your main code here, to run repeatedly
delay(10);
}