feelfreelinux / cspot

A Spotify Connect player targeting, but not limited to embedded devices (ESP32).
Other
473 stars 43 forks source link

Codec Development for ES8311 (LyraT-Mini) #79

Open Timvrakas opened 2 years ago

Timvrakas commented 2 years ago

I have a LyraT-Mini V1.2, for which I can develop working examples from https://github.com/espressif/esp-adf I'd like to get it cspot working, but I haven't worked with audio codecs or I2S before, so I'm not sure where to start.

The board/pin definitions are here The chip-level driver is here

I'm not sure how to integrate this with cspot. If these libraries are functional, should I try using them directly, and use the existing BufferedAudioSink -> i2s_write() that exists?

I changed the AC101 pins and i2c address, and the board puts out a soft clicking noise, but no meaningful sound.

Timvrakas commented 2 years ago

See #80

feelfreelinux commented 2 years ago

Hi! Thanks a lot for developing this further! You should implement the driver by adding the https://github.com/espressif/esp-adf/blob/master/components/audio_hal/driver/es8311/es8311.c driver into cspot / targets / esp32 and call proper initialization and volume change methods from a new audio sink. See AC101AudioSink for reference. About the clicking sound after each chunks - I'm currently working on it, please disable MBEDTLS hardware acceleration to fix it for yourself too :)

Feel free to reach out to me on telegram / discord / matrix (ESP32_Audio channel). I'd love to help out!

feelfreelinux commented 2 years ago

Received a ES8311 board, will write a driver soon