Voice Pyramid 提供音频输入、音频输出和语音应用所需的硬件组件,需要搭配兼容的 M5Stack 主控使用。
| 项目 | 信息 |
|---|---|
| 产品名称 | Voice Pyramid |
| SKU | A167 |
| 主要功能 | 音频输入、音频输出和语音应用硬件接口 |
| 通信接口 | I2C、I2S |
| ESPHome 组件 | i2s_audio、es8311、es7210、microphone、speaker、pi4ioe5v6408,以及 aw87559、si5351、pyramidrgb、pyramidtouch(外部组件) |
| ESPHome 版本要求 | 2025.11.3 及以上 |
Voice Pyramid 使用的部分硬件驱动来自 M5Stack ESPHome 外部组件仓库:
external_components:
- source: github://m5stack/esphome-yaml/components
components: [aw87559, si5351, pyramidrgb, pyramidtouch]
refresh: 0s 配置 I2S 音频总线,为麦克风和扬声器提供数据通道:
i2s_audio:
- id: i2s_audio_bus
i2s_lrclk_pin: GPIO8
i2s_bclk_pin: GPIO6 PI4IOE5V6408 扩展器、AW87559 功放和 SI5351 时钟发生器使用底座侧 I2C 总线。三项声明是 Voice Pyramid 音频硬件初始化的一部分:
pi4ioe5v6408:
- id: audio_io_expander
i2c_id: ext_bus
address: 0x43
aw87559:
id: audio_amp
i2c_id: ext_bus
address: 0x5B
si5351:
id: clock_gen
i2c_id: ext_bus
address: 0x60 audio_dac:
- platform: es8311
id: es8311_dac
i2c_id: ext_bus
bits_per_sample: 16bit
sample_rate: 16000 audio_adc:
- platform: es7210
id: es7210_adc
i2c_id: ext_bus
address: 0x40
bits_per_sample: 16bit
sample_rate: 16000 microphone:
- platform: i2s_audio
id: i2s_mic
sample_rate: 16000
i2s_din_pin: GPIO5
bits_per_sample: 16bit
adc_type: external
channel: stereo speaker:
- platform: i2s_audio
id: i2s_speaker
i2s_dout_pin: GPIO7
dac_type: external
bits_per_sample: 16bit
sample_rate: 16000
channel: mono
audio_dac: es8311_dac pyramidtouch Platform 提供四路触摸和滑动事件。基础配置可只创建触摸实体;滑动动作属于应用逻辑,可按需添加。
sensor:
- platform: pyramidtouch
i2c_id: ext_bus
address: 0x1A
update_interval: 50ms
touch1:
name: "Touch 1"
touch2:
name: "Touch 2"
touch3:
name: "Touch 3"
touch4:
name: "Touch 4" Voice Pyramid 的两组灯带由 pyramidrgb Hub 和 Output Platform 驱动。每个灯组需要分别映射红、绿、蓝输出,再组合为 RGB Light;以下展示第一组灯光的基础配置:
pyramidrgb:
- id: pyramid_rgb1
i2c_id: ext_bus
address: 0x1A
strip: 1
brightness: 80
output:
- platform: pyramidrgb
id: pyramid_rgb1_red
pyramidrgb_id: pyramid_rgb1
channel: 0
color: red
- platform: pyramidrgb
id: pyramid_rgb1_green
pyramidrgb_id: pyramid_rgb1
channel: 0
color: green
- platform: pyramidrgb
id: pyramid_rgb1_blue
pyramidrgb_id: pyramid_rgb1
channel: 0
color: blue
light:
- platform: rgb
name: "Pyramid RGB 1"
red: pyramid_rgb1_red
green: pyramid_rgb1_green
blue: pyramid_rgb1_blue