File.read() has the potential to return -1. I experience this with cheaper SD Cards.
In the case of returning -1, File.read() will continue to return the same bytes but never advance the position in the file.
This causes an infinite loop inside of Adafruit_VS1053_FilePlayer::feedBuffer_noLock where the VS1053 is always ready for data because it's not receiving any.
File.read()
has the potential to return -1. I experience this with cheaper SD Cards.In the case of returning -1,
File.read()
will continue to return the same bytes but never advance the position in the file.This causes an infinite loop inside of
Adafruit_VS1053_FilePlayer::feedBuffer_noLock
where the VS1053 is always ready for data because it's not receiving any.