repeat that!

A friend and I were talking (about two way radios, scanners, & tivo). Once we got talking, we decided even fm radio could use it.

The concept is you hear something, but you weren't paying close attention. It's considered bad form to say "Say again?", you could hit a button and it would repeat the last 10,15,20,or 30 seconds....

My idea is to build an "external speaker" that you could plug into your transceiver or scanner. Inside the speaker would be a simple arduino recording things to a circular type queue and a button on top would repeat the last X seconds.

I think this is fairly straight forward, except if it needs to record & play something at the same time.

is recording sound/voice & playing it back a simple task? We dont need a microphone, since we'd be taking input directly (like a headphone).

Any suggestions on parts/modules to use?

is recording sound/voice & playing it back a simple task?

No. An Arduino has far too little memory for storage of digitized audio.

I have some old chips which can do this. See if you can find any 'APR9600' IC's

These can record and playback audio, and were quite cheap (when I got them years ago). No external controller is required (just push buttons), but you can by all means use an Arduino to control them instead.

http://www.seapraha.cz/download/01171636-apr9600.pdf

Although there is probably newer and higher quality solutions around now.

Thanks pYro_65! I'll look for those, sounds like it's what I want.

You just need one or two chip of SRAM to get 1M of memory. Then a D/A and a couple of op amps, you can get about 45 seconds of record time.
However it is much more complicated to play back and record at the same time but it can be done.

I think the other hard part is recording in a circle, so there is always 'the last 30 seconds' is recorded.
The more I think about this, the more it gets complicated; and the more out of comfort zone it becomes. I have some reading to do. I have seen "spy pens" that record, and will record 'the last hour of conversation'; maybe i can adapt something else .
thanks.

daveyjones:
I think the other hard part is recording in a circle, so there is always 'the last 30 seconds' is recorded.

No that is trivial.

You have an area of memory, external in this case, as your buffer.
You have one pointer that indicates the input point, where you store your samples and another output point where you take the samples from. Each pointer wraps round to the start of the buffer when it reaches the limit of the buffer. The last x seconds is simply all the samples between the two pointers.

it does sound simple enough.

daveyjones, you can achieve your project using the Audio Hacker shield. It has 256K of SRAM and can record/playback at the same time. Recording duration depends on the sample rate and bit depth you choose, but you can do over 30 seconds with 8KHz sample rate and 8bit depth. Not the best quality but serviceable. If you are willing to settle for 15 seconds of record time, then 12KHz rate with 12 bit audio sounds better. There is a table that summarizes the recording times for different parameters.

Your project would be a simple variation on the 12-bit sampler example sketch.

See all product details here

nootropic -- that sounds even simplier! Would certainly get me going. There is a certain amount of fun in learning how to do things; but then there is "not reinventing the wheel" -- a balancing act. I will give this careful consideration -- thank you. (I mean that)