This year my research project involves running ML models on collected EMG data. For my project, I need to be able to collect as many datapoints (EMG signals) as possible in a set time frame. Due to this need, I have created a data logger that can record and store EMG data values as fast as possible. Currently, it can measure up to 3,000 data points per second (Calculated using Arduino Serial Monitor Time Output).
The code I have developed can easily be used for any sensor so I thought it was worth sharing.
This code can:
- Store recorded values onto SD card
- Display readings on an OLED display
- Has a button to start recordings for a set amount of time
- Has a potentiometer to change the file name that the data is saved to on the SD card
This code can be made better. Due to my lack of knowledge in Port Manipulation, I don't know how to code without using Arduino based functions such as analogRead() or String(). If you do know how I could optimize my code further please let me know. I would be happy to update my project.