Copyright © https://mongoose-os.com

Mongoose OS Forum

frame
ATTENTION! This forum has moved to:

https://community.mongoose-os.com

Do not post any new messages.

I got some trouble to use mic sound module with ADC1 channel(ex:GPIO32)...

I tested the sound module(max9814) with mic on arduino's env.. beaceuse I needed some library(https://github.com/arjo129/uSpeech) with this mic sound module(max9814).
When I test the module using the uSpeech library on arduino, I got some right tunning values (threshold and etc) according to debug_uSpeech app(the tuning app such as file type .ino on arduino env.) for the library to provide and guide on wiki(https://github.com/arjo129/uSpeech/wiki).

Then I ported the library and the debug_uSpeech app to mongoose os based on esp32 module and I succeeded to get some variable analog adc values from the mic sensor module.

But I coudn't get some right tuning values on mongoose os env.. because I was not able to see the definite different values according to tuning items from the ported debug_uSpeech app. Anyway, when I say some sounds into the mic, from analog adc to the values for uSpeech lib. to guide did not seem to variate differently definitely. So I was not tune it and get some tuning values such as threshold.

Let me know what it is the cause of the problem. In addition, I used the one of the adc1 channels on eps32.

Comments

  • In addition, the repo where I ported uSpeech lib. to mongoose os app is here.(https://github.com/HotCodeworker/mongoose-os-uSpeech-Ported)
    please, any advice!

  • mamuespmamuesp Germany/Northern coast

    in my personal experience the ESP32 ADC has it flaws and I had problems to get an audio level meter function work. So I switched to an external module like ADS1115/1015 to get the level of the microfone measured in my ESP32 (over I2C). But with this solution you only may measure a certain level of the audio signal, it's not fast enough to get a bunch of samples to analyze it in a useable manner like e.g. FFT. When looking for useable speech recognition, it makes more sense to record and pre-analyze the data with a more audio signal processing capable device like the Teensy for example. Then you may read this data via I2C/SPI/UART in the ESP32 and process it.

  • Thank for your advice and I shall change another speech library to use on esp32 and please let me know about another speech recognition solutoin using mic sound module.

  • mamuespmamuesp Germany/Northern coast

    The speech library itself is not the problem, but a "solution" like this will get very poor audio data and will need the whole systems performance - so detecting pressed buttons or receiving MQTT messages or similar actions/events won't come through. That's why I propose to collect and (pre-)process the data with a device which is designed for this feature, and pass the results to the ESP32 for further processing. Perhaps you may even adapt µSpeech to this architecture.

Sign In or Register to comment.