# uniden-r8-ble：重建 Uniden R8 雷达探测器的蓝牙遥测

> 将 Uniden R8 雷达探测器未公开的低功耗蓝牙输出解码为可在 Raspberry Pi 上运行的只读采集程序，提供实时遥测、警报开始／更新／结束事件、SQLite 历史记录，以及可选的 MQTT 与 Home Assistant 发布。作者在真实设备上直接从通信数据推断协议，并以 AegisX86/UnidenR8wlink 先前针对 R8w 的发现为基础；PROTOCOL.md 中的每项结论都按证据分级：在这台 R8 上实测、在其他型号上见到、从应用反编译但未测试，或推断。未知字段按原始数据保留，而不赋予臆造的含义。

- 类型：案例
- 目标：协议
- 类别：独立重建案例
- 关联：独立重建项目
- 来源复核于：2026-10-27
- 收录于：2026-11-03
- 原始资源：<https://github.com/JeremyWhittaker/unidenr8_bluetooth>
- 一手来源：<https://github.com/JeremyWhittaker/unidenr8_bluetooth/blob/46c7e1af2fa86c9a5c18f58528bea0f22b4d77dc/docs/PROTOCOL.md>
- 目录页面：<https://awesomerea.org/zh/resources/uniden-r8-ble-telemetry-case/>
- 记录 JSON：<https://awesomerea.org/resources/uniden-r8-ble-telemetry-case/record.json>
- 英文版：[English](https://awesomerea.org/resources/uniden-r8-ble-telemetry-case/index.md)

## 使用条件与局限

- 在 2026-09-09 的 main 分支最新提交处审阅（软件包版本 0.1.0）。README 报告在行驶车辆上无差错地解码了 1 Hz 遥测，并在这台 R8 上捕获到一次真实的 Ka 波段警报；而 PROTOCOL.md 仍将活动警报字段评为来自 R8w 抓包的继承证据。文档还指出实时数据流不包含位置，设置数据块也仍未解码。
- 需要使用者自己的 Uniden R8，以及带 BlueZ 的 Linux 主机；文档以 Raspberry Pi Zero 2 W 为例，可选配 systemd 服务、经 gpsd 连接的 GNSS 接收器、PiSugar 电池和 MQTT 代理。仓库未收录厂商应用、固件或抓包记录；README 称原始抓包保存在被 git 忽略的本地目录中，蓝牙地址和坐标在发布前会被脱敏。
- 需要 Python 3.11+，bleak 作为可选的蓝牙扩展，paho-mqtt 用于发布。README 称已安装的软件包不会向探测器发送任何应用命令，并由 selftest 和 CI 中运行的 AST 审计加以检查；坐标实验所用的命令是在所有者指示下由独立脚本发送的，SAFETY.md 对此有记录。
- CI 在 Python 3.11–3.13 上运行 ruff 与 pytest，并有一个 selftest 任务；README 徽章标示 754 项测试，无需硬件、代理、gpsd 或网络。README 指出 MQTT 与仪表板尚未在真实硬件上运行过。
- 采用 MIT 许可。README 称项目与 Uniden 无关联、未获其认可，是诊断软件，不能替代探测器自身的显示或警告。HANDOFF.md 面向接手项目的人或智能体编写。

## 一手来源

1. <https://github.com/JeremyWhittaker/unidenr8_bluetooth/blob/46c7e1af2fa86c9a5c18f58528bea0f22b4d77dc/docs/PROTOCOL.md>
2. <https://github.com/JeremyWhittaker/unidenr8_bluetooth/blob/46c7e1af2fa86c9a5c18f58528bea0f22b4d77dc/README.md>
3. <https://github.com/JeremyWhittaker/unidenr8_bluetooth/blob/46c7e1af2fa86c9a5c18f58528bea0f22b4d77dc/docs/SAFETY.md>
4. <https://github.com/JeremyWhittaker/unidenr8_bluetooth/blob/46c7e1af2fa86c9a5c18f58528bea0f22b4d77dc/docs/EVIDENCE.md>
5. <https://github.com/JeremyWhittaker/unidenr8_bluetooth/blob/46c7e1af2fa86c9a5c18f58528bea0f22b4d77dc/docs/CAPABILITIES.md>
6. <https://github.com/JeremyWhittaker/unidenr8_bluetooth/blob/46c7e1af2fa86c9a5c18f58528bea0f22b4d77dc/docs/HANDOFF.md>
7. <https://github.com/JeremyWhittaker/unidenr8_bluetooth/blob/46c7e1af2fa86c9a5c18f58528bea0f22b4d77dc/pyproject.toml>
8. <https://github.com/JeremyWhittaker/unidenr8_bluetooth/blob/46c7e1af2fa86c9a5c18f58528bea0f22b4d77dc/.github/workflows/ci.yml>
9. <https://github.com/JeremyWhittaker/unidenr8_bluetooth/blob/46c7e1af2fa86c9a5c18f58528bea0f22b4d77dc/LICENSE>

## 同分区更多条目：协议

- [opendash：重建 Scanmatik SM3 J2534 适配器协议](https://awesomerea.org/zh/resources/opendash-scanmatik-sm3-protocol-case/index.md) · 案例
- [OWL：开源的 Apple 无线直连（AWDL）实现](https://awesomerea.org/zh/resources/owl-awdl-open-implementation-case/index.md) · 案例
- [QuestPad：利用 Quest Touch 无线协议构建 USB 手柄](https://awesomerea.org/zh/resources/questpad-case/index.md) · 案例
- [Stadiacast：重建 Stadia 手柄的 Wi-Fi 服务](https://awesomerea.org/zh/resources/stadiacast-case/index.md) · 案例
- [os-xgs-npu：重建 Sophos XGS 协处理器接口](https://awesomerea.org/zh/resources/os-xgs-npu-case/index.md) · 案例
- [LibreMP：基于抓包研究的 Epson EasyMP 投屏客户端](https://awesomerea.org/zh/resources/libremp-easymp-case/index.md) · 案例

## 关于此条目

说明已依据一手来源复核。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
