I was wondering, if I put an Arduino with a few sensors on let's say a water rocket to track acceleration and height and what not, how would I save this data?

I'm assuming that I want to have a high resolution in my data, so let's say I take a measurement from every sensor every 10ms.

I'm figuring this might be too much to write on a SD card that fast.

The Arduino is obviously not connected via USB, so wired serial monitor doesn't work. I could have a wireless serial output and log the data on a laptop receiving the serial monitor.

Another way I know would be something like MQTT over WiFi - but is it made to handle this much data in a short time?

How would you do it?

  • \$\begingroup\$ Depends how much data. You can buffer it in internal memory and then dump in packets to SD or whatever. Or it is very possible that Arduino is just not the right platform for the task. \$\endgroup\$
    – Eugene Sh.
    Apr 15, 2021 at 20:59
  • \$\begingroup\$ Does this "water rocket" actually fly? If so, do you really think you will have WiFi? \$\endgroup\$ Apr 15, 2021 at 21:38

1 Answer 1


First up, determine how many bytes for how long. Would this fit in your available ram? With an Arduino Uno, you’ve not got much ram, so that choice of platform is probably not going to work for you. Something like an esp32-wrover has 4MB of external ram and is supported with the Arduino software obviously has a lot more wiggle-room ram wise. Depending on how much actual data you collect, there may be room on the module’s flash to store it more permanently or there’s the choice of external flash, sdcard or just dump it out WiFi.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.