Blynk seems very ProgMem hungry

Hi,
i am running my home control with datalogging of solar power and many other data using Arduino Nano with ESP8266 shield in softserial condition. So far i was using RemoteXY as cloud to plot the data, but i am looking now for something better, like Blynk.

I opened an account and installed everything including app. And tried to run the example Uno+ESP8266shield (with troubles see below) .
After compilation i recognized, that the simple expample with only Blynk.Run consumes already 17K program memory, with transmission of 8 virtual pin data added i am at 19K. This is already 61% of my progmem. This is far out of my budget to add it to my whole software. It is a pitty, i cannot use Blynk with my application. To reconstruct my application for other HW platform would be a huge effort.

I am doing something wrong, or is this normal?

Other issues: (only for information)
I installed the library as usual using the built-in library manager in Arduino IDE, as also described in the Getting Started. There were a number of error messages at compilation, e.g. ESP8266_lib.h not found.
It took me significant time to figure out, that i need to install in addition the BlynkESP8266_lib. The tutorial seems not to be complete.
I use the example Uno+ESP8266shield, configured as softserial, as there is no one with Nano, but this should also work. Softserial pins and bauds are defined like in my old working application with ESP/RemoteXY. But i always get the errormessage after download “ESP is not responding”.
I did a number of trials of alterations, but no success. I gave up, as for the moment i am not sure to use Blynk for above mems reasons.
“” Get started in 5 minutes “” : , after more than 5 hours a simple example is not yet running.

Regards Peter

What version of the Blynk C++ library do you have installed?
What version of the AT firmware does your ESP-01 have installed?

The Blynk library is a powerful tool, and as such comes with a sizeable memory requirement, but it depends on what other libraries you have installed, and what sort of memory management precautions you are taking when writing your code.

Personally, I’d say that taking a non-IoT capable device and adding an ESP-01 as a WiFi modem isn’t the best approach, regardless of how much memory the device has. Far better to choose an IoT capable device such as a NodeMCU or ESP32 when creating an IoT project.

Pete.

Hi Pete, thanks for your very quick answer.

I installed the latest library [v1.0.0-beta.3]. The version of the AT firmware would need to be checked, it is still the original version. The ESP is now hardwired inside the application, and i still need to find out how i can retrieve the FW version through the softserial and Nano. As this has not high prio now, i didn’t invest. But this could be one of the reasons of malfunction.

The Blynk example was only very basic, so there should not be much overhead for saving. My software of the application is already pretty much squeezed. Of course there could always be found some savings with significant investments, but never so much to get the huge space for Blynk. It’s a pitty.

You are right, the use of the ESP shield for cloud connection was not a good choice, it was originally not planned. The arduino was ment only for all the interfaces and ADCs (where the ESP has strong limitation), and the internet stuff was planned with something like Raspi. But then it turned out, that i have still room on the Nano and could simplify the overall project a lot by doing the internet stuff also on the Nano with the help of an ESP shield. It was not easy to make it running, but now it runs since some time together with RemoteXY, with some limitations.

I have still to decide, if i live with the limitations, or exchange the ESP shield with a NodeMCU or Wemos, and reconfigure SW and HW to get Blynk inside, a significant effort. I am not sure in the moment, if i can find the time for it. As soon as my HW is modified i will come back to Blynk.

Thanks and best regards
Peter

You shouldn’t be using the beta version unless you are part of the beta programme. You need version 0.6.1 and that’s probably why you are having issues with missing libraries.
You should fully un-install the beta version first.

Pete.

OK, thanks.
I took the default, which was offered by the library manager. I will correct.
Peter

the example has a comment

  WARNING!
    It's very tricky to get it working. Please read this article:
    http://help.blynk.cc/hardware-and-libraries/arduino/esp8266-with-at-firmware

“It’s very tricky to get it working. Please read this article:”

Thanks Juraj for the hint.
I read this, and fully agree with this warning. I have made this bloody experience last year, when i implemented the cloud connection with RemoteXY. My assumption was now, that i could change to Blynk without big troubles, as the configuration is already working.
But i failed, as discussed above, first with the progmem limitation for Blynk complexity, and probably it is also not compatible with the AT version on the ESP. It is not so easy or even not possible to flash the ESP through the arduino, i don’t have easy direct access to the ESP inside the HW application.
The only and better way is to replace the ESP shield with a NodeMCU and run all the cloud stuff there. Even if it means timeconsuming modifications of the HW and SW topology.
Best regards Peter