I’ve been sending large binary files using the old Arduino library, basicaly encoding the files and sending them in the payload. I’ve noticed that the new Arduino library version 1.5.1 includes new functions for sending binary data. I’m curious to know if this new method offers any advantages over the old one, such as:
- Is it more reliable?
- Can it handle larger files?
I have devices deployed in the field with distinct sensors and codes, so I’d be hesitant to make changes unless there are significant improvements or new features in the new library.
I’d recommend reading through our guide here as it goes into more detail: Sending and Receiving Large Binary Objects - Blues Developers
In short though, the big advantage is speed. The new
card.binary APIs are able to transmit ~128kb at a time, and have some optimizations so the data flows from the Notecard to Notehub significantly faster. Check out this webinar (link is straight to the demo) to see it in action https://www.youtube.com/watch?v=7cLzNz0Sa-Y&t=1980s
If you have deployed devices I’d probably only change things if speed is a problem for whatever reason. But you might want to play with the feature locally to get a sense of how it works.
And if you have any more in-depth questions feel free to reach out in here. I can rope in my coworker that worked on that 1.5.1 update.