@shramik_salgaonkar this code is working with cayenne. Can you help me to save the same data on sd card please?
I have tried many thing but its not working.
// This example shows how to connect AM2301/DHT21 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>
#include “DHT.h”
#define DHTPIN 12 // modify to the pin we connected
#define DHTTYPE AM2301 // AM2301
DHT dht(DHTPIN, DHTTYPE);
// WiFi network info.
char ssid = “***";
char wifiPassword[] = "”;
// Cayenne authentication info. This should be obtained from the Cayenne Dashboard.
char username = “";
char password[] = "”;
char clientID = “******************************************”;
unsigned long lastMillis = 0;
void setup() {
Serial.begin(115200);
Cayenne.begin(username, password, clientID, ssid, wifiPassword);
dht.begin();
}
void loop() {
Cayenne.loop();
//Publish data every 10 seconds (10000 milliseconds). Change this value to publish at a different interval.
if (millis() - lastMillis > 10000) {
lastMillis = millis();
//Write data to Cayenne here. This example just sends the current uptime in milliseconds.
Cayenne.virtualWrite(0, lastMillis);
float humidity = dht.readHumidity();
float temperature = dht.readTemperature();
Cayenne.celsiusWrite(1, temperature);
Cayenne.virtualWrite(2, humidity, "rel_hum", "p");
}
}
//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”);
}