New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
I2S Audio not fully working (devel branch) #21205
Comments
Will investigate in a couple of days |
Meanwhile @rug1024 could try the following things (with
|
On executing i2srec the device instantly crashed and does not reboot anymore. |
Okay, I have found my INMP441 and could fix the crashes with |
Can you guys describe your configuration (especially template) when the crash happens? Also the output of command |
The crashes in
The i2sstream does not start the mic at the moment and crashes without starting it by hand with But I still only get garbage MP3 data from the encoder ... which I do not understand yet. |
After more bugfixing I have the driver working including MP3 streaming, but the INMP441 is a special animal, that seems to need an unusual I2S configuration. ATM this microphone produces garbled/distorted sound, but at least it works somehow. I have found more infos in other projects, but need to test this myself. The good thing is, that the new driver is very flexible and can be extented quite easily to reflect very different configurations with one firmware image. You can already exchange the connected microphone (i.e. from Standard to PDM), reconfigure it and use it without reflashing the ESP32. |
Great news! Thanks for the effort! |
Interesting point about the different behavior of different SOC's. I will have to check this too as currently the INMP441 is connected to a S3. In theory it should not matter, but I would not be too surprised to find the same. My PDM micro is a cheap clone of this: But is not extensively tested by me so far. Initial impression is good. |
INMP441 works here now for MP3 audio recording and streaming on the S3 without distortion and the expected (mediocre) sound quality. Please allow some time for testing and code refactoring as we need some new variables in the driver setting. |
Great news! Ordered myself 2 of these PDM Mics for testing (like the JST-SH plug). |
@Staars |
Current state of changes here: There are more refactoring steps ahead, but with the next PR I would like to change as few things as possible.
Out of the box this should work with an PDM microphone.
|
Forget the current docs, the aim for the new driver was to configure "everything" at runtime. So things like PDM, left/right, mono/stereo, ... do not need a different firmware. You will be even able to swap out the microphone to a total different type later or back and forth without reflashing. |
I tried to compile with Gitpod using your fork, unfortunately this does not work very well. |
Then please head over to Discord and find me there or use Tasmotas compiling-development channel. |
Tested with M5stack core 2 and i2rec works. saytime does work too. |
@Staars Can we close this? Everything I tested is working. |
i currently focus on other things, but after a short test on 2 esp32s3 devices i2splay does only produce some noise while it works on an esp32. i2ssay and i2stime works on all devices, so the i2s channel seems to be ok. i have a couple of problems with core 3 with several devices such that i will stay at core2 for some more weeks. |
@gemu2015 not related to i2s but parallel display do work with core 3.0.0 and uDisplay driver. EDIT: RGB Display is working. Don't have a parallel display to test. |
Unfortunately I don't have any PAR8/PAR16 display... So I can't help |
I was trying to get I2S audio to work with small 8Ω speaker connected to a board having a MAX98357A. Configured the I2S gpios for BCLK, WS and DOUT to match, and left the SD and GAIN pins unconnected, as indicated on the external DAC wiring suggestions in the docs. The board schematics indicate that GAIN is pulled down, and SD connected directly to the ESP32-S3, no pull-up/down, so unconfigured would be floating. No luck with commands As MAX98357A specs says that SD_MODE pulled low means shutdown, I decided to config the ESP32-S3 pin as Not knowing much about I2S audio, I'm wondering if this suggestion should just be made part of the docs, or if there are complications needing extra considerations. |
@sfromis imho mentioning |
Did a small test getting a WebRadio MP3 stream to play. Got a few seconds of garbled sound first, but then normal audio. Next step was interrupting it with the command
Last message in a loop until I killed it (power off). First set of time stamps from my terminal program. (Found how to stop the stream, just the command |
Follow up of #16074 (reply in thread)
Did some short tests.- I2S micro not working (INMP441)- mp3 stream not workingCrahes happened too.EDIT: Working now with ESP32. ESP32-S3 i2s play issue left.
Migration status: Completed. S3 was not supported before.
@s-hadinger @gemu2015
The text was updated successfully, but these errors were encountered: