jackspirou/libstealthtech

GitHub: jackspirou/libstealthtech

一个针对Lovesac StealthTech音响系统的开源BLE控制库和工具集,通过完全逆向的协议提供比官方App更可靠的设备控制能力。

Stars: 1 | Forks: 0

# libstealthtech [![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) [![Rust](https://img.shields.io/badge/rust-1.75%2B-orange.svg)](https://www.rust-lang.org) [![Ko-fi](https://img.shields.io/badge/Buy_Me_a_Coffee-Ko--fi-FF5E5B?logo=ko-fi&logoColor=white)](https://ko-fi.com/jackspirou) Lovesac StealthTech 系统是一套嵌入在模块化家具中的 Harman Kardon 环绕声系统,通过 BLE 连接的手机 App 进行控制,但该 App 常常不稳定。本项目提供了一个可靠的开源替代方案,可在任何带有蓝牙适配器的平台上运行。 **StealthTech BLE 协议已被完全逆向工程。** 本项目可以通过 BLE 控制音量、输入源、EQ、声音模式、电源等功能。 **立即访问 [stealthtech.app](https://stealthtech.app) 体验** —— 无需安装 App。在手机上的 Chrome 浏览器中打开该页面,即可通过 Web Bluetooth 瞬间连接到您的系统。

StealthTech Remote web app connected to a Sound + Charge system

## 仓库结构 ``` libstealthtech/ ├── rust/ │ ├── protocol/ # libstealthtech-protocol (WASM-compatible types) │ ├── core/ # libstealthtech-core library crate │ │ └── src/ │ │ ├── ble/ # BLE scanning, connection, GATT discovery │ │ └── device/ # High-level StealthTechDevice API │ ├── cli/ # CLI binary crate (stealthtech) │ ├── bridge/ # FFI bridge for Swift/Java bindings (future) │ └── wasm/ # WebAssembly bindings for Web Bluetooth UI ├── swift/ # iOS/macOS bindings (future) ├── java/ # Android/Kotlin bindings (future) ├── node/ # Node.js bindings (future) ├── docs/ │ ├── architecture.md # Crate graph, BLE state machine, GATT flow │ ├── protocol-mapping.md # Complete BLE protocol specification │ ├── reverse-engineering.md # RE methodology and tools │ ├── firmware-analysis.md # MCU firmware binary analysis │ └── hardware-teardown.md # Complete technical teardown ├── CONTRIBUTING.md ├── SECURITY.md └── LICENSE ``` ## 快速开始 ``` # Clone 和 build git clone https://github.com/jackspirou/libstealthtech.git cd libstealthtech cargo build --release # 扫描 StealthTech 设备 ./target/release/stealthtech scan # 控制系统 ./target/release/stealthtech volume 18 # Set volume (0-36) ./target/release/stealthtech input hdmi # Switch to HDMI ARC ./target/release/stealthtech mode movies # Movies sound preset ./target/release/stealthtech bass 12 # Set bass (0-20) ./target/release/stealthtech power off # Enter standby ``` ### 逆向工程工具 ``` # 扫描所有附近的 BLE 设备 ./target/release/stealthtech sniff scan-all # Dump 完整的 GATT profile ./target/release/stealthtech sniff discover --json my_gatt_dump.json # 实时监控 BLE 通知 ./target/release/stealthtech sniff monitor --log traffic.tsv ``` ## 状态 | Layer | Status | |-------|--------| | BLE Discovery & Connection | **Working** -- scanning, auto-reconnect with exponential backoff | | GATT Service Enumeration | **Working** -- full profile dump and read-all tools | | BLE Traffic Monitoring | **Working** -- real-time notification capture with logging | | Protocol Command Encoding | **Complete** -- all commands fully mapped with real UUIDs | | Volume / Input / Mode Control | **Working** -- volume, bass, treble, input, sound mode, mute | | EQ / Balance / Power | **Working** -- center, rear, balance, quiet mode, power on/off | | Notification Decoding | **Working** -- all 15 response codes parsed from UpStream | | Firmware Version Query | **Working** -- MCU, DSP, EQ version retrieval | | Web Remote ([stealthtech.app](https://stealthtech.app)) | **Live** -- Web Bluetooth UI with full device control | | Documentation Site | **Live** -- hosted at [stealthtech.app/docs/](https://stealthtech.app/docs/) | ## 硬件背景 StealthTech 由以下供应商组件构建而成: | Component | Vendor | Key Detail | |-----------|--------|------------| | Center Channel (EE4034) | Harman International | 242W RMS, BLE + HDMI ARC | | Subwoofer (EE0362) | Harman International | 50W RMS, 8" driver, WiSA receiver | | Sound+Charge Sides | Harman International | 52W RMS each, 6.5" + tweeter | | WiSA Module (444-2250) | Summit Semiconductor | NXP MKW21D512 + Summit SWM908 ASIC, 5 GHz | | Wireless Charging Pad | jjPlus Corp (Taiwan) | Qi standard, FCC ID 2A8R5QST008A | | BLE Control | Harman International | BLE 4.2+, app control only | 中置声道充当 BLE GATT server。WiSA 链路(中置声道到低音炮到有线扬声器)是一个独立的 5 GHz 无线电 —— 我们仅通过 BLE 控制中置声道来调整音量、输入源、EQ 和其他设置。 ## 如何提供帮助 协议已被映射,但跨硬件变体的测试非常有价值。 详细说明请参见 [CONTRIBUTING.md](CONTRIBUTING.md)。 贡献方式: 1. **在您的硬件上进行测试** —— 运行 CLI 并报告任何问题 2. **分享 GATT dumps** —— `stealthtech sniff discover --json gatt_dump.json` 3. **报告设备名称** —— 不同的固件版本可能会以不同方式进行广播 4. **代码贡献** —— Swift/Android bindings、GUI 应用程序、附加功能 ## 法律 本项目仅对您拥有的硬件执行标准的 Bluetooth Low Energy 操作(扫描、连接、读/写 GATT characteristics)。这在功能上与官方 App 的操作相同,只是来自不同的客户端。 本项目不会: - 绕过任何 DRM 或加密 - 修改设备固件 - 访问任何 Lovesac 服务器或 API - 重新分发任何 Lovesac 或 Harman Kardon 知识产权 ## 许可证 MIT License。参见 [LICENSE](LICENSE)。
标签:AI工具, BLE, FFI, GATT, Harman Kardon, Lovesac, Rust, Sound + Charge, StealthTech, WASM, WebAssembly, 云资产清单, 协议分析, 可视化界面, 嵌入式系统, 开源库, 开源软件, 搜索引擎爬虫, 文档结构分析, 智能家居, 权限提升, 物联网, 网络流量审计, 蓝牙低功耗, 设备控制, 跨平台开发, 逆向工程, 通知系统, 通知系统, 音频控制