jvsobrinho/mvave-blackbox-ble
GitHub: jvsobrinho/mvave-blackbox-ble
逆向工程M-Vave Blackbox效果器踏板的专有BLE通信协议,提供完整的内存映射和校验算法,支持构建自定义MIDI控制器和第三方编辑器。
Stars: 0 | Forks: 0
# M-Vave Blackbox - 逆向工程项目
[](./LICENSE-GPL)
[](./LICENSE-CC)
本仓库记录了 **M-Vave Blackbox** 多效果器踏板的专有通信协议。其目标是为创建第三方编辑器(Web/Desktop)以及基于 ESP32 等微控制器的物理硬件控制器提供必要的技术基础。
## 硬件概述
* **设备名称:** `BlackBox_BLE`
* **协议:** Bluetooth Low Energy (BLE) / GATT
* **USB 接口:** CDC Serial(调查中)
## “隐藏”的协议(本项目存在的原因)
虽然官方的 M-Vave 手册记录了标准的 MIDI 命令(PC 用于预设,CC 用于基本切换),但该踏板的官方应用却使用了一种完全不同的、**未公开的专有十六进制协议**。
这为什么重要?该设备上通过 BLE 传输的标准 MIDI 受到了严重的限制。它不允许你读取 IRs 的名称、提取完整的预设或操作信号链路由。这个逆向工程项目完全绕过了标准的 MIDI 层,直接与专有的 `ae40` 服务交互,从而实现对 DSP 和内存架构的 100% 控制。
## Service UUIDs 和 Handles
蓝牙通信依赖于专有的 `ae40` 服务。
| Characteristic | UUID | Handle | 功能 |
| :--- | :--- | :--- | :--- |
| **TX (Write)** | `ae41` | `0x0062` | 命令调度(RAM 和 Flash) |
| **RX (Notify)** | `ae42` | `0x0064` | 状态接收(State Dump) |
## 仓库内容
* `/docs`:协议和物理内存映射的详细技术规范。
* `/tools`:用于预设读取和校验和验证的 Python 参考脚本。
* `/logs_reference`:通过 Wireshark 捕获的原始十六进制数据包转储。
## 免责声明
**注意:** 本项目是一项独立的开源计划,未获得 M-Vave 的认可、不隶属于 M-Vave、也未与 M-Vave 建立任何联系。
* **M-VAVE** 和 **CUVAVE** 是 **Zhuhai Shengke Intelligent Technology Co., Ltd.** 的注册商标。
* 本项目中提及的任何品牌名称、商标或型号名称均属于其各自所有者的财产,仅用于描述和教育目的。
使用直接写入闪存的命令(Save)以及所提供的脚本的风险完全由用户自行承担。作者对任何导致设备变砖、硬件损坏或数据丢失概不负责。
## 许可证
这是一个混合许可项目,旨在确保软件工具和所发现的知识保持开放:
* **源代码**:所有脚本、工具和代码(例如:`.py`、`.js`、`.html`)均采用 **GNU General Public License v3.0 (GPL-3.0)** 授权。详情请参见 [LICENSE-GPL](./LICENSE-GPL)。
* **文档与研究**:所有技术规范、协议研究和内存映射(例如 `/docs` 中的 `.md` 文件)均采用 **Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)** 授权。详情请参见 [LICENSE-CC](./LICENSE)。
通过为本项目做出贡献,你同意你的贡献将在相同的条款下获得授权。
标签:BLE, DSP控制, ESP32, GATT, IoT, MIDI, M-Vave Blackbox, Python, Wireshark, 云资产清单, 信号路由, 内存映射, 协议分析, 句柄查看, 吉他效果器, 固件分析, 开源硬件, 无后门, 权限提升, 校验和算法, 物联网安全, 硬件控制, 硬件黑客, 第三方编辑器, 蓝牙低功耗, 逆向工具, 逆向工程, 通信协议, 音乐科技