94 lines
2.6 KiB
C++
94 lines
2.6 KiB
C++
/*************************************************************
|
|
Download latest Blynk library here:
|
|
https://github.com/blynkkk/blynk-library/releases/latest
|
|
|
|
Blynk is a platform with iOS and Android apps to control
|
|
Arduino, Raspberry Pi and the likes over the Internet.
|
|
You can easily build graphic interfaces for all your
|
|
projects by simply dragging and dropping widgets.
|
|
|
|
Downloads, docs, tutorials: http://www.blynk.cc
|
|
Sketch generator: http://examples.blynk.cc
|
|
Blynk community: http://community.blynk.cc
|
|
Follow us: http://www.fb.com/blynkapp
|
|
http://twitter.com/blynk_app
|
|
|
|
Blynk library is licensed under MIT license
|
|
This example code is in public domain.
|
|
|
|
*************************************************************
|
|
|
|
This example shows how value can be pushed from Arduino to
|
|
the Blynk App.
|
|
|
|
WARNING :
|
|
For this example you'll need Adafruit DHT sensor libraries:
|
|
https://github.com/adafruit/Adafruit_Sensor
|
|
https://github.com/adafruit/DHT-sensor-library
|
|
|
|
App project setup:
|
|
Value Display widget attached to V5
|
|
Value Display widget attached to V6
|
|
*************************************************************/
|
|
|
|
/* Comment this out to disable prints and save space */
|
|
#define BLYNK_PRINT Serial
|
|
|
|
|
|
#include <SPI.h>
|
|
#include <Ethernet.h>
|
|
#include <BlynkSimpleEthernet.h>
|
|
#include <DHT.h>
|
|
|
|
// You should get Auth Token in the Blynk App.
|
|
// Go to the Project Settings (nut icon).
|
|
char auth[] = "YourAuthToken";
|
|
|
|
#define DHTPIN 2 // What digital pin we're connected to
|
|
|
|
// Uncomment whatever type you're using!
|
|
#define DHTTYPE DHT11 // DHT 11
|
|
//#define DHTTYPE DHT22 // DHT 22, AM2302, AM2321
|
|
//#define DHTTYPE DHT21 // DHT 21, AM2301
|
|
|
|
DHT dht(DHTPIN, DHTTYPE);
|
|
BlynkTimer timer;
|
|
|
|
// This function sends Arduino's up time every second to Virtual Pin (5).
|
|
// In the app, Widget's reading frequency should be set to PUSH. This means
|
|
// that you define how often to send data to Blynk App.
|
|
void sendSensor()
|
|
{
|
|
float h = dht.readHumidity();
|
|
float t = dht.readTemperature(); // or dht.readTemperature(true) for Fahrenheit
|
|
|
|
if (isnan(h) || isnan(t)) {
|
|
Serial.println("Failed to read from DHT sensor!");
|
|
return;
|
|
}
|
|
// You can send any value at any time.
|
|
// Please don't send more that 10 values per second.
|
|
Blynk.virtualWrite(V5, h);
|
|
Blynk.virtualWrite(V6, t);
|
|
}
|
|
|
|
void setup()
|
|
{
|
|
// Debug console
|
|
Serial.begin(9600);
|
|
|
|
Blynk.begin(auth);
|
|
|
|
dht.begin();
|
|
|
|
// Setup a function to be called every second
|
|
timer.setInterval(1000L, sendSensor);
|
|
}
|
|
|
|
void loop()
|
|
{
|
|
Blynk.run();
|
|
timer.run();
|
|
}
|
|
|