We are running an esp8266 and we keep getting error code -2 when it is trying to connect. We are using the sample code in the losant MQTT client example.
#include <WiFi101.h>
#include <Losant.h>
// WiFi credentials.
const char WIFI_SSID = “WIFI_SSID”;*
const char WIFI_PASS = “WIFI_PASS”;*
// Losant credentials.
const char LOSANT_DEVICE_ID = “my-device-id”;*
const char LOSANT_ACCESS_KEY = “my-app-key”;*
const char LOSANT_ACCESS_SECRET = “my-app-secret”;*
const int BUTTON_PIN = 14;
const int LED_PIN = 12;
bool ledState = false;
WiFiSSLClient wifiClient;
LosantDevice device(LOSANT_DEVICE_ID);
// Toggles and LED on or off.
void toggle() {
** Serial.println(“Toggling LED.”);**
** ledState = !ledState;**
** digitalWrite(LED_PIN, ledState ? HIGH : LOW);**
}
// Called whenever the device receives a command from the Losant platform.
void handleCommand(LosantCommand command) {
** Serial.print("Command received: ");*
** Serial.println(command->name);**
** if(strcmp(command->name, “toggle”) == 0) {**
** toggle();**
** }**
}
void connect() {
** WiFi.begin(WIFI_SSID, WIFI_PASS);**
** while (WiFi.status() != WL_CONNECTED) {**
** delay(500);**
** Serial.print(".");**
** }**
** // Connect to Losant.**
** device.connectSecure(wifiClient, LOSANT_ACCESS_KEY, LOSANT_ACCESS_SECRET);**
** while(!device.connected()) {**
** delay(500);**
** }**
}
void setup() {
** Serial.begin(115200);**
** delay(100);**
** pinMode(BUTTON_PIN, INPUT);**
** pinMode(LED_PIN, OUTPUT);**
** // Register the command handler to be called when a command is received**
** // from the Losant platform.**
** device.onCommand(&handleCommand);**
** connect();**
}
void buttonPressed() {
** Serial.println(“Button Pressed!”);**
** // Losant uses a JSON protocol. Construct the simple state object.**
** // { “button” : true }**
** StaticJsonBuffer<200> jsonBuffer;**
** JsonObject& root = jsonBuffer.createObject();**
** root[“button”] = true;**
** // Send the state to Losant.**
** device.sendState(root);**
}
int buttonState = 0;
void loop() {
** bool toReconnect = false;**
** if(WiFi.status() != WL_CONNECTED) {**
** Serial.println(“Disconnected from WiFi”);**
** toReconnect = true;**
** }**
** if(!device.connected()) {**
** Serial.println(“Disconnected from Losant”);**
** toReconnect = true;**
** }**
** if(toReconnect) {**
** connect();**
** }**
** device.loop();**
** int currentRead = digitalRead(BUTTON_PIN);**
** if(currentRead != buttonState) {**
** buttonState = currentRead;**
** if(buttonState) {**
** buttonPressed();**
** }**
** }**
** delay(100);**
}