Blynk starts up OK but restarts about 10 times an hour


I have a stable 200/200 WiFi and Blynk connected to an Arduino Mega with a Cytron ESP 8266. Blynk starts up OK but restarts about 10 times an hour and then sometimes it will freeze as follows:

[1924506] Connecting to Madrid
[1927694] AT version:  7 2016 18:44:24)
SDK version:1.5.1(e67da894)
compile time:Jan  7 2016 19:03:11
[1930977] +CIFSR:STAIP,""
[1930989] Connected to WiFi

And it will never recover unless I reset the Arduino. This is the setup:

#define BLYNK_PRINT Serial
#define Blynk_DEBUG
#include <ESP8266_Lib.h>
#include <BlynkSimpleShieldEsp8266.h>
#include <TimeLib.h>
#include <WidgetRTC.h>
char auth[] = "...";
const char *ssid = "xxxxx";
const char *pass = "yyyyyyy";
#include <SoftwareSerial.h>
SoftwareSerial EspSerial(12, 13); // RX, TX
#define ESP8266_BAUD 9600
ESP8266 wifi(&EspSerial);

in setup() I have
Blynk.begin(auth, wifi, ssid, pass);

Mega+ESP will freeze if there is a connection problem

I moved your post into your own topic… Please do not tack a new issue into someone else’s topic, particularly a solved 7 month old one.

Yup, looks like you need to find the root issue for the restarts… We can’t see anything wrong with what little you showed :wink:

Although I do wonder what you are using SoftwareSerial with an Arduino MEGA that has 4 hardware serial ports??


The problem with the Cytron board is the selection of the pins are limited to the following:

There are no options for communicating with the Arduino Mega Hardware Ports.

I will contact Cytron Technologies and see what comes up. I may of course be missing something here.


I see now… it is a hardwired physical shield board. Just pick up a ESP-01 for a buck or two and wire it up any way you want to the Mega. That’s how I do :stuck_out_tongue_winking_eye:


I notice I get a Blynk Heartbeat timeout when Blynk restarts. What causes the hearbeat timeout and how long is it?

I will get some simple ESP’s and wire them up.



Bad/blocking code and I think it defaults to 10 seconds.

Don’t forget to read them pesky documentations


Where do I even start to look. I will have to simplify the code and add section by section until I can identify what is bad or blocking comms.

I assume it has to be in my code or can it be one of the libraries I am using. I do not use delay() in my code at all except during setup().


You can paste your code here… properly formatted… so others can take a look