jx-grxf/scooter-tuning-db
GitHub: jx-grxf/scooter-tuning-db
社区驱动的电动滑板车 BLE 协议逆向工程数据库,以 JSON 格式提供多品牌的寄存器映射与调优参数,供开发者免费读取和修改滑板车配置。
Stars: 0 | Forks: 0
# scooter-tuning-db
开放的、社区逆向工程的电动滑板车 BLE 寄存器/调优映射表,以小型 JSON 数据库的形式提供。**独立于任何付费应用的数据集。**
[](https://github.com/jx-grxf/scooter-tuning-db/actions/workflows/ci.yml)




[文件](#files) · [Schema](#schema) · [安全调优](#tuning-safely) · [来源](#sources)
## 这是什么(以及不是什么)
- **是:** 公开发布的逆向工程知识(ScooterHacking
社区,`CamiAlfa/M365-BLE-PROTOCOL`,`ub4raf/Ninebot-PROTOCOL`,
`nootnooot/segway.ninebot-ble`,`py-mi-scooter`)。这是调优应用所使用的*相同协议知识* —— 它是与滑板车通信的开放标准。
- **不是:** XiaoDash(或任何付费应用)的专有后端数据集。它存在于
Firebase Auth + 付费墙 + 客户端加密之后,并且**不**包含在此处,也没有在此处获取。你不需要它:下面的开放协议足以让你自己读取和调优滑板车。
## 文件
| 文件 | 品牌 | 型号 | 覆盖范围 |
|---|---|---|---|
| `xiaomi_m365.json` | Xiaomi | M365, M365 Pro, 1S, Pro 2, Essential, Mi 3 | 遥测数据 + KERS/定速巡航/灯光调优 |
| `ninebot.json` | Segway-Ninebot | ES1/2/4, G30 (Max), F20-40, E22/25/45 | 遥测数据 + 速度限制/模式调优 |
| `kukirin.json` | Kukirin (Kugoo) | G2/G2 Max/Pro/Master, G3/Pro, G4/Max, V3, A1 | 仪表盘 P 菜单 + 刹车/动力解限组合(无 BLE 映射表) |
| `neoline.json` | Neoline (E-Ride) | 通用 TI CC254x 平台 | 完整的明文 BLE 协议:遥测数据 + 速度曲线调优 + OAD 固件 |
| `apps.json` | — | 已分析的源应用(XiaoDash, Neoline E-Ride)+ 开源来源 | 所有数据的来源出处 |
| `firmware_manifest.json` | Xiaomi M365 | 原厂固件下载索引 | 版本 + 字节大小 + 每个镜像的 **sha256** |
| `index.json` | — | 目录 + Schema + 未覆盖列表 | — |
## 固件 (`firmware_manifest.json`)
本仓库**不**分发固件二进制文件 —— 这些是 Xiaomi 的专有受版权保护的作品。`firmware_manifest.json` 是**原厂 Xiaomi M365 固件**(gen A,明文/未签名)的**下载和校验和索引**:它列出了每个镜像的组件、版本、字节大小和 **sha256**,以及公开的 `download_base`
(`files.scooterhacking.org/firmware/m365/`)。请自行下载每个镜像,并在刷入前根据 sha256 进行验证。
- `esc/DRV*.bin` — 控制器固件(DRV143 = ESC v1.4.3)
- `ble/BLE*.bin` — 蓝牙芯片固件(BLE129 = v1.2.9)
- `bms/BMS*.bin` — 电池固件(BMS126 = v1.2.6)
### 未覆盖(无全面开放映射表)
Dualtron/Kaabo/Inokim/Zero/Apollo/NIU 使用封闭的控制器(Minimotors EY3,
LingBo, VESC 变体)。遥测数据已被部分获知;调优则被固件/应用锁定。添加它们意味着你需要自己对每一个进行逆向工程,而不是复制数据集。
## Schema
```
{
"reg": "0x7B", // hex register; M365 byte offset in bank = 2 x reg
"name": "kers_regen_level",
"access": "R/W", // R or R/W
"type": "uint8",
"units": "0=weak 1=medium 2=strong",
"tuning": true, // changes ride behaviour
"confidence": "high" // high = confirmed in multiple open sources
}
```
## 安全调优
- **先读后写。** 寄存器地址和比例会随固件版本而变化 —— 请先验证当前值。
- M365 原厂固件**没有单一的速度限制寄存器**;真正的解限是通过 BLE 刷入自定义固件(CFW)(例如 `mi.cfw.sh`)完成的,而不是通过写入。
- Ninebot 暴露了真实的 `speed_limit` (0x93) 和 `riding_mode` (0x74)。
- 过流/刹车/BMS 的更改可能会损坏硬件(禁用 BMS 有起火风险),并且取消速度限制在道路上使用时可能是违法的。你的滑板车,你做决定。
## 来源
- ScooterHacking Wiki — Mi 指南:https://wiki.scooterhacking.org/doku.php?id=guide-mi
- CamiAlfa/M365-BLE-PROTOCOL:https://github.com/CamiAlfa/M365-BLE-PROTOCOL
- camcamfresh/Xiaomi-M365-BLE-Controller-Replacement:https://github.com/camcamfresh/Xiaomi-M365-BLE-Controller-Replacement
- nootnooot segway.ninebot-ble:https://nootnooot.codeberg.page/segway-ninebot-ble/
- ub4raf/Ninebot-PROTOCOL:https://github.com/ub4raf/Ninebot-PROTOCOL
- Ninebot ES 协议文档:https://cloud.scooterhacking.org/release/nbdoc.pdf标签:Homebrew安装, 云资产清单, 物联网, 物联网安全, 电动滑板车, 蓝牙, 逆向工程