*/ #include #include #define TEMPERATURE_PIN V0 #define HUMIDITY_PIN V1 #define RAINING_PIN V2 #define WATER LEVEL_PIN V3 #define MOISTURE_PIN V4 #define VIRTUAL_PIN V7 float temperature; float humidity; // Cayenne authentication token. This should be obtained from the Cayenne Dashboard. char token[] = "itwjt5dc6q"; #include "DHT.h" // library for dht11 sensor. #define echoPin 12 // Echo Pin #define trigPin 13// Trigger Pin #define DHTPIN 4 // digital pin in which sensor connected. #define DHTTYPE DHT11 DHT dht(DHTPIN, DHTTYPE); int maximumRange = 200; // Maximum range needed int minimumRange = 0; // Minimum range needed long duration, distance; // Duration used to calculate distance void setup() { Cayenne.begin(token); dht.begin(); pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); } void loop() { Cayenne.run(); } digitalWrite(trigPin, LOW); delayMicroseconds(2); digitalWrite(trigPin, HIGH); delayMicroseconds(10); digitalWrite(trigPin, LOW); duration = pulseIn(echoPin, HIGH); //Calculate the distance (in cm) based on the speed of sound. distance = duration/58.2; } CAYENNE_OUT(V0) { float temperature = dht.readTemperature(); Cayenne.virtualWrite(V0, temperature); //virtual pin } CAYENNE_OUT(V1) { float humidity = dht.readHumidity(); Cayenne.virtualWrite(V1, humidity); //virtual pin } CAYENNE_OUT(V2) { int b= analogRead(A0); //reads the sensor value Cayenne.virtualWrite(V2, b); //virtual pin } CAYENNE_OUT(V3) { int v= analogRead(A2); //reads the sensor value Cayenne.virtualWrite(V3, v); //virtual pin } CAYENNE_OUT(V4) { int m= analogRead(A1); //reads the sensor value Cayenne.virtualWrite(V4, m); //virtual pin } CAYENNE_OUT(V7) { Cayenne.virtualWrite(V7, distance); }