adafruit / Adafruit_VS1053_Library

This is a Arduino library for the Adafruit VS1053 Codec Breakout and Music Maker Shields
https://www.adafruit.com/products/1381
135 stars 113 forks source link

Support for differential Output #28

Open TheNitek opened 7 years ago

TheNitek commented 7 years ago

I was trying to make the differential Output work by loading the current patch for the VS1053 and using the following settings afterwards:

  // Enable Mono Output
  musicPlayer.sciWrite(VS1053_REG_WRAMADDR, 0x1e09);
  musicPlayer.sciWrite(VS1053_REG_WRAM, 0x0001);

  // Enable differential output
  uint16_t mode = VS1053_MODE_SM_DIFF | VS1053_MODE_SM_SDINEW;
  musicPlayer.sciWrite(VS1053_REG_MODE, mode);

Unfortunately this didn't work and took me quite a while to realize that startPlayingFile is doing

  // reset playback
  sciWrite(VS1053_REG_MODE, VS1053_MODE_SM_LINE1 | VS1053_MODE_SM_SDINEW);

Is there a reason for this? IMHO startPlayingFile shouldn't mess with the MODE register.