|
|
@ -6,10 +6,19 @@ |
|
|
|
#include <PubSubClient.h>
|
|
|
|
|
|
|
|
// WiFi configuration
|
|
|
|
const char *ssid = "sedeam"; // WiFi name
|
|
|
|
const char *password = "Sede@m2025"; // WiFi password
|
|
|
|
const char *ssid = "Haus2.4G"; // WiFi name
|
|
|
|
const char *password = "7476Haus#CB2040$"; // WiFi password
|
|
|
|
WiFiClient espClient; |
|
|
|
|
|
|
|
// mqtt brocker:
|
|
|
|
const char *mqttBrocker = "broker.emqx.io"; |
|
|
|
const char *topic = "esp32/test"; |
|
|
|
const char *mqttUsername = "emqx"; |
|
|
|
const char *mqttPassword = "public"; |
|
|
|
const int mqttPort = 1883; |
|
|
|
PubSubClient client(espClient); |
|
|
|
|
|
|
|
|
|
|
|
void setup(){ |
|
|
|
//serial communication
|
|
|
|
Serial.begin(115200); |
|
|
@ -20,8 +29,38 @@ void setup(){ |
|
|
|
Serial.println(ssid); |
|
|
|
} |
|
|
|
Serial.println("Connection done."); |
|
|
|
//connecting to a mqtt brocker:
|
|
|
|
client.setServer(mqttBrocker, mqttPort); |
|
|
|
client.setCallback(callback); |
|
|
|
while(!client.connected()){ |
|
|
|
String clientID = "esp32-gmarx-"; |
|
|
|
clientID += String(WiFi.macAddress()); |
|
|
|
Serial.printf("The %s tries to connect to mqtt borcker...\n",clientID.c_str()); |
|
|
|
if(client.connect(clientID.c_str(), mqttUsername, mqttPassword)){ |
|
|
|
Serial.println("mqtt brocker connected"); |
|
|
|
} |
|
|
|
else { |
|
|
|
Serial.print("mqtt connection failed"); |
|
|
|
Serial.println(client.state()); |
|
|
|
delay(2000); |
|
|
|
} |
|
|
|
} |
|
|
|
//once connected publish and suscribe:
|
|
|
|
client.publish(topic, "Hi EMQX broker I'm a ESP32 :)"); |
|
|
|
client.subscribe(topic); |
|
|
|
} |
|
|
|
|
|
|
|
void loop(){ |
|
|
|
|
|
|
|
client.loop(); |
|
|
|
} |
|
|
|
|
|
|
|
void callback(char *topic, byte *payload, unsigned int length){ |
|
|
|
Serial.print("Message recived in topic: "); |
|
|
|
Serial.println(topic); |
|
|
|
Serial.print("The message is: "); |
|
|
|
for(int i=0;i<length; i++){ |
|
|
|
Serial.print((char) payload[i]); |
|
|
|
} |
|
|
|
Serial.println(); |
|
|
|
Serial.println("-+-+-+End+-+-+-+"); |
|
|
|
} |