Transferring Accelerometer Data

Hi All,

I am currently working on a university project creating a system to connect to a shoe and measure the acceleration while a person walks around with the data to be transmitted by wireless and then graphed in some web based application like highcharts, but I am not sure how to tackle the communication side of the project.

Currently I am using an MPU6050 to measure the data and am sending it through the COM port and receive something to this effect with each read:
-6716,-3654,1872,23.73,-341,139,182,120691 which is AcX, AcY, AcZ,Temp, GyX, GyY, Gyz and millis()

Currently I am taking about 100 readings a second, which is where I fall into a hole a bit with my understanding. I have read some good tutorials about how to publish data to the cloud but from what I have read I am not sure if I will be able to use this as i simply have too much data too often.

I am not too bothered on the rate that the data gets sent to the remote server as long as it is reliable (for example I would be happy for data to be on a five minute delay as long as it was all sent).

Any suggestions on how i might pull this off?

You can consider publishing to other data services or stick to Particle.publish() if you dont mind a one per second data rate

You could start by putting in some type of compression algorithm, so that at a minimum, duplicate readings do not get transmitted. It makes no sense to transmit data if the shoe is not moving. Then you need a very deep buffer, so the data can be transmitted continually yet accumulated at the same time (first in first out). With decent data compression you might be able to regularly catch-up.
There are services (Azure as an example) that will accept data in the thousands of measurements per second, the issue is getting it there at the necessary rate.
Do you have a stable system that logs items, or only a stream of data? Personally, I would get this working (with compression) to a flash card before attempting to go the next step and trying to use WiFi.

Upon further thought, you might be better served by hooking up your sensor to one of many Bluetooth devices, and sending the data to an Android App on a phone that can be carried around for logging and further processing. It solves the problem of limited range with WiFi, plus you could have multiple sessions individually saved, manual / auto upload of saved data, local display, huge storage, etc. Battery size can be greatly reduced on the end device.
I am a big fan of Particle, but I am a bigger fan of choosing the right solution for the problem. If the device will be carried around on your person, the data should go to a local SmartPhone first.
If you use a Bluetooth as a UART, all your code goes on the phone itself.

Thanks for your suggestions, Bluetooth and SD logging do seem like the better option but due to my limited time to get this finished so it can be graded i will have to keep it in mind if i work on it after the semester is finished.

As I am looking to measure potentially harmful impact acceleration whilst walking it would have been advantageous to transmit the full raw results. Having said that I came to a compromise of taking readings over an extended period (250ms) and taking the highest resultant acceleration measured, this still provides the peak acceleration i was interested in without sacrificing too much and means i am publishing at a manageable rate of once every 2 seconds.

Thanks for your help.