I am using ESP8266 based Wemos D1 board to connect to Cayenne.
-
It rarely shows my device online even though widget is accurately shows my data coming from device.
-
Value widget shows the data and also shows chart when I click Details&Chart button. However, when I add Line Chart widget to see data from THE SAME channel, it tells me No Data Available.
-
When I want to add Analog Input Sensor, it does not let me choose device, even my device is online(after many tries and resets)
-
And one of my Line chart widgets seems to be magically missing from my dashboard even though I see its name on the left side. Ridiculous
I am just using simple sketch file.// This example shows how to connect to Cayenne using an ESP8266 and send/receive sample data.
// Make sure you install the ESP8266 Board Package via the Arduino IDE Board Manager and select the correct ESP8266 board before compiling.
//#define CAYENNE_DEBUG
#define CAYENNE_PRINT Serial
#include <CayenneMQTTESP8266.h>
// WiFi network info.
char ssid = “Nijat”;
char wifiPassword = “xxxxxxxxxxx”;
// Cayenne authentication info. This should be obtained from the Cayenne Dashboard.
char username = “xxxxxxxxxxxxxxx”;
char password = “xxxxxxxxxxxxxxx”;
char clientID = “xxxxxxxxxxxxxxx”;
unsigned long lastMillis = 0;
void setup() {
Serial.begin(9600);
Cayenne.begin(username, password, clientID, ssid, wifiPassword);
}
void loop() {
Cayenne.loop();
//Publish data every 10 seconds (10000 milliseconds). Change this value to publish at a different interval.
if (millis() - lastMillis > 1000) {
lastMillis = millis();
//Write data to Cayenne here. This example just sends the current uptime in milliseconds.
Cayenne.virtualWrite(V0,analogRead(0)); // 0 or V0 not matter
//Some examples of other functions you can use to send data.
//Cayenne.celsiusWrite(1, 22.0);
//Cayenne.luxWrite(2, 700);
//Cayenne.virtualWrite(3, 50, TYPE_PROXIMITY, UNIT_CENTIMETER);
}
}
//Default function for processing actuator commands from the Cayenne Dashboard.
//You can also use functions for specific channels, e.g CAYENNE_IN(1) for channel 1 commands.
CAYENNE_IN_DEFAULT()
{
CAYENNE_LOG(“CAYENNE_IN_DEFAULT(%u) - %s, %s”, request.channel, getValue.getId(), getValue.asString());
//Process message here. If there is an error set an error message using getValue.setError(), e.g getValue.setError(“Error message”);
}
And there is more and more problems on every click, but you are organizing World’s First ESP8266 IoT contest
Finally, nothing is wrong with my device because I used it to build very complex projects with Adafruit IO.
I try to upload an image right now but that does not work either. It stuck at 100%.