Blynk 2.0 Features/Limitations?

I know!
I do use tiles on one of my projects, because it works well for that scenario (a lighting setup in the living room, where the primary goal is to turn four lights on/off with a tile tap, but a press/hold will give access to RGB controls etc).
The issue with the new app is that it wont even work well for that scenario, because the new tiles are larger, and and they aren’t contained within a tab of a project.
I think that if there was an optional level above the device tiles, like projects, then it would be more useable.
There’s also no way to see data across multiple devices in the app, but a project view would help with that.
There is talk of introducing a replacement for Projects, but if it happens then of course the devil will be in the detail, and I cant help but think that retro-fitting this is far from the ideal solution.

Pete.

1 Like

You are 100% in. So you can start being open minded on tiles. They are pretty good (for its purpose). And when you finally love it, we’ll add projects back :wink:

With Arduino IDE, to use Blynk 2.0 you only need to open the BlynkEdgent example thingy, and code.
But with PIO , because that BlynkEdgent isn’t a library file within Blynk library, I cant just write #define and start coding . I need to add the whole folder that contains BlynkEdgent.h and all the stuff that comes with it.

My hopes for the future is an easier use of the Blynk library. Maybe just define it and be good to go

2 posts were split to a new topic: Esp32 resets every 30 seconds

I have similar observations, @PeteKnight . The new philosophy of Blynk 2.0 appears to be one Device through its Template to one Tile. Is this correct? Can I show the datastreams from multiple devices in a single Tile? How?

As an example from old Blynk, I have an app which shows temperature and barometer on one SuperChart. In this example, I have two different ESP8266s providing the temp and barometer displayed. What I want to do is display/control datastreams from multiple ESP32s/8266s into one Tile. The old Blynk panel that shows this SuperChart also shows other datastreams from multiple ESP devices. Screenshot 1 below.

In another app, I have a number of SONOFFs and an ESP32 scheduler - 7 devices - all showing on one panel. I want to see them all at once, or at least see and control all the SONOFFs, even with scrolling. Second screenshot below.

If I understand the new approach, I find the Tiles to be way too large to fit multiple devices on a single mobile panel. , AND the one Tile = one Device approach makes it difficult to combine different datastreams from sensors easily.

All help in understanding the new philosophy welcome. I certainly may be missing something.
Hope this feedback is helpful.

Old Blynk Screenshot 1 mixing datastreams from multiple devices in one Super Chart
Can we do this in Blynk 2.0?

Old Blynk Screenshot 2 showing 7 devices on the same panel.
Are Blynk 2.0 Tiles too large for multiple simple devices?

I’m with you, did that exactly with my SONOFF array in old Blynk.

Is there a way to get datastreams from more than 1 device/authcode to show in the same mobile app tile?

1 Like

Just put the same id, device name and auth
And use different vPin in your sketch.

1 Like

Nope.

Thanks @Dmitriy for the clear answer. I’m starting to ‘get’ the new philosophy of Blynk 2.0.

In order to assemble a variety of datastreams from different devices into one Tile, I started by putting each sensor/device in its own Tile, then adding a new device (ESP32) to provide an Overview (Template and) Tile. The Overview ESP32 does HTTPS GETs from each of the datastreams I like and presents them as consolidated. So I have 6 different sensors in 4 different Tiles plus 1 Overview Tile showing data from all 6 sensors in the way I want to show it.

This is different from the way I used old Blynk, pretty powerful. I did post some simple ESP32 HTTP GET code in the Community which I used to assemble my Overview. The advantage of an Overview Device/Template/Tile is that each sensor/device has its own Tile for drilling down and to provide Device notifications. The Overview shows the consolidated info for easy scanning.

Progress. Getting there. Old dog learning new tricks.

1 Like

Glad you made it. In general, I agree, that we can add more flexibility in the future. And that’s definitely will be done at some point. Maybe with introducing some specific group tiles. We’ll see.

two eevices with single authh tokken???

That’s possible, but I would not recommend you to use that approach. There may be some side effects.

1 Like

Two different devices, two different authcodes. I would like Device A to be able to know if Device B is online or offline.

When Device A gets a datastream value from device B using an HTTPS GET, the call succeeds and Device A gets a value even when device B is offline. Device A does not know that Device B is offline.

When Device B goes offline, it triggers its Offline Event. Can Device A see Device B’s Offline Event? Or can Device A somehow see Device B’s online or offline status?

Thanks.

You could use the data invalidation settings for the datastream as a way of knowing if the device is online or not.

Pete.

I display the time (hh:mm:ss) on each datastreams ( A&B), then, I compare the time between the 2 datastream :stuck_out_tongue:

This is helpful, @PeteKnight , thanks. The HTTP GET to the offline device’s datastream still returns a good value even if the device is offline. All options available in data invalidation return a successful 200 code from an HTTP GET even when the device is offline. Only the value returned can be modified. The data invalidation scheme does let me pick the datastream’s ‘default’ value to show when device is offline, so it’s a solution.

I’d still love a way for one device to ‘hear’ an event on another device, so Device A can know if Device B is offline, online, or just had an Event triggered.
OR using data invalidation, be able to return an errorcode on an HTTP GET to a datastream from an offline device.

Getting there… thanks again.

Give a try to my solution, that works well for me.

I like your idea! Thanks.

1 Like

You can use HTTP GET request “/external/api/isHardwareConnected”. However, a more reliable approach would be to send the value to some datastream, like counter of milliseconds, and on another hardware you can compare it with the prev value.

1 Like