案例
ILX MultiPad
Works with Nexting · 键盘案例
Nexting Devices SDK · 案例
ILX MultiPad
保留 MultiPad 原有控件,通过 Bridge 接到 Nexting,并让每一步都有可观察的结果。
案例:把 ILX MultiPad 接入 Nexting
MultiPad 是立创开源硬件平台上的 STM32F103VET6 桌面控制键盘,配有按键、旋钮和显示位。下面说明如何保留原有控制能力,并通过 Bridge 接入 Nexting。
MultiPad 的公开资料确认了 STM32F103VET6 主控、Electron 上位机和 GPL-3.0 许可。下载接口、USB 协议和 BLE 实现仍需按实物与上游源码确认;Type-C 接口不等于 UF2 拖放烧录。



硬件与协议说明
| 来源 | 说明 |
|---|---|
| 上游 MultiPad 项目页 | STM32F103VET6 主控、Electron 上位机和 GPL-3.0 项目许可。 |
| 你这块实物照片 | 有透明机械按键、多个旋钮、显示位和 Type-C 接口。下载接口和引脚仍需拆机核对。 |
| Nexting Devices SDK | approval/1、status/1、keys/1、rotary/1 和 text/1 可表达通用设备意图;MultiPad 通过 Bridge 接入这些 Profile。 |
连接方式
MultiPad
STM32F103VET6
STM32F103VET6
↔ USB / 原上位机链路
Nexting Bridge
USB 事件 → SDK 消息
USB 事件 → SDK 消息
↔ 加密 BLE
Nexting Host ↔ Agent
手机或电脑上的可信 Host
手机或电脑上的可信 Host
Nexting 设备协议使用加密 BLE GATT。MultiPad 保留原固件和 Electron 上位机,由电脑上的 Bridge 将 USB/上位机事件转换为 Nexting Profile;要让手机直接发现,需要 BLE 伴侣模块或新的无线固件。
控件映射:协议不规定哪一个键
| MultiPad 控件(示例) | Nexting 语义 | Profile | 第一阶段做法 |
|---|---|---|---|
| 你选定的一个按键 | 一次性请求的 allow | approval/1 | 在固件或 Bridge 中声明映射,不存在固定 Allow 键 |
| 你选定的另一个按键 | 一次性请求的 deny | approval/1 | 只回传当前 request id 的选择 |
| 任一旋钮转动 | 方向或增量事件 | rotary/1 | 先在 Bridge 中记录 delta,再映射到 Host |
| 旋钮按压或其他按键 | 确认、选择或命令事件 | keys/1 / navigation/1 | 由 Host 配置语义,不写死在设备外壳 |
| 屏幕或显示位 | Agent 状态、标题、短文本 | status/1 / text/1 | 先确认显示控制器与分辨率,再声明 Device Info |
映射草图(不是 MultiPad 厂商固件代码)c
/* 物理槽位由你的 MultiPad 固件决定,SDK 不规定第几个键。*/
if (event.slot == MULTIPAD_CONFIRM_SLOT &&
event.gesture == NEXTING_DEVICE_GESTURE_PRESS) {
nexting_device_state_choose(
&approval, NEXTING_DEVICE_CHOICE_ALLOW, now_ms, &answer);
transport_send(answer);
}
/* 另一个自定义控件可以映射为 deny、navigation 或 rotary。*/固件准备
保留原固件并记录状态
先用原项目 Electron 上位机确认按键、旋钮、屏幕和 Type-C 都正常;保存原始固件或至少记录可恢复方式。确认 STM32 的下载入口
拆机后从原理图和板上丝印确认 SWD、Boot0/串口或 USB 下载芯片。Type-C 只是接口外形,不代表可以拖放 UF2。先做 Bridge,不先改主控固件
如果原固件能把输入交给电脑,第一版在电脑上实现 USB/上位机到 Nexting Profile 的适配,风险最低,也方便回滚。确认产物后再烧录
只有拿到与 STM32F103VET6、启动方式和板级连接完全匹配的构建产物,才执行烧录;目前不能使用 Nexting Zephyr 的 UF2。
当前没有可直接刷入 MultiPad 的 Nexting 固件。确认 STM32 下载接口、板级连接和构建产物后,再补充具体工具、命令、固件格式和回滚方法。
验证顺序:每一步都有可观察结果
| 顺序 | 验证动作 | 通过标准 |
|---|---|---|
| 1 | 原项目上位机操作全部控件 | 原固件功能没有被破坏 |
| 2 | Bridge 报告设备身份与声明能力 | Host 能看到稳定的 model、firmware 和 profiles |
| 3 | 只映射一个按键到 approval/1 | 一次请求只产生一个 allow 或 deny,重复包不会重复执行 |
| 4 | 旋钮与屏幕做 status/1 或 rotary/1 回环 | 方向、增量、状态和断连清理都可观察 |
| 5 | 拔线、重连、过期和升级回滚 | 过期请求失效,断连不保留旧状态,原固件可恢复 |