Skip to main content

reSpeaker Flex 入门指南

pir

reSpeaker Flex 是一款基于 XMOS XVF3800 处理器构建的模块化、分体式架构语音处理系统,专为机器人和智能交互终端设计。与传统的一体化麦克风阵列不同,Flex 将核心处理板与麦克风阵列板分离,两者通过柔性 FPC 软排线连接,使阵列可以嵌入产品外壳内的任意物理位置,同时将处理电子部分放置在其他位置。 该系统支持两种可互换的麦克风阵列配置:用于全向 360° 采集的环形 4 麦克风阵列,以及用于前向拾音并抑制后向声音的线性 4 麦克风阵列。两块阵列板都通过标准化的 24 针 FPC 接口连接到同一核心板,系统可在 USB(UAC 2.0 即插即用)或 I2S 模式下运行,以便嵌入式集成。核心板上可选焊接 XIAO ESP32S3 模块,以实现无线连接和扩展控制。

环形麦克风系列​

reSpeaker Flex XVF3800 Circular reSpeaker Flex XVF3800 Circular with XIAO ESP32S3

线性麦克风系列​

reSpeaker Flex XVF3800 LinearreSpeaker Flex XVF3800 Linear with 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 调整录音格式、音量、算法参数和通道路由

主要组件​

pir

核心板​

组件 / 特性描述
主音频处理器XMOS XVF3800(固件 v3.2.1),负责所有音频 DSP,包括 AEC、波束成形、DoA 和噪声抑制
音频编解码器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 和外设扩展

环形阵列板​

pir

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

线性阵列板​

pir

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

XIAO ESP32S3 支持​

pir

pir

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 — 引出到带标签的排针/焊盘,供用户扩展

排针​

pir

pir

24 FPC 线缆​

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

pir

引脚信号名称类型功能描述备注
1MIC_VDDPower麦克风电源3.3V 供电
2MIC_VDDPower麦克风电源双引脚以增强供电稳定性
3GNDGND电源回流地电源地
4MIC_CLKOut全局时钟信号核心信号,2–4 MHz
5GNDGND时钟屏蔽地时钟专用地
6MIC_D1In数据线 1CH1 麦克风
7GNDGNDD1 隔离地
8MIC_D2In数据线 2CH2 麦克风
9GNDGNDD2 隔离地
10MIC_D3In数据线 3CH3 麦克风
11GNDGNDD3 隔离地
12MIC_D4In数据线 4CH4 麦克风
13GNDGNDD4 隔离地
14MIC_D5In数据线 5CH5 麦克风
15GNDGNDD5 隔离地
16MIC_D6In数据线 6CH6 麦克风
17GNDGNDD6 隔离地
18MIC_D7In数据线 7CH7 麦克风
19GNDGNDD7 隔离地
20MIC_D8In数据线 8CH8 麦克风
21GNDGNDD8 隔离地
22GPIO_1I/O通用输入/输出扩展功能
23GPIO_2I/O通用输入/输出扩展功能
24GNDGNDGPIO 屏蔽地吸收 GPIO 噪声

入门指南​

硬件准备​

  • USB Type-C 线缆
  • 主机电脑或 Raspberry Pi

软件准备​

开箱即用​

note

为确保最佳的语音拾取性能以及音频算法的正常运行,请确保设备背面的麦克风端口(Mic Inlet / Sound Hole)朝向声源。麦克风端口位于印有 Seeed Studio 标志的一侧。

pir

复位​

当按下复位(RST)按钮时,会对 reSpeaker Flex 执行硬件复位,它会从最开始重新启动芯片并重新初始化系统,就像完整的断电重启一样。

扬声器连接​

pir

在这里你可以看到如何根据你的音频输出偏好,使用 3.5mm AUX 耳机插孔或板载 JST 扬声器接口来连接扬声器。

FPC 连接​

pir

在连接 FPC 线缆之前,先确认接触面和加固面。在将线缆插入 MIC 连接器时,确保裸露的接触面朝向连接器内部的金属触点,而加固面朝外。

pir

打开 MIC 连接器上的锁扣,将 FPC 线缆以正确方向插入,然后合上锁扣以固定连接。

安全模式​

Safe Mode 是 reSpeaker Flex 上的一种特殊恢复模式,它允许你通过 USB DFU 或 I2C(例如用于 ESP32 等设备)来烧录固件。

如果你之前已经烧录了 I2S 固件,并且想切换回 USB 固件,可以进入 Safe Mode,然后使用 USB DFU 重新烧录 USB 固件。

note
  • USB 固件
    • 仅支持 USB DFU。
    • 你可以通过 USB 连接更新设备。
    • 不支持 I2C DFU。
  • I2S 固件
    • 支持 I2C DFU。
    • 允许通过 I2C 接口更新固件。
    • 不支持 USB DFU。
  • 安全模式固件
    • 存储在 Factory 分区中。
    • 同时支持 USB DFU 和 I2C DFU。
    • 这是最灵活的恢复固件。

在以下情况下使用 Safe Mode

  • 你的固件工作不正常(例如,USB 未被检测到)。
  • 你需要重新烧录新固件,但当前固件没有响应。
  • 你不小心烧录了错误的固件,并希望恢复设备。

如何进入 Safe Mode

  • 将设备完全断电。
  • 按住 Boot 按钮。
  • 在按住 Boot 按钮的同时,重新接通电源。 使用 DFU util 命令行工具检查 DFU 分区;更多详情请参阅下方的 Install DFU Util 部分。

更新固件​

在官方 GitHub 仓库中提供了三个固件版本。你可以根据应用需求选择并烧录合适的固件。更多详情和下载,请参考 Github 链接

note

请确保你需要下载整个仓库。

USB 固件适用于通过 USB 硬件接口与 Windows、Linux 和 macOS 等主机操作系统进行通信的场景。 你可以通过此链接查看这些固件文件

固件通道数说明
respeaker_flex_ua-io16-6ch-cir.bin6 通道16 kHz,使用环形麦克风阵列的 6 通道
respeaker_flex_ua-io16-6ch-lin.bin6 通道16 kHz,使用线性麦克风阵列的 6 通道
respeaker_flex_ua-io16-cir.bin2 通道16 kHz,使用环形麦克风阵列的 2 通道输出
respeaker_flex_ua-io16-lin.bin2 通道16 kHz,使用线性麦克风阵列的 2 通道输出
respeaker_flex_ua-io48-cir.bin2 通道48 kHz,使用环形麦克风阵列的 2 通道输出
respeaker_flex_ua-io48-lin.bin2 通道48 kHz,使用线性麦克风阵列的 2 通道输出

通过 USB 线缆将 reSpeaker Flex 连接到你的电脑。请注意,你需要使用 XMOS USB-C 接口(靠近 RST 按钮)来烧录 XMOS 的固件。

安装 DFU Util​

dfu-util 是一个通过 USB 进行设备固件升级的命令行工具。

  • 下载 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

  • 打开 命令提示符(cmd)并验证安装:

dfu-util -V

pir

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

pir

如果你看到:
Cannot open DFU device 2886:001a ... (LIBUSB_ERROR_NOT_SUPPORTED)
请继续执行下面的驱动安装步骤。

  • 安装 Zadig
    • 打开 Zadig → Options > List All Devices
    • 选择 reSpeaker XVF3800 Flex
    • 安装 WinUSB 驱动
    • 对设备进行断电重启
    • 再次运行 dfu-util -l 以确认检测情况。

烧录固件​

从 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 固件进行录音和回放​

配置 Audacity(Windows)​

  1. 打开 Audacity
  2. 进入 Audio Setup > Audio Settings

pir

  1. 设置:
    • Host:Windows WASAPI
    • Recording Device:reSpeaker XVF3800 Flex
    • Channels:2 (Stereo)
    • Sample Rate:16000 Hz(用于 Project 和 Default Sample Rate)
    • 采样格式: 16-bit

pir

  1. 点击 OK
  2. 一切就绪 — 开始录音!

pir

如何调参?​

调参允许用户配置内置音频算法的参数,并与 XMOS 芯片直接通信。

我们提供了专用的 Python 控制接口,用于参数配置和设备交互。

Python 控制目录

使用提供的 Python 脚本,你可以:

  • 配置内置音频算法参数
  • 获取 DoA(到达方向)数据
  • 获取 VAD(语音活动检测)数据
  • 控制板载 LED
  • 控制语音处理流水线
  • 直接与 XMOS 设备通信

系统要求

使用 Python 控制接口需要以下依赖:

  • Python 3.6 或更高版本
  • pyusb Python 库
  • libusb 系统库

安装与依赖​

使用以下命令安装所需的 Python 依赖:

pip install pyusb

根据你的操作系统,你可能还需要单独安装 libusb 软件包。


用法​

基本语法

python xvf_host.py [options] command [value(s)...]

命令选项

选项描述
-l, --list列出所有支持的命令及其详细信息
--vid设置 USB Vendor ID(默认:0x2886)
--pid设置 USB Product 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

  1. 打开终端。

  2. 输入以下命令并按下 Enter:

    alsamixer

步骤 2:选择 XVF3800 Flex 声卡

  1. 按下 F6 打开声卡选择菜单。
  2. 使用 上下方向键 高亮选择 XVF3800 Flex 声卡。
  3. 按下 Enter 确认选择。

步骤 3:调整 PCM-1 音量

  1. 使用 左右方向键 导航到 PCM-1。
  2. 使用 上方向键 将音量级别提高到 100%。

pir

步骤 4:保存 ALSA 设置

  1. 按下 ESC 退出 alsamixer。
  2. 在拔掉 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 会为其重新安装正确的声卡驱动。

pir

资源​

技术支持与产品讨论​

感谢你选择我们的产品!我们将为你提供多种支持,以确保你在使用我们产品的过程中尽可能顺利。我们提供多种沟通渠道,以满足不同的偏好和需求。

Loading Comments...