Upload more than 10 readings to blynk

hi everyone…i found a post in a website claiming about how to send more than 10 values to blynk cloud???.. i have arduino mega, and i want to upload 15 readings, so as per their idea, i will use 2 second timer, and everything will be fine…

website post:
Everything has its limitation including the Blynk Server. We cannot upload so many sensor values in a very short time. For example, you cannot upload 100 values every second. Blynk Server is a web interface service provider and they are providing their services worldwide. It will get congested if everybody is doing so. Besides, during uploading, the Blynk server requires time for verification thus uploading speed faster than the verification time may cause error leading Blynk server rejects the values. Typically every 10 values of upload requires 1 second of pending time. For example, if you would like to upload 100 values to the Blynk Server, you need to provide a pending time of about 10 seconds before it can be uploaded again.

Personally, that’s not the approach that I’d take.

I’d also be wary about information that comes from 3rd party websites.

Pete.

hi pete,
which approach would you suggest???

It depends on exactly what you are trying to achieve.

Pete.

Make long story short, my question is how to upload more than ten values so not spamming my blynk

Long answer short, it depends on what you’re trying to achieve. Can’t help with creative solutions without understanding the project goals in detail.

Of course if it’s top secret then you’ll just need to figure it out yourself or go with the dodgy 3rd party website advice.

Pete.

i did not ask about a creative solution,

[Unformatted code removed by moderator]

Please edit your post, and add triple backticks ``` before and after your whole sketch.

#define BLYNK_DEVICE_NAME           "Device"
#define BLYNK_AUTH_TOKEN            "YourAuthToken"


// Comment this out to disable prints and save space
#define BLYNK_PRINT SerialUSB


#include <SPI.h>
#include <WiFi101.h>
#include <BlynkSimpleWiFiShield101.h>

char auth[] = BLYNK_AUTH_TOKEN;

// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "YourNetworkName";
char pass[] = "YourPassword";

BlynkTimer timer;

// This function sends Arduino's up time every second to Virtual Pin (5).
// In the app, Widget's reading frequency should be set to PUSH. This means
// that you define how often to send data to Blynk App.
void myTimerEvent()
{
  // You can send any value at any time.
  // Please don't send more that 10 values per second, (** here i want to send more than 10 **)

}

void setup()
{
  // Debug console
  SerialUSB.begin(115200);

  Blynk.begin(auth, ssid, pass);
  // You can also specify server:
  //Blynk.begin(auth, ssid, pass, "blynk.cloud", 80);
  //Blynk.begin(auth, ssid, pass, IPAddress(192,168,1,100), 8080);

  // Setup a function to be called every second
  timer.setInterval(1000L, myTimerEvent);
}

void loop()
{
  Blynk.run();
  timer.run(); // Initiates BlynkTimer
}```

I don’t see how posting a standard example sketch containing information about the limit of 10 values per second helps us to understand more about what you are trying to achieve and why.

That’s true, but if you have a genuine requirement to send a large amount of data in a short period of time then that’s what you’ll need to do.
Your initial post seemed to imply that sending this data then waiting for a period of time before sending more would be an acceptable solution. If this is the case then your requirement is not to send more than ten values per second, every second, but to send a burst of data then - some time later - send another burst of data.

Without some sort of insight into the type of data you are sending, how you will be using this data in the app, and whether some of the data could be updated at less frequent intervals it’s difficult to know where to start when advising you on possible solutions. Without you sharing that sort of information you aren’t likely to much in the way of helpful advice.

Pete.

i need to send 15 values per 2 seconds, i think it is possible ???

Okay, now we’re getting somewhere!

I’d recommend that you upload half of your readings, wait 1 second and upload the rest.

There are several ways to do this.
You could use a timeout timer to create the delay between uploads, or you could have two staggered setInterval timers running one second apart.

Pete.

Also, there is a rather new firmware API command which allows sending multiple values with 1 timestamp:

https://docs.blynk.io/en/blynk.edgent-firmware-api/virtual-pins#blynk.begingroup-blynk.endgroup

hii sir. firstly thank you for your information that you gave . i have one doubt can i use dealy function in between 2 successive blynk uplod. as i am not using it in void loop i am using timer function and in that after uploding half values to blynk can i use delay function to introduce 1 sec delay and then upload half value . i set timer-interval as 2 sec

Thank you .

You shouldn’t use delays with Blynk. That’s why I said…

Pete.

thank you sir for your advice i used staggered set-intervals timer and now i can send 15 values to blynk.