Blynk Library for Arduino v0.4.1 is released

@gfvalvo we plan to introduce a library installer package at some point, this will automatically check updates.

But what does it means? It is already in Library repository in Arduino IDE, and last time I performed update through repository!

sure. but there is more than 1 library in the Blynk package.

Heh, you got me :slight_smile: I though only about Blynk lib alone

@Costas, please, i need a little help.

i would like to configure blynk as non-blocking, using enc28j60 ethernet module, with manual network configuration (for static ip).
based on your code, i tried:

    // static ip settings
    byte arduino_mac[] =  {0xDE, 0xDD, 0xBA, 0xFE, 0xFE, 0xED};
    IPAddress server_ip   ( 46, 101, 143, 225);
    IPAddress arduino_ip  (192, 168,   0, 155);  // set the desired ip address here
    IPAddress dns_ip      (192, 168,   0,   1);
    IPAddress gateway_ip  (192, 168,   0,   1);
    IPAddress subnet_mask (255, 255, 255,   0);

void setup()
{
    Blynk.config(auth, server_ip, 8442, arduino_ip, dns_ip, gateway_ip, subnet_mask, arduino_mac);
    unsigned long maxMillis = millis() + 10000;
    while ((Blynk.connect() == false) && ( millis() <= maxMillis)) {}

but i’ve got:

exit status 1
no matching function for call to 'BlynkEthernet::config(char [33], IPAddress&, int, IPAddress&, IPAddress&, IPAddress&, IPAddress&, byte [6])'

how should i do this?
thanks!

@wanek I’ll just check my ENC with the library I have (0.4.3) and UIPEthernet. Meanwhile which library version are you using and which Ethernet library?

latest blynk 044 lib, and uipethernet with static ip.

this is a device placed on a remote location, and it worked very reliably with the non blocking blynk librarie.

but today i wanted to modify something in the firmware, and when uploaded the sketch with the new blynk lib, it blocks when not connected to the internet. (it is not always online, sometimes has to work in offline mode)

@wanek ok this compiles but I have tried it on my ENC as my USB ports are currently busy. Let me know if it works for you.

void setup()
{
    //Blynk.begin(auth, server_ip, 8442, arduino_ip, dns_ip, gateway_ip, subnet_mask, arduino_mac); // compiles OK
    //Blynk.config(auth, server_ip, 8442, arduino_ip, dns_ip, gateway_ip, subnet_mask, arduino_mac);  // doesn't compile
    Ethernet.begin(arduino_ip, dns_ip, gateway_ip, subnet_mask, arduino_mac);
    Blynk.config(auth, server_ip, 8442);  
    unsigned long maxMillis = millis() + 10000;
    while ((Blynk.connect() == false) && ( millis() <= maxMillis)) {}
}

well, it compiles, however it never connects to cloud.

unfortunately, i’m not sure if it is because of the modifications i made in the firmware, or because of the new library. i have to further investigate the cause.

also there are other very strange things since i changed the sketch: abnormal readings from a bme280 sensor.

but thanks anyway for the prompt help!

@wanek I only guessed what might compile and might work. I will try to hoop up my ENC later and see how it goes with 0.4.3.

I read recently that a library update for one sensor had stopped the sensor from working, can’t remember which one but sounds a bit like yours. I use DS18B20’s and it wasn’t this one. I am reluctant to do any upgrades until I know they are robust, even though they are normally beneficial.

can i find somewhere older versions of blynk lib to test this issue?
originally, this device run on some pre 043 lib version, i do not remember exactly what, but it worked flawlessly.

i upgraded to latest blynk lib, because everybody here stresses to always use the latest lib / app version.

Have you upgraded your app and server to match the library version?

i do not use local server, i use cloud.
the app is upgraded, of course.

Sorry I saw the server IP address and thought it was yours.

Do you need the IP address, rather than “blynk-cloud.com”? It’s needed for the Geo-DNS fix but not for most Blynkers. Not saying it will make any difference.

for me it didn’t worked with “blynk-cloud.com”. tried a lot, but it didn’t.
this is why i had to use the ip instead. i do not know why, but it worked only this way.

@wanek I hooked up my ENC, few problems at first but OK now with 0.4.3 and pretty sure 0.4.4 sure be ok.

I checked the syntax for Ethernet.begin and we had it wrong.
Try:
Ethernet.begin(arduino_mac, arduino_ip, dns_ip, gateway_ip, subnet_mask );
Just to add I have a more complex timeout function in my sketch but yours looks fine at a glance.

1 Like