1

Last week we launched a rocket, in which an Arduino saved the data of the sensor in a csv file. Every 30s the programme used myFile.close() and a new file was created. But even if the chute deployed, the SD disconnected when the rocket touched the ground so the file was never closed. So I lost up the 30s of flight data and I would like to recover at least a part of it. I have the file but it is empty.

It is worth noting that each file was 60Mo and my RAM was 8Mo (teensy 4.1) so I know that at least part of the data is in there.

Does someone know a software that could save my data?

1

1 Answer 1

1

As hinted at by @Gantendo you may want to make a raw dump of the sdcard. Under Linux you can do this with dd or ddrescue. So, if the sdcard is /dev/sdb you could do

 dd if=/dev/sdb of=/path/to/dump.file

To get a copy of the raw image you can then parse.

My guess is it would then be a matter of writing a program to read through that raw dump and extract the data you can find. How you do this would, I guess, depend on the exact format/details of the CSV file.

You may be able to "jumpstart" the process by using the "strings" command under Linux which can search the input for human readable strings with a specified minimum length (and dump those to another file). This would help you to at least identify candidate rows. Of-course, there are lots of other possibilities, and likely better ways to do this depending on the format of the data. (If you provide specifics of the data file format, the good people on stackexchange.com may be able to help you if you get stuck here. We might be able to as well if it can be done with standard system tools, but its possibly out-of-scope here)

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .