Skip to content

Commit 5ab19e9

Browse files
Fix I2S timing (#728)
BCLK was running at 50% of expected speed. Fixes #714
1 parent 82abc76 commit 5ab19e9

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

libraries/I2S/src/I2S.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ bool I2S::setBuffers(size_t buffers, size_t bufferWords, int32_t silenceSample)
7878
bool I2S::setFrequency(int newFreq) {
7979
_freq = newFreq;
8080
if (_running) {
81-
float bitClk = _freq * _bps * 2.0;
81+
float bitClk = _freq * _bps * 2.0 /* channels */ * 2.0 /* edges per clock */;
8282
pio_sm_set_clkdiv(_pio, _sm, (float)clock_get_hz(clk_sys) / bitClk);
8383
}
8484
return true;

0 commit comments

Comments
 (0)