For a project, I need to be able to record at a sample-rate of at least 500 kHz. I want to use a Raspberry Pi, but I know that it has no interface with sound. I found the Wolfson Audio Card for the Raspberry Pi on line, but that only goes up to 192 kHz. Does anyone have any suggestions on anything that I could interface with the Raspberry Pi to get these sound recordings done?
-
2I doubt a 700 MHz processor could handle a 1/2 million samples per second; that's <15 instructions per sample. This project doesn't involve bats or dolphins does it? ;)– goldilocks ♦Jan 3, 2015 at 19:18
-
1Using SPI the best I managed was 494387 12 bit samples per second. Mind you that was 100% CPU and the ADC I was using couldn't talk that fast so it was returning gibberish. So it's not completely out of the ball park but a more powerful machine will be needed.– joanJan 3, 2015 at 20:56
-
Yes, it does involve dolphins :) And what do you mean SPI? I'm a tad slow with hardware, so I'm not entirely sure what you're talking about. I'm thinking of using the GPIO pins on the board and connecting those to an ADC. Is that the right direction to head in? Where does the SPI fit in there? And what do I use to control/record everything (C program, Python, Script file, etc.)?– Max JacobJan 4, 2015 at 3:19
-
en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus– goldilocks ♦Jan 4, 2015 at 12:24
-
@MaxJacob SPI is a fast serial interface which uses four of the Pi's gpios. A chap has said he is using a MAX11105 (an ADC which talks via SPI) to do 500k 12-bit samples per second. However as said elsewhere there's more to an ADC than just plugging it in and hoping for the best. Also getting/storing 500 ksps will be pretty impressive on the Pi. Any software (if you manage to find any) is likely to be highly tailored to a specific application.– joanJan 4, 2015 at 18:33
1 Answer
How about a Red Pitaya board to do the sampling, and the Pi to store the data.
500 kHz is about 1 MB/s, you should be able to write this to disk fairly easily.
Also, unless you're experienced with it, you should buy rather than build the analogue front end. There are much bigger pitfalls than just transferring the data - noise will creep into the analogue path in all sorts of ways.