Hi, I'm trying to record data and figure out the best method to try to retain the most information possible. Currently, I have 2 teensy4.1 sending 4x16uint every 10kHz or a complete package of data (64bits) every 2kHz. I will be running the teensy for 1 hr but I could potentially split the hr up into many 1-5min chunks. Unfortunately, the current setup doesn't have a way to synchronize timestamps so they are exclude in the packages, but I was thinking of having a 3rd teensy "probe" the communication lines, add a timestamp (probably a 32bit unsigned long) to the package whenever the 3rd teensy receives data, and down sample the rate at which the package of data is being sent at about 100 Hz. I'm not sure if there is a method to record the data at the speed that I'm transferring information and space to store all the information, but I think down sampling will still give me a sufficient amount of data (If anyone does know of a way please let me know). All the information transfer is done using DMA.
So I will be storing a total of 2*(64+32)bits/pkg* 100Hz*3600s*1.25x10^-10Gb/bit = 8.64x10^-3 Gb of data when down sampled or 2*(64+32)bits/pkg* 2kHz*3600s*1.25x10^-10Gb/bit =0.1728 Gb of data when not down sampled correct me if I'm wrong. However, there are a couple of ways I found to record the data.
1. Save the data in a 32GB SDcard. However, I have to convert the data to a string increasing the needed storage size. If there's a way to send the direct int over the SDcard please let me know. Also, I would have write to the SDcard which I think takes about a few milliseconds and disrupt cpu stuff. Also unsure if I can use DMA to do this directly too.
2. Send the data over Serial and have code in python to read the port and store directly into my computer. Here, I'm unsure about the time it takes to send information through to serial port and the time it takes for python to write data to a file in which it might miss a package.
Sorry for the long post. Does anyone have insight on which one of these methods I should do or if there's another method that have overlooked?
So I will be storing a total of 2*(64+32)bits/pkg* 100Hz*3600s*1.25x10^-10Gb/bit = 8.64x10^-3 Gb of data when down sampled or 2*(64+32)bits/pkg* 2kHz*3600s*1.25x10^-10Gb/bit =0.1728 Gb of data when not down sampled correct me if I'm wrong. However, there are a couple of ways I found to record the data.
1. Save the data in a 32GB SDcard. However, I have to convert the data to a string increasing the needed storage size. If there's a way to send the direct int over the SDcard please let me know. Also, I would have write to the SDcard which I think takes about a few milliseconds and disrupt cpu stuff. Also unsure if I can use DMA to do this directly too.
2. Send the data over Serial and have code in python to read the port and store directly into my computer. Here, I'm unsure about the time it takes to send information through to serial port and the time it takes for python to write data to a file in which it might miss a package.
Sorry for the long post. Does anyone have insight on which one of these methods I should do or if there's another method that have overlooked?