We added buffering to the new LabVIEW plugin for daq.io. Instead of relying on 3rd-party databases that would have to support all possible NI targets (which is really tough to do) and could result in licensing restrictions, we decided to use a very basic approach. When offline, all Time Series and Event values will be stored to human-readable text files on the device in the default “LabVIEW Data” folder. Once reconnected, the buffered data can be posted to daq.io easily by calling the Buffer FGV with the command “Post from Buffer”. The Buffer FGV automatically manages the number and maximum size of the buffer files. Please note, this functionality is not yet optimized for performance and we are happy to receive feedback on how well it performs for you.
Please note, as with any buffering technique, buffering can only cover a limited time frame. Depending on your incoming data rate you could generate many buffer files rather quickly. Benchmark your connection and try to use the buffer responsibly.
The new LabVIEW example for embedded devices will perform a connectivity check in parallel that re-connects as soon as a connection can be established. Upon re-connecting it will upload all existing buffered data. Please note that the functionality works a bit differently on different systems. Windows will generate more detailed status updates than vxWorks based targets, for instance.
This example now also posts connectivity changes in the “System Status” Event that you can retrieve and view for that specific device online.