Baike.dev
All toolsAI codingTrendingOpen sourceNewsSubmit
Log in
Back to tool/Back to issues
#6929·embassy

embassy-nrf: I2S range checking is incorrect for some chips

Author: datdenkiknietCreated Sep 2, 2026Updated Sep 2, 2026

I (with the help of an LLM) found two oddities in the I2S range checking:

  1. The I2S.RXTXD.MAXCNT register represents 32-bit words on chips like the nrf52833, but it represents bytes on chips like the nrfl54l10. This means that only a quarter of the transmission is sent/received on some parts.
  2. I2S.RXTXD generally has a maximum value less than 0xFF_FF (e.g. nrf52833 supports 0x3F_FF), but the calculation compares the value that will end up being RXTXD to EASY_DMA_SIZE which is 0xFF_FF on most chips that support I2S.

Source: embassy-rs/embassy

View original on GitHubView discussion on GitHub