I guess I'm going to have to put in a support ticket because some of these are running my software and some of them are running tinker yet they are overusing data at the same rate.
@Paul_B Did you ever get to the root cause of this excessive data usage ?
I have also noticed this behavior across my deployed devices within the United States. My devices remain idle 99% of the time and occasionally one will enter a state of "high data" usage, consistently consuming 1.2 MB of data per day (36 MB/30 days), as shown in the example below. To address this issue, I've added a function in my code that triggers a System.reset(). Whenever I detect a device entering this "high data" state, I use this function to reset the Boron (sometimes multiple resets are needed) , which effectively puts an end to the "high data" period. I want to emphasize that I am entirely confident that this excessive data usage is not caused by my code and the devices are in a static locations. Given Particle's current pricing model, this data consumption is becoming a significant concern as my device fleet continues to grow. Any chance we can increase the overall data allowance, or find the root cause of this?
On a growth plan you get 540 MB of cellular data per month. Simple calculations 540MB /1.2MB = 450MB and if we divide that against 30 days that will only last for 15 devices at best if the devices are not consuming other cellular data to post data in the cloud.
Unfortunately, I was unable to find a definite fix for the data overuse. My only guess is that my devices were not playing nice with the cell towers in my area. I even had three devices that were completely unusable and refused to respond to more than one cloud command upon reset. I allowed about three months to pass and recently checked on those same unresponsive devices, and the problem seemed to fix itself. I have even been developing on some of the previously misbehaving devices with zero issues. I communicated with Particle and they were unable to identify the root cause of the issue. The issue is extremely frustrating, and I spent over a month of rewriting code, testing, changing OS versions, and just general troubleshooting trying to find a solution. Sometimes the problem would disappear if I factory-reset a device multiple times and only flashed it with my software once (emphasis on sometimes), but I never managed to find a realistic solution for fixing this issue on a large array of devices. I have about 18 particle Borons currently, and trying to deploy them became extremely difficult with the data overuse. I wish I could tell you why my data overuse issue disappeared, but the fact remains that the devices sat purely untouched for multiple months and fixed the issue themselves.
On another note, if you manage to contact someone at Particle, they were nice enough to increase my monthly data cap while we attempted (unsuccessfully) to find the root of the problem. I wish you luck, and hopefully it doesn't take a couple of months to somehow resolve this problem.
Thanks @Paul_B.
I think it would benefit everyone if Particle incorporate a fix within the OS. As my fleet is increasing I'm seeing this behavior more frequently on random devices and at random times.
For what it's worth, I'm currently running version 4.2.0 on the devices that were giving trouble and haven't had any problems, but I doubt this will solve your issues.
Thanks, I'll give it a try soon. My fleet is at 4.1.0 at the moment.
@Paul_B It seems like version 4.2.0 might have contributed to improving the situation, although I'm uncertain whether this improvement was a direct result of addressing the issue in the bug fixes for that version. I've rolled out the update to a few users who were experiencing high data usage, and currently, the usage is approximately 0.05 MB per day down from 1.2 MB per day. This is with running the same underlying custom code.