reSpeaker Flex 入门指南

reSpeaker Flex 是一款基于 XMOS XVF3800 处理器构建的模块化分体式语音处理系统,专为机器人和智能交互终端设计。与传统的一体化麦克风阵列不同,Flex 将核心处理板与麦克风阵列板分离,两者通过柔性 FPC 软排线连接,使阵列可以嵌入产品外壳内的任意物理位置,而将处理电子部分放置在其他位置。 该系统支持两种可互换的麦克风阵列配置:用于全向 360° 采集的环形 4 麦克风阵列,以及用于正面定向拾音并抑制后方声音的线性 4 麦克风阵列。两块阵列板都通过标准化的 24 针 FPC 接口连接到同一核心板,系统可在 USB(UAC 2.0 即插即用)或 I2S 模式下运行,以便嵌入式集成。可选的 XIAO ESP32S3 模块可焊接到核心板上,以实现无线连接和扩展控制。
环形麦克风系列
| reSpeaker Flex XVF3800 环形 | reSpeaker Flex XVF3800 环形(带 XIAO ESP32S3) | |
|---|---|---|
![]() | ![]() | |
线性麦克风系列
| reSpeaker Flex XVF3800 线性 | reSpeaker Flex XVF3800 线性(带 XIAO ESP32S3) | |
|---|---|---|
![]() | ![]() | |
特性
-
分体式模块化设计:核心板与麦克风阵列板物理分离,通过 FPC 软排线连接,可在任意产品机壳内灵活布置
-
多种麦克风配置选择:在使用同一核心板的前提下,可在环形 4 麦克风阵列(360° 拾音,44mm 间距)和线性 4 麦克风阵列(180° 前向指向性,33mm 间距)之间切换
-
XMOS XVF3800 音频处理:完整支持 AEC、AGC、DoA、多通道波束成形、VAD、噪声抑制和混响消除
-
双工作模式:USB UAC 2.0,可与 PC 和 SBC 即插即用;I2S 模式,用于直接嵌入式集成
-
双 USB 连接方式:USB-C 接口和 PH2.0 锁扣接口均支持 UAC 2.0 音频和 DFU 固件升级
-
板载扬声器功放:通过 JST 接口支持驱动 10W 4 欧姆扬声器,并提供 3.5mm AUX 耳机输出
-
支持 XIAO ESP32S3(可选):焊接模块后可增加 Wi-Fi/Bluetooth 功能,I2S 和 I2C 总线直接与 XVF3800 相连,用于无线控制和音频转发
-
固件灵活性:双 USB 固件版本(2 通道和 6 通道)、I2S 固件、通过 dfu-util 进行 DFU 升级,并可在断电后保持配置
-
Python SDK:可通过 Python 调整录音格式、音量、算法参数和通道路由
主要组件

核心板
| 组件 / 特性 | 描述 |
|---|---|
| 主音频处理器 | XMOS XVF3800(固件 v3.2.1),负责包括 AEC、波束成形、DoA 和噪声抑制在内的全部音频 DSP |
| 音频编解码器 | TLV320AIC3104,负责音频转换和 DAC 输出 |
| FPC 麦克风阵列接口 | 24 针带锁扣 FPC 连接器,支持最多 8 麦克风阵列并提供 2 路 GPIO 线 |
| USB-C 接口 | UAC 2.0 音频、DFU 固件升级以及供电 |
| PH2.0 接口 | 带锁扣连接器;提供与 USB-C 接口相同的 UAC 2.0 音频和 DFU 支持 |
| 3.5 mm AUX 插孔 | 侧向出线耳机输出,由板载 DAC 驱动 |
| 扬声器 JST 接口 | 直立安装连接器,可驱动最高 10W、4Ω 的扬声器;保留焊盘以便硬连线扬声器连接 |
| 外部电源端子 | 为整个系统提供 12V 供电并支持 10W 扬声器负载(P1 优先级) |
| RST 按钮 | XVF3800 的硬件复位按钮 |
| SafeMode(启动)按钮 | 上电时按住可进入安全模式以进行固件恢复 |
| PWR 指示灯 | 绿色电源指示灯 |
| 调试焊盘 | 预留 XMOS XTAG4 焊盘(出厂未焊接) |
| XMOS 3800 IO 排针 | 引出 I2C、I2S、5V/GND、扬声器引脚及其余 XVF3800 IO 的排针/焊盘 |
| 安装孔 | 4 × M3 安装孔 |
| XIAO ESP32S3 | 当其作为主机设备使用时,支持焊接 XIAO ESP32S3 |
| XIAO ESP32S3 GPIO | 剩余 GPIO 可用于 IO 和外设扩展 |
环形阵列板

| 组件 / 特性 | 描述 |
|---|---|
| 麦克风 | 4× PDM MEMS 麦克风,44 mm 间距,环形排布 |
| 拾音模式 | 360° 全向音频采集 |
| 接口 | 通过 FPC 连接器连接到核心板 |
| 安装 | 3 × M3 安装孔,用于固定在外壳或机箱上 |
线性阵列板

| 组件 / 特性 | 描述 |
|---|---|
| 麦克风 | 4× PDM MEMS 麦克风,33 mm 间距,线性排布 |
| 拾音模式 | 约 180° 的前向拾音模式,并抑制后方声音 |
| 接口 | FPC 连接器;排线可从侧面或背面走线 |
| 安装 | 2 × M3 安装孔 |
XIAO ESP32S3 支持


reSpeaker Flex 核心板预留了 Seeed Studio XIAO ESP32S3 模块的专用焊接焊盘,可在 XVF3800 音频处理链路之上增加 Wi-Fi 和 Bluetooth 连接功能。包含 XIAO 的 SKU(-C4-1 和 -L4-1)在出厂时已预装该模块;基础 SKU(-C4-0 和 -L4-0)则保留焊盘未焊接。 当安装了 XIAO 后,它与 XVF3800 之间会建立如下连接:
- I2S 总线 — 双总线(播放和录制),共享 BCLK、MCLK 和 LRCLK,用于双向音频流传输
- I2C 总线 — 供 XIAO 读取和写入 XVF3800 配置参数
- RST 线 — XIAO 可通过专用 IO 引脚对 XVF3800 进行硬件复位
- 剩余 XIAO IO — 引出到带标签的排针/焊盘,供用户扩展使用
排针


24 针 FPC 线缆
FPC 麦克风阵列接口为 24 针、0.5mm 间距、带锁扣的连接器,包装盒中附带的 20cm FPC 软排线与该连接器配套。

| 引脚 | 信号名称 | 类型 | 功能描述 | 备注 |
|---|---|---|---|---|
| 1 | MIC_VDD | Power | 麦克风电源 | 3.3V 供电 |
| 2 | MIC_VDD | Power | 麦克风电源 | 双引脚以增强供电稳定性 |
| 3 | GND | GND | 电源回流地 | 电源地 |
| 4 | MIC_CLK | Out | 全局时钟信号 | 核心信号,2–4 MHz |
| 5 | GND | GND | 时钟屏蔽地 | 时钟专用地 |
| 6 | MIC_D1 | In | 数据线 1 | CH1 麦克风 |
| 7 | GND | GND | D1 隔离地 | |
| 8 | MIC_D2 | In | 数据线 2 | CH2 麦克风 |
| 9 | GND | GND | D2 隔离地 | |
| 10 | MIC_D3 | In | 数据线 3 | CH3 麦克风 |
| 11 | GND | GND | D3 隔离地 | |
| 12 | MIC_D4 | In | 数据线 4 | CH4 麦克风 |
| 13 | GND | GND | D4 隔离地 | |
| 14 | MIC_D5 | In | 数据线 5 | CH5 麦克风 |
| 15 | GND | GND | D5 隔离地 | |
| 16 | MIC_D6 | In | 数据线 6 | CH6 麦克风 |
| 17 | GND | GND | D6 隔离地 | |
| 18 | MIC_D7 | In | 数据线 7 | CH7 麦克风 |
| 19 | GND | GND | D7 隔离地 | |
| 20 | MIC_D8 | In | 数据线 8 | CH8 麦克风 |
| 21 | GND | GND | D8 隔离地 | |
| 22 | GPIO_1 | I/O | 通用输入/输出 | 扩展功能 |
| 23 | GPIO_2 | I/O | 通用输入/输出 | 扩展功能 |
| 24 | GND | GND | GPIO 屏蔽地 | 吸收 GPIO 噪声 |
入门指南
硬件准备
- USB Type-C 线缆
- 主机电脑或 Raspberry Pi
软件准备
开箱即用
复位
当按下复位(RST)按钮时,会对 reSpeaker Flex 执行硬件复位,它会从最开始重新启动芯片并重新初始化系统,就像一次完整的断电重启。
扬声器连接
在这里,你可以看到如何根据你的音频输出偏好,使用 3.5mm AUX 耳机插孔或板载 JST 扬声器接口来连接扬声器。
安全模式
Safe Mode 是 reSpeaker Flex 上的一种特殊恢复模式,它允许你通过 USB DFU 或 I2C(如 ESP32 等设备)来烧录固件。
如果你之前已经烧录了 I2S 固件,并且想切换回 USB 固件,可以进入 Safe Mode,然后使用 USB DFU 重新烧录 USB 固件。
- USB 固件
- 仅支持 USB DFU。
- 你可以通过 USB 连接更新设备。
- 不支持 I2C DFU。
- I2S 固件
- 支持 I2C DFU。
- 允许通过 I2C 接口更新固件。
- 不支持 USB DFU。
- Safe Mode 固件
- 存储在 Factory 分区中。
- 同时支持 USB DFU 和 I2C DFU。
- 这是最灵活的恢复固件。
在以下情况下使用 Safe Mode
- 你的固件工作不正常(例如,USB 无法被检测到)。
- 你需要重新烧录新固件,但当前固件没有响应。
- 你不小心烧录了错误的固件,并希望恢复设备。
如何进入 Safe Mode
- 将设备完全断电。
- 按住 Boot 按钮不放。
- 在按住 Boot 按钮的同时,重新接通电源。 使用 DFU util 命令行工具检查 DFU 分区;更多详情请参阅下方的 Install DFU Util 部分。
更新固件
在官方 GitHub 仓库中提供了三个固件版本。你可以根据应用需求选择并烧录合适的固件。更多详情和下载,请参考 Github 链接
请确保你需要下载整个仓库。
- USB
- I2S
USB 固件适用于通过 USB 硬件接口与 Windows、Linux 和 macOS 等主机操作系统进行通信的场景。 提供两种固件变体:respeaker_xvf3800_usb_dfu_firmware_v2.0.x.bin,提供 2 通道音频,以及 respeaker_xvf3800_usb_dfu_firmware_6chl_v2.0.x.bin,提供 6 通道音频。两种固件版本均以 16 kHz 采样率和 32 位深度运行。
你可以通过此链接查看这些固件文件
| 固件 | 通道数 | 说明 |
|---|---|---|
| respeaker_flex_ua-io16-6ch-cir.bin | 6 通道 | 16 kHz,6 通道,使用环形麦克风阵列 |
| respeaker_flex_ua-io16-6ch-lin.bin | 6 通道 | 16 kHz,6 通道,使用线性麦克风阵列 |
| respeaker_flex_ua-io16-cir.bin | 2 通道 | 16 kHz,立体声输出,使用环形麦克风阵列 |
| respeaker_flex_ua-io16-lin.bin | 2 通道 | 16 kHz,立体声输出,使用线性麦克风阵列 |
| respeaker_flex_ua-io48-cir.bin | 2 通道 | 48 kHz,立体声输出,使用环形麦克风阵列 |
| respeaker_flex_ua-io48-lin.bin | 2 通道 | 48 kHz,立体声输出,使用线性麦克风阵列 |
通过 USB 线缆将 reSpeaker Flex 连接到你的电脑。请注意,你需要使用 XMOS USB-C 接口(靠近 RST 按钮)来烧录 XMOS 的固件。
I2S 固件适用于设备连接到诸如 XIAO ESP32S3 等微控制器主机时使用。在这种配置下,语音数据通过 I2S 协议传输。固件文件 respeaker_xvf3800_i2s_dfu_firmware_v1.0.x.bin 可在此处获取。该固件支持 2 通道音频,32 位深度,采样率为 16 kHz。
| 固件 | 通道数 | 说明 |
|---|---|---|
| respeaker_flex_inthost-lr16-cir-i2c.bin | 2 通道 | 16 kHz,立体声输出,环形麦克风阵列 |
| respeaker_flex_inthost-lr16-lin-i2c.bin | 2 通道 | 16 kHz,立体声输出,线性麦克风阵列 |
| respeaker_flex_inthost-lr48-cir-i2c.bin | 2 通道 | 48 kHz,立体声输出,环形麦克风阵列 |
| respeaker_flex_inthost-lr48-lin-i2c.bin | 2 通道 | 48 kHz,立体声输出,线性麦克风阵列 |
通过 USB 线缆将 reSpeaker Flex 连接到你的电脑。请注意,你需要使用 XMOS USB-C 接口(靠近 RST 按钮)来烧录 XMOS 的固件。
安装 DFU Util
dfu-util 是一个通过 USB 进行设备固件升级(Device Firmware Upgrade)的命令行工具。
- Windows
- macOS
- Linux
-
下载
dfu-util-0.11-binaries.tar.xz并解压,例如解压到D:\dfu-util-0.11-binaries\win64\
下载链接 -
将
dfu-util.exe的路径添加到系统的Path变量中:
My Computer > Properties > Advanced > Environment Variables > Path -
打开 Command Prompt(
cmd)并验证安装:
dfu-util -V

- 连接 reSpeaker Flex 并检查设备是否被检测到:
dfu-util -l

如果你看到:
Cannot open DFU device 2886:001a ... (LIBUSB_ERROR_NOT_SUPPORTED)
请继续执行下面的驱动安装步骤。
- 安装 Zadig
- 打开 Zadig →
Options > List All Devices - 选择
reSpeaker XVF3800 Flex - 安装 WinUSB 驱动
- 对设备进行断电重启
- 再次运行
dfu-util -l以确认检测情况。
- 打开 Zadig →
- 使用 Homebrew 安装 dfu-util:
brew install dfu-util
- 检查设备是否被检测到:
dfu-util -l
预期输出:
dfu-util -l
dfu-util 0.11
Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2021 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/
Found DFU: [2886:001a] ver=0202, devnum=3, cfg=1, intf=4, path="2-1.1.4", alt=1, name="reSpeaker DFU Upgrade", serial="101991441000000001"
Found DFU: [2886:001a] ver=0202, devnum=3, cfg=1, intf=4, path="2-1.1.4", alt=0, name="reSpeaker DFU Factory", serial="101991441000000001"
- 安装 dfu-util:
sudo apt install dfu-util
- 连接 XVF3800 并检查是否被检测到:
sudo dfu-util -l
预期输出:
pi@raspberrypi:~ $ sudo dfu-util -l
dfu-util 0.9
Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2016 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/
Found DFU: [2886:001a] ver=0202, devnum=5, cfg=1, intf=3, path="1-1.1", alt=1, name="reSpeaker DFU Upgrade", serial="101991441000000001"
Found DFU: [2886:001a] ver=0202, devnum=5, cfg=1, intf=3, path="1-1.1", alt=0, name="reSpeaker DFU Factory", serial="101991441000000001"
烧录固件
从 GitHub 下载完整的固件仓库:reSpeaker Flex XVF 3800
-
运行以下命令来烧录固件
- dfu-util -R -e -a 1 -D /path/to/dfu_firmware.bin
-
在 Linux 上,以 sudo 运行
- sudo dfu-util -R -e -a 1 -D /path/to/dfu_firmware.bin
使用 USB 固件进行录音和回放
- Windows
- macOS
- Raspberry Pi / Linux
配置 Audacity(Windows)
- 打开 Audacity
- 进入 Audio Setup > Audio Settings

- 设置:
- Host:
Windows WASAPI - Recording Device:
reSpeaker XVF3800 Flex - Channels:
2 (Stereo) - Sample Rate:
16000 Hz(用于 Project 和 Default Sample Rate) - Sample Format:
16-bit
- Host:

- 点击 OK
- 一切就绪——开始录音吧!

配置 Audacity(macOS)
- 打开 Audacity
- 进入 Audio Setup,并将 Recording Device 选择为 reSpeaker 3800 Flex


- 进入 Audio Setting 并进行如下设置:

- 录音设备:
reSpeaker 3800 Flex - 通道数:
2 (Stereo) - 采样率:
16000 Hz(用于 Project 和 Default Sample Rate) - 采样格式:
16-bit

- 点击 OK
- 准备录音!

在 Raspberry Pi 上录音(命令行)
- 查找声卡编号:
arecord -l
示例输出:

在此示例中,声卡编号为 3
- 录制音频(5 秒):
arecord -D plughw:3,0 -c 2 -r 16000 -f S16_LE -d 5 output.wav
将 3 替换为你实际的声卡编号
- 在 ALSA 中调整 reSpeaker XVF3800 的音量
alsamixer
在 alsamixer 中,使用左右方向键导航到正确的声音设备。使用上方向键增加音量。

- 回放:
aplay -D plughw:3,0 output.wav
在 Raspberry Pi 上录音(Audacity)
- 安装 Pi-Apps(如果尚未安装)
在 Raspberry Pi 上打开终端。运行以下命令安装 Pi-Apps
wget -qO- https://raw.githubusercontent.com/Botspot/pi-apps/master/install | bash
等待安装完成。菜单中会出现一个新的 Pi-Apps 图标。
-
通过 Pi-Apps 安装 Audacity
-
设置音频输入和输出
- 点击工具栏中的 "Audio Setup"。
- 从下拉菜单中选择 "Audio Settings"。
- 在 Audio Settings 窗口中:
- 选择正确的录音设备(例如 reSpeaker XVF3800 Flex)。
- 选择合适的回放设备(例如 reSpeaker XVF3800 Flex)。
- 确保 Host 设置为 ALSA,以在 Raspberry Pi 上获得最佳兼容性。
- 点击 OK 以应用设置。
- 录制和回放音频
如何调参?
调参允许用户配置内置音频算法的参数,并与 XMOS 芯片直接通信。
我们提供了专用的 Python 控制接口,用于参数配置和设备交互。
使用提供的 Python 脚本,你可以:
- 配置内置音频算法参数
- 获取 DoA(到达方向)数据
- 获取 VAD(语音活动检测)数据
- 控制板载 LED
- 控制语音处理流水线
- 直接与 XMOS 设备通信
系统要求
使用 Python 控制接口需要以下依赖:
- Python 3.6 或更高版本
pyusbPython 库libusb系统库
安装与依赖
使用以下命令安装所需的 Python 依赖:
pip install pyusb
根据你的操作系统,你可能还需要单独安装 libusb 软件包。
用法
基本语法
python xvf_host.py [options] command [value(s)...]
命令选项
| 选项 | 描述 |
|---|---|
-l, --list | 列出所有支持的命令及其详细信息 |
--vid | 设置 USB 供应商 ID(默认:0x2886) |
--pid | 设置 USB 产品 ID(默认:0x001A) |
--values | 为写入命令提供数值(可选) |
使用示例
1. 列出所有可用命令
python xvf_host.py --list
显示所有支持的命令及其说明。
2. 读取固件版本信息
python xvf_host.py VERSION
从设备中读取并显示当前固件版本信息。
3. 读取 DOA(到达方向)数值
python xvf_host.py DOA_VALUE
获取麦克风阵列检测到的当前到达方向(DOA)数值。
故障排查
扬声器输出的回放声音不够大?
如果 reSpeaker Flex 在 Linux 上的扬声器输出音量太小,你可能需要调整 XVF3800 声卡的 ALSA 混音器级别。按照以下步骤提高输出音量。
步骤 1:打开 ALSA Mixer
-
打开终端。
-
输入以下命令并按下 Enter:
alsamixer
步骤 2:选择 XVF3800 Flex 声卡
- 按下 F6 打开声卡选择菜单。
- 使用 上下方向键 高亮选择 XVF3800 Flex 声卡。
- 按下 Enter 确认选择。
步骤 3:调整 PCM-1 音量
- 使用 左右方向键 导航到 PCM-1。
- 使用 上方向键 将音量级别提高到 100%。

步骤 4:保存 ALSA 设置
- 按下 ESC 退出
alsamixer。 - 在拔下 reSpeaker Flex 之前,运行以下命令保存你的设置:
sudo alsactl store
步骤 5:附加选项(使用 PulseAudio)
如果在调整 ALSA 级别后仍然无法清晰听到声音,可以尝试安装 PulseAudio Volume Control 以进行更精细的音量调节:
sudo apt install pavucontrol -y
然后你可以打开 pavucontrol,在需要时将输出音量提高到 100% 以上。
在刷写固件后无法在 Windows 中作为声音设备使用?
打开开始菜单并输入 Device manager。找到与 reSpeaker Flex 相关的设备,右键点击它们并选择 Uninstall devices。之后,重启设备(USB 拔插),Windows 会为其重新安装正确的声卡驱动。

资源
reSpeaker Flex XVF3800 圆形 step 文件
reSpeaker Flex XVF3800 线性 step 文件
reSpeaker Flex XVF3800 核心板 Step 文件
技术支持与产品讨论
感谢你选择我们的产品!我们为你提供多种支持方式,以确保你在使用我们产品的过程中尽可能顺利。我们提供多种沟通渠道,以满足不同的偏好和需求。



