Hi. I have connect anenometer to ESP8266Devkit . But this sketch no showing data. I dont know why. One year ago this skecht working. I tryed update firmware and other Arduino IDE version and is it same. In app Blynk is ESP connecting but V1,V2,V3,V4 show still 0. Thanks.
//#define BLYNK_PRINT Serial // Comment this out to disable prints and save space
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
#include <SimpleTimer.h>
// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "";
// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "";
char pass[] = "";
const int hallPin=3;
volatile byte half_revolutions;
unsigned int rpm, ms, kmh, maxMs, h1_2, m1_2, h3_4, m3_4, h5_6, m5_6, h7_8, m7_8, h9_10, m9_10, h11, m11, h3, m3, d1_2, d3_4, d5_6, d7_8, d9_10, d11, d3;
unsigned long count1_2, count3_4, count5_6, count7_8, count9_10, count_11, count_3;
unsigned int den = 86400;
unsigned int hodina = 3600;
unsigned int minuta = 60;
String zacatekMereni = "20.02.2017";
SimpleTimer timer;
// This function will run every time Blynk connection is established
BLYNK_CONNECTED() {
//get data stored in virtual pin V0 from server
Blynk.syncVirtual(V30);
}
// restoring counter from server
BLYNK_WRITE(V30){
//restoring int value
maxMs = param[0].asInt();
count1_2 = param[1].asLong();
count3_4 = param[2].asLong();
count5_6 = param[3].asLong();
count7_8 = param[4].asLong();
count9_10 = param[5].asLong();
count_11 = param[6].asLong();
count_3 = param[7].asLong();
}
void setup(){
pinMode(hallPin,INPUT);
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
attachInterrupt(digitalRead(hallPin), rpm_fun, RISING);
half_revolutions = 0;
rpm = 0;
ms = 0;
kmh = 0;
timer.setInterval(3000L, mereniRPM); //kazdy tri vteriny vypocte ze signalu udaje
timer.setInterval(600000L, zaloha); //kazdych 10 minut ulozi data na blynk server
timer.setInterval(60000L, vypocet); //kazdou minutu vypocita udaje a posle na blynk
}
void zaloha(){
Blynk.virtualWrite(V30, maxMs, count1_2, count3_4, count5_6, count7_8, count9_10, count_11, count_3);
}
void mereniRPM(){
rpm = (half_revolutions*20)/3;
ms = half_revolutions/7;
kmh = half_revolutions/2;
if (ms > maxMs) maxMs = ms;
if ((ms == 1)||(ms == 2)) count1_2 += 3;
if ((ms == 3)||(ms == 4)) count3_4 += 3;
if ((ms == 5)||(ms == 6)) count5_6 += 3;
if ((ms == 7)||(ms == 8)) count7_8 += 3;
if ((ms == 9)||(ms == 10)) count9_10 += 3;
if (ms >= 11) count_11 += 3;
if (ms >= 3) count_3 += 3;
// Serial.println(half_revolutions,DEC); //pocet signalu za 3s. (3 signaly na otacku)
Blynk.virtualWrite(V1, rpm);
Blynk.virtualWrite(V2, ms);
Blynk.virtualWrite(V3, kmh);
Blynk.virtualWrite(V4, maxMs);
half_revolutions = 0;
}
void vypocet(){
d1_2 = count1_2 / den;
h1_2 = (count1_2 % den) / hodina;
m1_2 = ((count1_2 % den) % hodina) / minuta;
d3_4 = count3_4 / den;
h3_4 = (count3_4 % den) / hodina;
m3_4 = ((count3_4 % den) % hodina) / minuta;
d5_6 = count5_6 / den;
h5_6 = (count5_6 % den) / hodina;
m5_6 = ((count5_6 % den) % hodina) / minuta;
d7_8 = count7_8 / den;
h7_8 = (count7_8 % den) / hodina;
m7_8 = ((count7_8 % den) % hodina) / minuta;
d9_10 = count9_10 / den;
h9_10 = (count9_10 % den) / hodina;
m9_10 = ((count9_10 % den) % hodina) / minuta;
d11 = count_11 / den;
h11 = (count_11 % den) / hodina;
m11 = ((count_11 % den) % hodina) / minuta;
d3 = count_3 / den;
h3 = (count_3 % den) / hodina;
m3 = ((count_3 % den) % hodina) / minuta;
if (m1_2 < 10) Blynk.virtualWrite(V5, d1_2, " d ", h1_2, ":0", m1_2);
else Blynk.virtualWrite(V5, d1_2, " d ", h1_2, ":", m1_2);
if (m3_4 < 10) Blynk.virtualWrite(V6, d3_4, " d ", h3_4, ":0", m3_4);
else Blynk.virtualWrite(V6, d3_4, " d ", h3_4, ":", m3_4);
if (m5_6 < 10) Blynk.virtualWrite(V7, d5_6, " d ", h5_6, ":0", m5_6);
else Blynk.virtualWrite(V7, d5_6, " d ", h5_6, ":", m5_6);
if (m7_8 < 10) Blynk.virtualWrite(V8, d7_8, " d ", h7_8, ":0", m7_8);
else Blynk.virtualWrite(V8, d7_8, " d ", h7_8, ":", m7_8);
if (m9_10 < 10) Blynk.virtualWrite(V9, d9_10, " d ", h9_10, ":0", m9_10);
else Blynk.virtualWrite(V9, d9_10, " d ", h9_10, ":", m9_10);
if (m11 < 10) Blynk.virtualWrite(V10, d11, " d ", h11, ":0", m11);
else Blynk.virtualWrite(V10, d11, " d ", h11, ":", m11);
if (m3 < 10) Blynk.virtualWrite(V11, d3, " d ", h3, ":0", m3);
else Blynk.virtualWrite(V11, d3, " d ", h3, ":", m3);
Blynk.virtualWrite(V12, zacatekMereni);
}
void loop(){
Blynk.run();
timer.run(); // Initiates SimpleTimer
}
void rpm_fun()
{
half_revolutions++;
}