I've used the VS1053 on a couple of projects so far and its been fantastic. I'm now trying to use it with the Arduino MKR Zero and Adafruits Max98375A breakout board over I2S. I've had the amplifier working over I2S directly from the Arduino MKR Zero following online tutorials. Adafruit have a few tutorials on using I2S but unfortunately none on how to use I2S with the VS1053 and Arduino. I've never worked with writing directly to specific registers before so I'm now a bit lost.
The datasheet states that to enable I2S i need to......
"To enable I2S first write 0xc017 to SCI WRAMADDR and 0xf3 to SCI WRAM, then write 0xc040 to SCI WRAMADDR and 0x0c to SCI WRAM."
So using the Adafruit VS1053 library and player_simple example, I've come up with this during setup........
musicPlayer.sciWrite(VS1053_REG_WRAMADDR, 0xc017); musicPlayer.sciWrite(VS1053_REG_WRAM, 0xf3); musicPlayer.sciWrite(VS1053_REG_WRAMADDR, 0xc040); musicPlayer.sciWrite(VS1053_REG_WRAM, 0x0C);
Unfortunately i can't for the life of me get any audio out of the VS1053 over I2S.
I'm certain I'm doing something wrong, i just can't figure out what.
Any advice on getting I2S working on the VS1053 and perhaps some register tutorial recommendations would be greatly appreciated.