allansomensi/openhx
GitHub: allansomensi/openhx
一个非官方开源工具,为 Line 6 HX 系列吉他效果器提供跨平台的预设管理功能,填补官方软件不支持 Linux 等系统的空白。
Stars: 1 | Forks: 0
# 🎛️ OpenHX
OpenHX 是一个社区驱动的工具,用于在任何操作系统上管理 Line 6 HX 系列设备(HX Stomp、HX Stomp XL 和 Helix 系列)。它同时提供 **命令行界面** 和 **图形界面**,不依赖 HX Edit 或任何官方 Line 6 软件。
## 🎯 动机
HX Edit —— Line 6 HX 设备的官方配套软件 —— 仅支持 Windows 和 macOS。Linux 用户、BSD 用户以及任何运行不支持操作系统的人无法管理他们的预设、更新设置或以编程方式与其硬件交互。
OpenHX 的构建正是为了填补这一空白。
## ✨ 功能
- ✅ 列出预设
- ✅ 选择预设
- 🚧 重命名预设
- 🚧 导入和导出预设(`.hlx` 文件)
- 🚧 重排模块
- 🚧 切换单个效果模块
- 🚧 管理 Impulse Responses (IRs)
- 🚧 配置 Global EQ
- 🚧 带有预设浏览器和编辑器的完整 GUI
- 🚧 支持多种 HX 设备
## ✅ 支持的设备
| 设备 | 状态 |
|---|---|
| HX Stomp | 🚧 计划中 |
| HX Stomp XL | ✅ 已验证 |
| HX Effects | 🚧 计划中 |
| Helix Floor | 🚧 计划中 |
| Helix LT | 🚧 计划中 |
## 📥 安装
**前置条件:** Rust 工具链(`rustup`),`libusb` 1.0+。
```
git clone https://github.com/allansomensi/openhx
cd openhx
cargo build --release
```
二进制文件将位于 `target/release/openhx`。
## 💻 使用方法
### CLI
```
# 列出所有 presets
openhx-cli preset list
# 通过索引和 bank 选择特定 preset
openhx-cli preset select --preset --bank
```
### GUI
```
openhx
```
## 🔬 工作原理
OpenHX 使用与 HX Edit 相同的供应商特定协议,通过 **USB 批量传输** 与 HX 设备通信。
该协议完全通过 **黑盒** 方式进行逆向工程 —— 通过捕获和分析 HX Stomp XL 与官方 HX Edit 软件之间的 USB 流量。在此过程中,未访问或使用任何 Line 6 源代码、固件或专有 SDK。逆向工程**严格仅为了与 Line 6 官方不支持的平台实现互操作性**。
完整协议记录在 [`docs/protocol/`](./docs/protocol/README.md) 中。
## ⚖️ 法律声明
**OpenHX 是一个非官方的、社区驱动的开源项目。它不以任何方式隶属于 Line 6 或 Yamaha Guitar Group, Inc.,也未获得其认可、赞助或关联。**
"Line 6"、"HX Stomp"、"HX Effects"、"Helix" 和 "HX Edit" 是 Yamaha Guitar Group, Inc. 的商标。所有商标均是其各自所有者的财产,此处使用仅用于描述性和指名目的。
本项目执行的逆向工程完全通过黑盒方式进行 —— 通过观察设备与官方软件之间的 USB 通信 —— 且仅旨在在官方不支持的平台实现互操作性。未访问或包含任何专有代码、固件或商业秘密。
OpenHX 根据 [MIT 许可证](./LICENSE) 发布。
标签:CLI, GUI, HX Stomp, Impulse Response, Libusb, Line 6 Helix, Linux 音频工具, PE 加载器, Rust, USB 通信, WiFi技术, 协议逆向工程, 可视化界面, 吉他效果器, 文档结构分析, 硬件接口, 网络流量审计, 设备固件交互, 通知系统, 音乐制作, 音乐设备管理, 音频编辑器, 预设管理, 黑盒测试