Blynk's communication protocol/method?

Just out of curiosity …

I’m using Blynk in a local code camp demo, and I’m curious where to categorize it protocol-wise. It doesn’t appear to be using standard MQTT (at least, I can’t find reference to it in the server code). Near as I can tell, it’s a straightforward http REST api. Is that right, or is there more custom/socket/protocol sauce involved?

Note: by “straightforward” I don’t mean easy! The job you guys have done in wrapping it into a pleasant arduino interface and beautiful/functional ios app is simply awesome. Kudos!

It is custom tcp/ip protocol. Description. You can also use web sockets and http api.

1 Like

I have a question. I’m in a middle of adding an ambient light sensor to my home wall light controller (based on Arduino+Ethernet shield). The ambient light sensor is connected to ESP8266-01 board, the latter one is modified to deep-sleep micro-consumption as described here. So my ESP8266 goes to deep-sleep and wakes up every 120 sec.

What I’ve noticed: every time when ESP8266 sensor goes to sleep, a Blynk mobile application throws warnings that one of my devices is offline. Sounds a bit annoying for normal behavior of deep-sleep’d device, isn’t it?

Am I correct that the Blynk protocol and an ideology behind it do assume that each device should be permanently connected? Is there anything like MQTT or Internet of Things Messaging Protocol (ITMP) with public/subscribe features?

Nope. It is just the client implementation. Every disconnect message is tracked and clients are notified. Current Blynk app implementation always shows a message. However, you can add the notifications widget and set the desired interval of silence.

Hi Dmitry,

However, you can add the notifications widget and set the desired interval of silence.

Could you kindly elaborate this? I did not get an idea how to prevent mobile app from throwing the warnings

@vitalis do you have the Notification widget in your project? Take a look at the options available with this widget.

1 Like

You need to add notifications widget. Enable notifyWhenOffline and set required “silence” interval.

Thanks all! I have found it