I've got an application that reads MP3 files from an SD card, decodes them and outputs audio data to a codec via I2S. The codec is clocked by MCLK generated by the nRF. The boards do not have a 32768 Hz crystal. The 32 MHz crystal is present. NRF_SDH_CLOCK_LF_SRC
is set to 0, NRF_SDH_CLOCK_LF_ACCURACY
is 1. SDK is 15.3.0, softdevice is S132 6.1.1.
I've noticed something I've never seen before, namely that the clock frequency keeps changing every couple seconds:
- The UART used by nrf_log is configured for 115200 bps but the speed randomly changes to 125000 bps and back. This results in portions of output in my terminal emulator being garbage.
- A blinking LED noticeably changes frequency.
- Most strikingly, the pitch of the audio being played changes concurrently with the LED.
I've got 6 prototype boards, some of them have rev. 1 (nRF25832-QFAAB0), others have rev. 2 QFAAE0. The problem is present on all 6 boards.
Any advice will be appreciated.