hello! blynkers
Getting error in serial monitor as well as nothing works blynk keeps connecting and disconnecting
ets Jan 8 2013,rst cause:2, boot mode:(3,6)
load 0x4010f000, len 3584, room 16
tail 0
chksum 0xb0
csum 0xb0
v2843a5ac
~ld
here is the code
/* ESP & Blynk */
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
#define BLYNK_PRINT Serial // Comment this out to disable prints and save space
char auth[] = "***************************";
/* WiFi credentials */
char ssid[] = "**********";
char pass[] = "************";
/// OTA dependencies ///
#include <ESP8266HTTPClient.h>
#include <ESP8266httpUpdate.h>
#include <WiFiClient.h>
WiFiClient client;
/* TIMER */
#include <SimpleTimer.h>
BlynkTimer timer1;
#define TRIGGERPIN D0
#define ECHOPIN D1
//float temp;
float Dist;
unsigned long Settime;
float duration, distance1, distance2;
float distance3;
int relay1 = 4;
int relay2 = 0;
int relay3 = 2;
int relay4 = 14;
int relay5 = 12;
int relay6 = 13;
int relay7 = 15;
int relay8 = 1;
const char* fwImageURL = "url here";
void setup()
{
Serial.begin(115200);
pinMode(TRIGGERPIN, OUTPUT);
pinMode(ECHOPIN, INPUT);
pinMode(relay1, OUTPUT); // declare LED as output
pinMode(relay2, OUTPUT); // declare LED as output
pinMode(relay3, OUTPUT); // declare LED as output
pinMode(relay4, OUTPUT); // declare LED as output
pinMode(relay5, OUTPUT); // declare LED as output
pinMode(relay6, OUTPUT); // declare LED as output
pinMode(relay7, OUTPUT); // declare LED as output
pinMode(relay8, OUTPUT); // declare LED as output
digitalWrite(relay1, HIGH);
digitalWrite(relay2, HIGH);
digitalWrite(relay3, HIGH);
digitalWrite(relay4, HIGH);
digitalWrite(relay5, HIGH);
digitalWrite(relay6, HIGH);
digitalWrite(relay7, HIGH);
digitalWrite(relay8, HIGH);
Blynk.begin(auth, ssid, pass);
SimpleTimer timer1;
}
void loop()
{
readinputs();
controlOutputs();
controlOutputoff();
Blynk.run();
timer1.run();
}
BLYNK_WRITE(V100)
{
int pinValue = param.asInt();
if (pinValue == 1) {
InstallUpdates();
}
}
void InstallUpdates() {
Serial.println( "OTA Update Request Received" );
Serial.print( "Firmware URL: " );
Serial.println( fwImageURL );
HTTPClient httpClient;
httpClient.begin( fwImageURL );
int httpCode = httpClient.GET();
if ( httpCode == 200 ) {
Serial.println( "Update file found, starting update" );
// Set virtual pin to 1023 so the LED widget in the Blynk app lights up to show that the upgrade started
Blynk.virtualWrite(V101, 255);
Blynk.setProperty(V101, "label", "UPDATING");
t_httpUpdate_return ret = ESPhttpUpdate.update( fwImageURL );
switch (ret) {
case HTTP_UPDATE_FAILED:
Serial.printf("HTTP_UPDATE_FAILD Error (%d): %s", ESPhttpUpdate.getLastError(), ESPhttpUpdate.getLastErrorString().c_str());
break;
}
}
else {
Serial.print( "Firmware check failed, got HTTP response code " );
Serial.println( httpCode );
}
httpClient.end();
}
/***************************************************
* Send Sensor data to Blynk
**************************************************/
void readinputs()
//Sends data values to Blynk
{
float duration, distance1, distance2;
float distance3;
digitalWrite(TRIGGERPIN, LOW);
delayMicroseconds(3);
digitalWrite(TRIGGERPIN, HIGH);
delayMicroseconds(12);
digitalWrite(TRIGGERPIN, LOW);
duration = pulseIn(ECHOPIN, HIGH);
distance1 = (duration/2) / 29.1;
distance2 = (duration/2) / 74.1;
distance3 = distance2/12;
Serial.println(distance1);
Serial.println(distance2);
Serial.println(distance3);
Serial.println("Cm");
Serial.println("In");
Serial.println("feet");
}
BLYNK_WRITE(V1)
{
Dist = param.asInt();
Serial.print (" Set Distance ");
Serial.println (Dist);
Blynk.syncVirtual(V1);
}
BLYNK_WRITE(V2)
{
Settime = param.asInt();
Serial.print ("Set Time ");
Serial.println (Settime);
Blynk.syncVirtual(V2);
}
void controlOutputs()
{
if (distance3 <= Dist)
{
digitalWrite (relay1, LOW);
digitalWrite (relay2, LOW);
digitalWrite (relay3, LOW);
digitalWrite (relay4, LOW);
digitalWrite (relay5, LOW);
digitalWrite (relay6, LOW);
digitalWrite (relay7, LOW);
digitalWrite (relay8, LOW);
timer1.setTimeout(Settime*60000, controlOutputoff);
Serial.print("Relays are On");
}
}
void controOutputoff()
{
digitalWrite (relay1, HIGH);
digitalWrite (relay2, HIGH);
digitalWrite (relay3, HIGH);
digitalWrite (relay4, HIGH);
digitalWrite (relay5, HIGH);
digitalWrite (relay6, HIGH);
digitalWrite (relay7, HIGH);
digitalWrite (relay8, HIGH);
}