I implemented another AudioLogger
it takes i2s input (dual/quad) and passes on to usb and uSD
I tested it with ICS4343x digital microphones
it consist on an ino file and two include files
the file "record_logger.h" implements a template based "multi-channel uSD logger"
the file "mfs.h" acts as interface to a file system. here, the selected file system is latest Bill's SdFs https://github.com/greiman/SdFs
Note, as the standard "Audio.h" includes the stock SD.h library and therefore a lot of redefine errors, I chose to include individually the needed Audio objects
To learn use of templates, the AudioRecordLogger is implemented as template to avoid "defines" for array declarations.
Note further, with quad I2S the amount of memory required for overrun-free can be significant and requires 'good' uSD cards (which I do not have!)
The overrun situation needs proper design.
For this test I chose to ignore new data if buffer overrun situation occurs.
I final application would further need a header/trailer for data relevant meta data
created GitHub for this sketch
https://github.com/WMXZ-EU/AudioSimpleLogger
copy into sketch folder (not library)
Edit removed attachment as sketch is on GitHub
it takes i2s input (dual/quad) and passes on to usb and uSD
I tested it with ICS4343x digital microphones
it consist on an ino file and two include files
the file "record_logger.h" implements a template based "multi-channel uSD logger"
the file "mfs.h" acts as interface to a file system. here, the selected file system is latest Bill's SdFs https://github.com/greiman/SdFs
Note, as the standard "Audio.h" includes the stock SD.h library and therefore a lot of redefine errors, I chose to include individually the needed Audio objects
To learn use of templates, the AudioRecordLogger is implemented as template to avoid "defines" for array declarations.
Note further, with quad I2S the amount of memory required for overrun-free can be significant and requires 'good' uSD cards (which I do not have!)
The overrun situation needs proper design.
For this test I chose to ignore new data if buffer overrun situation occurs.
I final application would further need a header/trailer for data relevant meta data
created GitHub for this sketch
https://github.com/WMXZ-EU/AudioSimpleLogger
copy into sketch folder (not library)
Edit removed attachment as sketch is on GitHub
Last edited: