#include <WiFi.h>
#include <PubSubClient.h>
#include <ArduinoJson.h>
// WiFi credentials
const char* ssid = "Wokwi-GUEST"; // Nombre SSID WiFi (ej Alumnos_DIE)
const char* password = ""; // Contraseña del Wifi
// MQTT broker
// Si usab PubSubClient, se debe usar formato char
const char* mqttServer = "io.adafruit.com";
const int mqttPort = 1883;
const char* mqttUser = "usuario"; // usuario para su cuenta AdaFruit
const char* mqttPassword = "contraseña"; //contraseña para su cuenta Adafruit
const char* mqttTopic = "usuario/feeds/topico"; // Tema MQTT para publicar los datos GPS
// MQTT client setup
WiFiClient espClient;
PubSubClient client(espClient);
void setup() {
Serial.begin(115200);
WiFi.begin(ssid, password, 6);
Serial.println("...................................");
Serial.print("Connecting to WiFi.");
while (WiFi.status() != WL_CONNECTED)
{ delay(500);
Serial.print(".") ;
}
Serial.println("Connected to the WiFi network");
client.setServer(mqttServer, mqttPort);
while (!client.connected())
{ Serial.println("Connecting to MQTT...");
if (client.connect("ESP32Client", mqttUser, mqttPassword))
Serial.println("connected");
else
{ Serial.print("failed with state ");
Serial.print(client.state());
delay(2000);
}
}
}
void loop()
{ client.loop();
char str[16];
sprintf(str, "%u", random(100));
client.publish(mqttTopic, str); // para usar PubSub se deben enviar formato char
Serial.println(str);
delay(500);
}