Basic 8 bit digital audio sampling - Page 1
Forum section: electronics / general

author: jonovid
author_rank: Super Contributor
timestamp: October 20, 2019, 07:47:41 am
content: does anybody know of a single chip hardware audio sampling solution?without a lot of hard core programming of a microcontroller.if there is a simple way to do this.for basic 8 bit digital audio sampling. from an analog audio input to a analog output.using sram memory. not flash as this has a cycle limitI have looked at the PT2399 echo/ delay ic but this chip has no hold modeor way of holding the delay sample in memory.also looked at single chip greeting card voice recorders, but they are flash memoryand are not designd for repetitive audio re-sampling.the Casio SK-1 sampling keyboard has sram type of 8 bit digital audio samplingI am seeking.however I do not need a whole keyboard pcb . just a single ic iftheir is one out there? audio sampling hardware in a chip.the ic must have digital audio sampling from 1 to 5 secondswith full control of clock sampling & playback times. so it can be used for basic audio sampling.have a analog in/output without external microcontroller or other chips to make it run.also I have looked at hacking/modding early model 16bit CD player electronics. hoping to add some sram memoryand a ADC but it looks way too complected.

author: ebclr
author_rank: Super Contributor
timestamp: October 20, 2019, 09:06:48 am
content: Is not exactly, but can be betterhttp://kazus.ru/datasheets/pdf-data/3547968/PANASONIC/MN3205.html

author: Yansi
author_rank: Super Contributor
timestamp: October 20, 2019, 09:16:26 am
content: What hardcore programming are we talking about? Connecting a modern I2S capable audio codec to an I2S equipped MCU is trivial.But if you that much want 8 bits, what about ADC0804? (have been used in simple audio projects numerous times...)

author: SiliconWizard
author_rank: Super Contributor
timestamp: October 20, 2019, 03:58:16 pm
content: There are such ICs, which are nowadays typically used for greeting cards for instance. Look up the ISD1800 series for instance:http://www.nuvoton.com/hq/products/isd-voice-ics/isd-chipcorder-family/mls-chipcorder-series/isd1806/?__locale=enCan be bought on Aliexpress for instance.Of course sound quality is meh, but you're asking for 8-bit, so...

author: Yansi
author_rank: Super Contributor
timestamp: October 20, 2019, 05:22:01 pm
content: Those chips are not 8bit. They probably some kind of 1bit pulse-density modulation crap.8-bit sampled audio sounds miles better than these chips.

author: cloudscapes
author_rank: Regular Contributor
timestamp: October 20, 2019, 06:48:45 pm
content: You mention no "hard core micro programming" but will any simpler microcontroller programming do? With an arduino/teensy, this task is pretty doable.I don't think you're getting a single chip solution that can loop audio (without degradation, like with a pt2399 in a feedback loop) without some programming. Especially if you've already looked at flash recorders.

author: jonovid
author_rank: Super Contributor
timestamp: October 20, 2019, 06:56:05 pm
content: yes I know this one. got a bag of them off aliexpressthank you for getting a true datasheet on the ISD1800 the that is not just a user guide as most are .I am familiar with the ISD1800 greeting card voice recorder. now that I now know its full name!the problem with this unitcan not crank up the clock for less then 6 sec pushing the 1k limit on the ROSC & XCLK if it has this pinfor the highest sound quality. in the shortest sampling time.ISD1800 uses flash memory, so is only 100,000 timeslack of other control pins on the ISD1800.I may force this cheap crappy thing to do the job. in my projectby using multiple ISD1800's at the same time. held in bondage by an arduino slavemaster.driving 1 or 2 CD4066BCN.& so programming of a microcontroller maybe unavoidable. single-chip solution fail!Quote from: Yansi on October 20, 2019, 09:16:26 amI may reconsider 16 bit in the future when Iam done with the whole lo-fi 8-bit project thingQuote from: Yansi on October 20, 2019, 05:22:01 pmok I will& use the bag of ISD1800 I have, by bending to get the best sound out of them . allowing for fatalities

author: nctnico
author_rank: Super Contributor
timestamp: October 20, 2019, 07:17:15 pm
content: You can do this with a simple microcontroller. A 10 or 12 bit ADC and 32kB SRAM are enough to store samples at a samplerate of 6kHz if you use ulaw dynamics compression (which is also used for telephones). The algorithm is a few bit shifts. For output you can use PWM modulation.

author: SiliconWizard
author_rank: Super Contributor
timestamp: October 20, 2019, 09:25:30 pm
content: Quote from: jonovid on October 20, 2019, 06:56:05 pmOh those are certainly kind of mediocre, but you get what you pay for. Extremely cheap by quantities. You didn't really say what your end application was, so they may be perfectly usable. Or not...Also, they are only available as naked die AFAIK, so if you're going to design your own boards, that may be a problem. That could be justified only if you go for very large quantities. Or you'd stick to ready-made breakout boards, not very scalable as far as production goes...Of course one way to do this would be to use an MCU. Will require a bit more work, and will not be as cheap, but will be a lot more flexible.Sampling 8-bit data (with an embedded ADC) at, say, 16kHz, would give you much better sound quality, and would be doable with many MCUs. If you don't implement any kind of compression, that would require 80KBytes for 5s. You won't get that with low-end MCUs; you'd need something a bit beefier, that'll cost in the order of a few dollars. I don't know what your price goal is. You could of course implement some compression to make use of less available RAM. That won't be as cheap as the above, but certainly not expensive and not hard to do.As an example, you could choose something in the STM32L4 line. Some have embedded ADCs, DACs, and opamps, and 128KB of RAM or more, so you could definitely design your solution around that with minimal part count and no need for compression. They are also very low power. Check out the STM32L452CC for instance.This certainly wouldn't require "hardcore" programming. But you must be familiar with programming MCUs.

author: jonovid
author_rank: Super Contributor
timestamp: October 20, 2019, 11:43:56 pm
content: Quotefrom what your all saying here, its a microcontroller project.with no easy shortcuts.I was hoping to find an undiscovered ic that was made for this type of sampling.so I could just add it in to an all analog lo-fi music synthesizer project.that is a portable music hardware in a box. a poor mans OP-1 all-in-one portable.similar to the Casio SK-1 sampling keyboard. a DIY box with buttons and knobs.looking at other peoples work,many online DIY projects that use true digital sampling, as in many fx guitar pedals, all use programmable gate array DAC ADC.a project with this is a but more than I expected. a lot more research is needed before starting this one.

author: SiliconWizard
author_rank: Super Contributor
timestamp: October 21, 2019, 12:32:45 am
content: Unfortunately, all the simple one-chip solutions I know are all like the ISD1800, pretty much. Usually very simple delta modulation, and very mediocre sound. I don't think this would cut it for a synthesizer project, even if it's meant to be lo-fi (unless you particularly like the sound you get out of them).It may sound intimidating to do this on an MCU if you've never used one before, but from your project description (it's going to have buttons and knobs...), it would be much easier to do this properly with an MCU. The added benefit is that you could also use 12-bit sampling as it's the native sample width of the ADC/DAC of the above MCU. Actually many earlier digital synths were using 12-bit sampling and they didn't sound bad.I don't really know of any easy way out. Any chip that you're going to find these days will be either very limited, or will have to be programmed from an external processor anyway...

author: rs20
author_rank: Super Contributor
timestamp: October 21, 2019, 02:45:01 am
content: +1, I endorse everything said by SiliconWizard above.Quote from: jonovid on October 20, 2019, 11:43:56 pmUsing a microcontrolleristhe easy shortcut! For example, here is just one possible approach for playing a pre-determined sound:Use a STM32-based devboard (Discovery or Nucleo series)Use the STM32CubeMX software, click a bunch of buttons saying you want to use the DAC etc, click a button saying "generate project" which will generate an empty project complete with source code initializing all the relevant peripherals, and handy library functions for using them.Then adding 10-20 lines of code could make a predetermined sound play in response to a button press.I, and I'm sure many others, would be happy to help with any and all of these steps.And any more complex functionality would absolutely be much more easily expressed in code than in hardware. (Except "difficulty" is a subjective thing, so IsupposeYMMV).Side note: it makes no sense that this is under "General chat". This is absolutely technical.

author: hamster_nz
author_rank: Super Contributor
timestamp: October 21, 2019, 06:41:03 am
content: It may or may not be of interest, but cheap I2S microphones exist, that might be of use for part of the solution :https://www.seeedstudio.com/Sipeed-I2S-Mic-for-MAIX-Dev-Boards-p-2887.htmlThe other minimal-effort hardware option is a Raspberry Pi Zero with an audio codec.https://www.tindie.com/products/kuupaz/fe-pi-audio-z-v2/If you don't want the 'fun' utility, and power use of having Linux, you could always use such a board with a custom microcontroller breakout board, saving a lot of time, risk, complexity and effort.Coupled to that codec, a cheap ESP32 module could do the job (and more) with ease.

author: jonovid
author_rank: Super Contributor
timestamp: October 21, 2019, 11:26:50 pm
content: thank you all .......I now have a better idea of what is needed to put basic 8 bit or more digital audio sampling hardware in a portable box, that is independent of my PC / FL Studio - software sampling , game music .esc!poor spellingicis meant to be IC integrated circuit