Audio recorder module needed, any ideas ?

Buzby

Senior Member
Hi All,

I'm sure you've all seen those talk-back parrot toys which repeat whatever phrase they hear. I've got one, and want to add a bit of extra functionality to it. I want to be able to trigger a few pre-recorded phrases, as well as keeping the basic talk-back action.

When I opened the parrot, you can see that the PCB has a chip labelled TR16F064B. A quick bit of Googling, and I found the datasheet : http://www.chipsourcetek.com/Uploads/file/20161126152116_4969.pdf

The chip is not a simple record-playback device, it's a re-programmable microcontroller with special features for audio processing. It maybe possible to locate some development software for it, and re-program it to do what I want. However, even in lockdown, I don't think this is a viable option.

More likely is that I will find a seperate record-playback device that can store multiple phrases, then use a PICAXE to integrate it into my parrot.

Has anyone any ideas about which device I should use ?. There seems to be hundreds to choose from, but not much data about them.

Cheers,

Buzby

23806
 

hippy

Technical Support
Staff member
Recording and playing that back is a pretty simple application; ADC to memory buffer, then memory buffer to DAC or PWM. The main thing is having the memory to record long enough, a fast enough sampling rate to deliver desired quality.

One can even forgo the ADC and use a comparator and one-bit recording. That does work with a PICAXE but is low quality. If you want to start playing in that field, it's best to start with just playback. Processing a WAV file on a PC to give the bit-stream and churn that out. The 28X2 has 1KB of Scratchpad and that gives one second of playback at 8kHz one-bit sampling rates. An external I2C Eeprom would give extra storage.

It was 'okayish' for what I had when I played some time ago but I didn't do much with that.

For what you want, it may be easiest to just hook a PICAXE up to the IC, determine when it's playing back, mute it's input when done, trigger an MP3 player module for your additional sound output.

I can't see that modifying the IC's code would help much as it has only limited internal memory. The only thing you probably could achieve is a better indication of playing and when playback has ended. Might be worth probing the pins in case that's already available. It does however support SPI Flash so that perhaps could be added.

There are other record-playback chips out there which may be worth investigating. ISD1810 etc.

An alternative is to use a PC or cheap SBC which has microphone input ( perhaps via USB ) and audio output, has all the tools one needs for processing speech with enough resources to do what is desired.
 

Buzby

Senior Member
Recording and playing that back is a pretty simple application; ADC to memory buffer, then memory buffer to DAC or PWM. ... One can even forgo the ADC and use a comparator and one-bit recording. It was 'okayish' for what I had when I played some time ago but I didn't do much with that.
Yeah, been there, done that. That's why I'm going down the dedicated chip route !.

I can't see that modifying the IC's code would help much as it has only limited internal memory.
I don't think it would be case of modifying the existing code as it's very unlikely it can be uploaded. I would probably have to write the code from scratch, on an unfamiliar chip, with a chinese IDE, and no forum support.

There are other record-playback chips out there which may be worth investigating. ISD1810 etc.
Now this is more like what I'm after.

The ISD1810 appears to only hold 1 track, or multiple tracks played one after the other. My requirement is to play any track at any time. The track must also be recordable using the existing microphone, not preset using a PC. An SBC might do the job, but it needs to fit in the parrot !.

Does anyone know of a module that handles multiple talk-back tracks ?.

Cheers,

Buzby
 

tmfkam

Senior Member
Try this: http://www.vlsi.fi/en/products/vsmd301.html

These can record to internal memory or (potentially) uSD cards. They are programmable, have a free IDE for writing those programs (in a "C" type language from memory) and are about the size of an arduino Nano 42mm x 19mm (approx). They are not terribly expensive, and if you have an electronic design business that can justify a case well enough, free samples are available.

I very nearly used them in our products but as the uSD and USB terminals were not available as external connections it meant designing my own PCB. I did get that done, and was ready to get the boards made when I discovered the SPE035. As it had external USB I used that instead. I'd written the code for the VLSI module too.
 

1968neil

Senior Member
The SPE035 solves all your problems and is probably cheaper than the parts alone.... I use these in all sorts of projects and have yet to have a problem. There are some great guides and conversations in the forums to help you work out the gremlins..

Regards
Neil
 

Buzby

Senior Member
Hi Neil,

Does the SPE035 allow recording on-the-fly using a microphone ?.

My understanding was that it needed .wav or .mpg already on the SD card.

Have I missed something ?

Cheers,

Buzby
 

premelec

Senior Member
You have it right - however perhaps clarify if you want almost instant record / playback like a parrot or you can work with delay and fiddling a bit between recording something and it being played back... and how many seconds of audio you need and or slots of different audio.
 

hippy

Technical Support
Staff member
The ISD1810 appears to only hold 1 track, or multiple tracks played one after the other. My requirement is to play any track at any time. The track must also be recordable using the existing microphone, not preset using a PC. An SBC might do the job, but it needs to fit in the parrot !.
So you want to record everything said to the parrot as separate tracks, and then be able to play back any of those tracks ?

I can't imagine that anything but an SBC will be able to do that job.

A mic and speaker connection via bluetooth may suit fitting within the parrot allowing the SBC to be remote from it.

A more traditional audio radio transceiver, an old PMR handset or walkie-talkie, might do the job.

Perhaps have a look at those toys considered a privacy risk for children which are easy to hijack.
 

Buzby

Senior Member
... A mic and speaker connection via bluetooth may suit fitting within the parrot allowing the SBC to be remote from it.
This idea occured to me as well. Use a smartphone with a simple app to record the four preset messages, then send them via BT to a reciever, with a PICAXE to interupt the normal 'talk back' of the parrot.

The gist of what I'm after is a parrot that does 'talk back', but can also be triggered to speak a few preset messages which have been recorded 'locally', i.e not requiring a PC.

This is turning out to be a real can of worms, I wish I'd never said I could build one :(
 

premelec

Senior Member
For short delay repeat there was [is?] the bucket brigade IC - an analog delay line... also Roman Black's 1 bit audio with a lot of bits could work perhaps of sufficient quality... pre-recorded would be another chip... good luck... Also there were various short tape loop mechanisms or magnetic drums used in the audio realm...
 
Last edited:

1968neil

Senior Member
Hi Neil,

Does the SPE035 allow recording on-the-fly using a microphone ?.

My understanding was that it needed .wav or .mpg already on the SD card.

Have I missed something ?

Cheers,

Buzby
No it doesn't i'm afraid, Playback only ..
I misunderstood the original post.
Great little module tho :)

Regards
Neil
 

tmfkam

Senior Member
The ISD1932 can hold a number of tracks. It seems to be out of stock at SparkFun, but you might find stock somewhere? It has the ability to trigger direct playback of specific tracks too. Someone made a "magic 8 ball" with a PicAxe which may be detailed on this forum?
 

tmfkam

Senior Member
Not sure if this idea has been shelved, but... Whilst browsing a very popular Chinese Online Marketplace, I saw that there are a lot of ISD1760 modules available. These can record, and playback. The playback and recording of the ISD1760 can be controlled using an SPI interface meaning it could be controlled from a PicAxe. The 1760 can record a total of 120 seconds of audio at 4kHz sample rate, or 40 seconds at 12kHz. Memory to be recorded to can be set using the SPI, and then recording started. For "preset" messages there is an auxiliary input that could be used to record from higher quality sources.

Searching AliExpress for "ISD1760 Voice Module" turned up loads. The current price is from about £3.50 including P&P for a PCB complete with ISD1760 chip and microphone. A speaker can be directly driven by the chip.

Data sheet for the ISD1760 found here: https://www.elecrow.com/download/ISD17600 Series datasheet.pdf
Instructions for the SPI interface found here: http://www.microtechnica.tv/support/manual/ISD1700_Design_Guide.pdf
 

Chris Kelly

Well-known member
Keeping a keen eye on this thread :)

I've been tinkering with the ISD1820 myself lately. Looking forward to seeing what you come up with Buzby!
 
Top