Recommend audio chip for spot sound effects?

I have a tentative request from a client to add sound effects to a vending machine application. It would be about half a dozen sound effects in the 1s ballpark, and perhaps two sound effects in the 10s ballpark. Doesn't have to be field-upgradable. I want something equivalent to roughly 11.025kHz 8-bit PCM (5-bit ADPCM would be fine).

My options seem to be:

  • EPROM with raw sample data, reloadable counter with 11025Hz clock source, and DAC.
  • ISD chips. Kinda expensive (especially to get factory-programmed) and the audio quality is variable.
  • ISTR from my arcade machine days a range of ADPCM parts from Oki; they were typically controlled by an 8-bit micro and read sample data right out of a dedicated EPROM. Can't find these parts any more though.

I can't spend much CPU time on this because the whole machine is controlled by an ATmega32L running at 1MHz and I can't afford such a fast timer; it would interfere with my other processes. The solution needs to be primarily hardware.

Has anyone faced and solved this problem in a simple way? Volumes are very low; maybe a couple of thousand over two years. And it's not a fersure thing so I would rather have off-the-shelf parts (with an EPROM or flash chip I can burn myself) than some custom-programmed part.

Yes (this note to Guy Macon :) I have considered masked toy parts but I don't like the MOQ.

Reply to
larwe
Loading thread data ...

Get one of the later Cypress PSOC parts, and have the samples stored in the FLASH on it. Has the DACs, opamps, and all the other stuff you need on chip...

--
Charlie
--
 Click to see the full signature
Reply to
Charles Edmondson

in

need

We're talking approximately 20 seconds of audio at 11025kHz. Assuming

5-bit ADPCM, that's (5/8) * 20 * 11025 bytes = 137812.5Kbytes of flash space. The largest PSoC I see is 32Kbytes.
Reply to
larwe

11025kHz? Why such a high sample frequence? oh, wait, 11kHz, still a little high. I usually just use 8kHz.

but yeah, you usually add in a DataFLASH, say a 4meg or larger part for the sample storage. You need the later PSoCs to have the RAM for the data buffers.

--
Charlie
--
 Click to see the full signature
Reply to
Charles Edmondson

If the sound effects can handle a little loss of precision, do a little ADPCM in the processor and save a lot in storage space. That is what the OKI chips he has seen on the arcade games do. As long as you can snag the samples and process them fast enough.

Reply to
James Beck

Hello Lewin,

A long time ago I was looking for something similar. I cannot remember the company but there was one in Asia that did pretty much nothing but sound recording and playback chips of different sizes. Maybe some Google searching could find that.

Also, look at what retailers such as Digikey have. I vaguely remember that you could buy these chips at one of these places, too.

Regards, Joerg

formatting link

Reply to
Joerg

Look into the recorder chips at:

formatting link

Their chips come in many recording lengths. You can address many record/playback segments in the chips memory. I've used them, and think they would work for your application. I used a simple diode AND'ing matrix to allow single switchs or transistors to output each 8 bit address.

Reply to
Ken Moffett

and

That's ISD (Winbond acquired ISD a while ago). The audio quality is questionable on those, and preprogramming them is difficult.

Reply to
larwe

skrev i meddelandet news: snipped-for-privacy@l41g2000cwc.googlegroups.com...

There is an AVR application note on how to use AVR + Dataflash for sound recording and playback. This uses 8 kHz sampling frequency. The speaker circuit consists of a 5th order low-pass Chebychev filter and a unary gain

amplifier. so you needs some external LM324s.

AVR335: Digital Sound Recorder with AVR and DataFlash (29 pages, revision B, updated 01/04) This Application Note describes how to record, store and play back sound using any AVR MCU with A/D converter, the AT45DB161 DataFlash memory and a few extra components

formatting link
formatting link

-- Best Regards, Ulf Samuelsson snipped-for-privacy@a-t-m-e-l.com

This message is intended to be my own personal view and it may or may not be shared by my employer Atmel Nordic AB

Reply to
Ulf Samuelsson

You can also check out chips from A-Plus, a Taiwanese company. They are equivalent to the ISD chips in quality and difficulty of programming, but they are much cheaper.

formatting link

Alex Parkinson

Reply to
Alex Parkinson

no problem for ATmega128; leave out ADPCM and make a tandem SPI serial Flash ( ST's M25P40) + SPI serial DAC.

r.

>
Reply to
Raivo Leini

Hi,

I've been adding sound/speech to my projects lately using 512k eeproms. They sell for about $3.10 each and can record 8 bits at 8khz for 8 seconds.

Read them with a PIC and send output to MCP41010 ($1.29 programable potentiometer used as cheap 8 bit d/a).

--
Luhan Monat (luhanis 'at' yahoo 'dot' com)
"The future is not what it used to be..."
 Click to see the full signature
Reply to
Luhan Monat

There is another option:

Take any cheap microcontroller, and implement an FM synthesiser. With few control words you can generate a lot of 80s style sound effects. CODE+DATA plus PWM output should be possible on any vanilla 8-pin micro (PIC/AVR/etc).

Reply to
jetmarc

I am using a OKI audio part, the MSM9842

from their pdf on the part:

FEATURES ? 16/8-bit bus interface support ? FIFO capacity: 1024 bits (buffering time of 32 ms when using 8 kHz sampling frequency, 4-bit ADPCM2/ADPCM, and in monaural playback) ? Supports four compression algorithms for playback:

4, 5, 6, 7, 8-bit ADPCM2; 4-bit ADPCM; 8, 16-bit PCM; and 8-bit OKI Nonlinear PCM ? Sampling frequency: 4.0 kHz, 6.4 kHz, 8.0 kHz, 12.8 kHz, 16.0 kHz, 32.0 kHz (fOSC = 4.096 MHz) ? Sampling frequency: 22.05 kHz, 44.1 kHz (fOSC = 5.6448 MHz) ? DMA interface support ? Volume control (8 steps: 0 to ?21 dB, 3 dB step) ? Built-in 14-bit D/A converter ? Built-in low pass filter (LPF) : digital filter ? Power supply voltage: 2.7 to 5.5 V ? Package: 56-pin plastic QFP (QFP56-P-910-0.65-2K) (Product name: MSM9842GA)

1 second 4 bit adpcm sounds seem to take about 3k-4k bytes. at 8K samples per second. Not HIFI but ok and understandable speech. I don't know what they cost, ask a h/w guy.

The worst thing is their "audio sampling kit" it is expensive and doesn't work very well. All I want is to take 44100 HZ samples and convert them for my program, oh well. Round Tuit time I will try SOX on one of my old Linux systems and see if the chip likes it, that would be ideal instead of a windows usb dongle thing. Their kit does take samples and convert them, but the usb dongle has to be attached for the program to run.

Good Luck, ~Steve

Reply to
Steve Calfee

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.