Why is the code not going inside the if command and how can this be solved?
I also tried using "MQTT_connect()" defined in the adafruit tutorial. It is giving connection failed output.
- Code: Select all | TOGGLE FULL SIZE
#include <WiFi.h >
#include <Adafruit_MQTT_Client.h>
#include <MPU9250.h>
#define wifi "********"
#define password "********"
#define server "io.adafruit.com"
#define port 1883
#define username "*******"
#define key "********"
WiFiClient esp;
MPU9250 IMU(Wire,0x68);
Adafruit_MQTT_Client mqtt(&esp,server,port,username,key);
Adafruit_MQTT_Publish feed=Adafruit_MQTT_Publish(&mqtt,username"feeds/accelerodata");
void setup() {
Serial.begin(115200);
delay(10);
Serial.println("Adafruit MQTT Demo");
Serial.println("Connecting to");
Serial.println(wifi);
WiFi.begin(wifi,password);
while(WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.println("Connecting...");
}
Serial.println("Connected");
Serial.println("IP Address: ");
Serial.println(WiFi.localIP());
Serial.println("Connecting to MQTT");
if(mqtt.connect())
{
Serial.println("MQTT Connected");
}
}
void loop ()
{
Serial.println("Test line to check if code reaches inside loop");
delay(1000);
if(mqtt.connected())
{
int data=IMU.getAccelX_mss();
Serial.println("\nSending accelero data");
Serial.println(data);
Serial.println("....");
if(feed.publish(data))
{
Serial.println("Success");
}
else
{
Serial.println("Fail");
}
delay(800);
}
}