#include <Wire.h>
#include <WiFi.h>
#include "Adafruit_MQTT.h"
#include "Adafruit_MQTT_Client.h"
#include <MPU6050.h>
#define WLAN_SSID "Wokwi-GUEST"
#define WLAN_PASS ""
#define AIO_SERVER "io.adafruit.com"
#define AIO_SERVERPORT 1883
#define AIO_USERNAME "TU_USUARIO_ADAFRUIT"
#define AIO_KEY "TU_AIO_KEY"
WiFiClient client;
Adafruit_MQTT_Client mqtt(&client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);
// Feeds
Adafruit_MQTT_Publish accelX = Adafruit_MQTT_Publish(&mqtt, AIO_USERNAME "/feeds/accel-x");
Adafruit_MQTT_Publish accelY = Adafruit_MQTT_Publish(&mqtt, AIO_USERNAME "/feeds/accel-y");
Adafruit_MQTT_Publish accelZ = Adafruit_MQTT_Publish(&mqtt, AIO_USERNAME "/feeds/accel-z");
MPU6050 mpu;
void setup() {
Serial.begin(115200);
Wire.begin();
WiFi.begin(WLAN_SSID, WLAN_PASS);
while (WiFi.status() != WL_CONNECTED) delay(500);
mpu.initialize();
}
void loop() {
if (mqtt.connected()) {
int16_t ax, ay, az;
mpu.getAcceleration(&ax, &ay, &az);
accelX.publish((int32_t)ax);
accelY.publish((int32_t)ay);
accelZ.publish((int32_t)az);
Serial.println("Datos enviados a Adafruit IO");
} else {
mqtt.connect();
}
delay(2000);
}