Skip to content

nrf: assign channel width and count correctly #2324

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Nov 26, 2019

Conversation

jepler
Copy link

@jepler jepler commented Nov 25, 2019

Here's a last round of nrf i2s bugfixes. I think that together these address everything reported in #2255, except for the MAXIM I2S DAC's 8-bit hardware limitation recorded in #2323 for future action

The meaning of the "single channel" parameter is not well-documented,
but in fact it seems that "true" must be passed or else the returned
channel_count is always 1.  This caused stereo samples to be played
incorrectly.
The sample width register was never set, so all samples were played
as though they were 16 bit.

After this change, 8-bit samples no longer produce audio on the MAX 98357A
BOB, because only 16-, 24-, and 32-bit samples are supported by the
hardware.  This will be addressed by a future change to pad samples to
16 bits; see adafruit#2323 and the 98357A datasheet page 6.
@tannewt tannewt self-requested a review November 26, 2019 00:47
Copy link
Member

@tannewt tannewt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me! Thanks!

@tannewt tannewt merged commit e5dd78d into adafruit:master Nov 26, 2019
@jepler jepler deleted the nrf-i2s-channels-widths branch November 3, 2021 21:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants