Skip to content

[i2s_audio] Expose slot_bit_width to speaker YAML configuration#6731

Open
Tomer27cz wants to merge 1 commit into
esphome:nextfrom
Tomer27cz:add-i2s-slot-bit-width
Open

[i2s_audio] Expose slot_bit_width to speaker YAML configuration#6731
Tomer27cz wants to merge 1 commit into
esphome:nextfrom
Tomer27cz:add-i2s-slot-bit-width

Conversation

@Tomer27cz
Copy link
Copy Markdown

Description

Related issue (if applicable): fixes

Pull request in esphome with YAML changes (if applicable):

Checklist

  • I am merging into next because this is new documentation that has a matching pull-request in esphome as linked above.
    or

  • I am merging into current because this is a fix, change and/or adjustment in the current documentation and is not for a new component or feature.

  • Link added in /src/content/docs/components/index.mdx when creating new documents for new components or cookbook.

New Component Images

If you are adding a new component to ESPHome, you can automatically generate a standardized black and white component name image for the documentation.

To generate a component image:

  1. Comment on this pull request with the following command, replacing component_name with your component name in lower_case format with underscores (e.g., bme280, sht3x, dallas_temp):

    @esphomebot generate image component_name
    
  2. The ESPHome bot will respond with a downloadable ZIP file containing the SVG image.

  3. Extract the SVG file and place it in the /public/images/ folder of this repository.

  4. Use the image in your component's index table entry in /src/content/docs/components/index.mdx.

Example: For a component called "DHT22 Temperature Sensor", use:

@esphomebot generate image dht22

Note: All images used in ImgTable components must be placed in /public/images/ as the component resolves them to absolute paths.

@netlify
Copy link
Copy Markdown

netlify Bot commented Jun 3, 2026

Deploy Preview for esphome ready!

Name Link
🔨 Latest commit cac9d86
🔍 Latest deploy log https://app.netlify.com/projects/esphome/deploys/6a20a569dc37940008036612
😎 Deploy Preview https://deploy-preview-6731--esphome.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@Tomer27cz Tomer27cz marked this pull request as ready for review June 3, 2026 22:15
Copilot AI review requested due to automatic review settings June 3, 2026 22:15
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

Adds documentation for configuring I²S slot bit width for the speaker component to better support DACs that require specific slot sizing.

Changes:

  • Documented new slot_bit_width option under speaker I²S audio settings.


- **sample_rate** (*Optional*, positive integer): I2S sample rate. If in `primary` I²S mode the sample rate of the audio stream is used. Defaults to `16000`.
- **bits_per_sample** (*Optional*, enum): The bit depth of the audio samples sent to the DAC. One of `8bit`, `16bit`, `24bit`, or `32bit`. Defaults to `16bit`.
- **slot_bit_width** (*Optional*, enum): The bit width of the I²S slot. Useful for DACs requiring a specific slot size. One of `default`, `8bit`, `16bit`, `24bit`, or `32bit`. Defaults to `default`.

- **sample_rate** (*Optional*, positive integer): I2S sample rate. If in `primary` I²S mode the sample rate of the audio stream is used. Defaults to `16000`.
- **bits_per_sample** (*Optional*, enum): The bit depth of the audio samples sent to the DAC. One of `8bit`, `16bit`, `24bit`, or `32bit`. Defaults to `16bit`.
- **slot_bit_width** (*Optional*, enum): The bit width of the I²S slot. Useful for DACs requiring a specific slot size. One of `default`, `8bit`, `16bit`, `24bit`, or `32bit`. Defaults to `default`.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants