koua29/bruce-ble-finder
GitHub: koua29/bruce-ble-finder
一款为 Bruce 固件(LilyGO T-Embed CC1101)开发的 BLE 蓝牙临近雷达脚本,通过 RSSI 信号强度引导用户在物理空间中定位蓝牙设备。
Stars: 0 | Forks: 0
# 📡 BLE Finder — Bruce 的蓝牙邻近追踪器
[](https://github.com/BruceDevices/firmware) [](https://github.com/BruceDevices/firmware) [](LICENSE)
用于 **[Bruce](https://github.com/BruceDevices/firmware)** 固件(已在 **LilyGO T-Embed CC1101** 上测试)的 **JavaScript** 脚本。它将设备转变为 **BLE 临近雷达**:选择一个蓝牙设备,然后屏幕会像探测器一样引导你——**你走得越近,光点就越大,并且颜色会从红色变为绿色**,每一步都有**“变热 / 变冷”**的指示。

## ✨ 功能特点
- **两种选择模式**:
- **完整列表** — 扫描并显示所有 BLE 设备(名称 + RSSI)。
- **搜索(名称 / MAC)** — 输入名称或 MAC 地址的**一部分** → 过滤列表 → 进行选择。如果目标暂时不在列表中,可选择**“等待其出现”**。
- **声纳雷达**:填充式的圆环仪表,**中心光点**的大小和颜色(红 → 黄 → 绿)反映距离远近,并带有动态扫描动画。
- **实时 dBm**,距离区间(`非常近` … `非常远`),**变热/变冷**箭头指示和**信号条**。
- 当未捕捉到目标信号时,会保持**“搜索中…”**状态(适用于目标移出范围后再次出现的情况)。
## 🖼️ 预览
| 雷达(近) | 搜索中 / 超出范围 | 输入过滤器 |
|---|---|---|
|  |  |  |
## 🚀 安装说明
1. 将 **`BLE Finder.js`** 复制到 SD 卡上 Bruce 可读取的文件夹中:**`/BruceJS`**、`/scripts` 或 `/BruceScripts`。
2. 在设备上:**JS Interpreter** → 打开 `BLE Finder.js`。
3. 选择一个模式,选定你的目标并四处走动:当你靠近时,光点会“变热”。
4. 按**返回 / ESC 按钮**退出。
## ⚙️ 设置(脚本头部)
- `SCAN_SEC` — 跟踪扫描的持续时间(默认 1 秒)。
- `LO` / `HI` — RSSI 范围(远 → 近,默认 −100 → −35 dBm)。请根据你观察到的实际 dBm 值进行调整。
## 📝 技术说明
- 反馈**100% 在屏幕上呈现**:在 Bruce 1.15 中,无法从 JS 脚本中实时控制音频(`audio.tone`)和 RGB LED——视觉雷达是可靠的解决方案。
- 使用**随机 MAC** 的设备(AirPods、现代追踪器)在按地址跟踪时可能会发生“跳跃”;按**名称**跟踪通常会更稳定。
- 目标必须处于**广播**(advertising)状态才能被检测到。
## 🖥️ 兼容性
专为运行 **Bruce** 的 **LilyGO T-Embed CC1101**(320×170 屏幕)设计。应该也能在其他带有彩色屏幕的 Bruce 设备上运行。
## ☕ 赏杯咖啡?
如果你喜欢这个脚本:
## 📄 许可证
MIT — 详见 [LICENSE](LICENSE)。作者:**koua29** (Arnaud)。
## 📄 许可证
MIT — 详见 [LICENSE](LICENSE)。作者:**koua29** (Arnaud)。标签:BLE, CMS安全, JavaScript, 信号追踪, 嵌入式, 数据可视化, 物联网, 硬件工具, 自定义脚本, 蓝牙