Hi guys,
I am currently trying to use my Arduino Due with the Sdfat library to use it as high speed datalogger for analog signals. Due to the fact that the Due isn´t an AVR board the analog bin logger doesn´t work on it.
There is also an example sketch which is called AnalogLogger, but it seems that it cant handle such high logging rates.
Is there a way to use the Due as an analog datalogger with a logging speed of 10kHz for two channels?
I hope somebody can help me with this issue.
You can use the Uno running slow to do that. The problem is in writing to the SD card. The only way to speed that up is to understand that SD card writes are done in blocks of 512 bytes. The overhead of writing is the same for 1 byte or 512, so don't try writing byte-by-byte, store your data in an array and write blocks at a time.
thank you for your reply.
With the Sdfat library logging at this speed would be possible on Uno, but i wanted to use the Due due to it´s 12bit ADC to get better resolution.
I think if I write blocks of 512bytes, which are pretty fast full if you collect 20000 samples per second with a size of 12bit each, the writing latency will still be a problem because when the Arduino writes to the SD card it can´t read the ADC. Or is it possible to simultaneously write to the card and read analog pins?
SD writers are attached via SPI and there are hardware peripherals that will handle the transfer without impacting the processor. The problem then becomes the library you use and the card itself. Look for a high-speed card, class 10 or better, and find a high speed library.
Ok thank you.
Any recommendations on libraries or already existing sketches?
Hi,
Have you googled arduino due datalogger
Tom... 
Sorry, I'd have to Google and you should do that. All part if the learning curve. When you have your first draft of code ready, post it and we'll move on from there.