timschneeb/GalaxyBudsClient
GitHub: timschneeb/GalaxyBudsClient
跨平台非官方 Galaxy Buds 管理工具,通过逆向工程实现桌面端配置、诊断和固件刷写功能。
Stars: 4776 | Forks: 260
English | 中文(简体) | 中文(繁體) | Русский | 日本語 | Українська | 한국어 | Česky | Türkçe | Ελληνικά | Português | Tiếng Việt
Attention: readme files are maintained by translators and may become outdated from time to time. For the newest info rely on the English version.
Galaxy Buds Client
An unofficial manager for Galaxy Buds devices
Key Features • Download • How it works • Contributing • Credits • License
## 主要功能 配置和控制任何 Samsung Galaxy Buds 设备,并将其集成到您的桌面环境中。 除了官方 Android 应用程序中的标准功能外,该项目还帮助您释放耳机的全部潜力,并实现了以下新功能: * 详细的电池统计信息 * 诊断和出厂自检 * 大量隐藏的调试信息 * 可自定义的长按触摸操作 * 固件刷写、降级 (Buds+, Buds Pro) * 以及更多... 如果您正在寻找旧版固件二进制文件,请查看这里:[https://github.com/timschneeb/galaxy-buds-firmware-archive](https://github.com/timschneeb/galaxy-buds-firmware-archive#galaxy-buds-firmware-archive) ## 下载 提供多种 Linux 软件包: * [Flatpak (所有 Linux 发行版)](#flatpak) * [AUR package (Arch Linux)](#aur-package) 在 [release](https://github.com/timschneeb/GalaxyBudsClient/releases) 版块获取 Windows 二进制文件。安装前请阅读发布说明。 在此下载桌面版: 在此下载 Android 移动版(付费): ### Flatpak 适用于所有 Linux 发行版的通用二进制包。除非手动设置,Flatpak 版本不支持开机自启。您可以使用 `galaxybudsclient /StartMinimized` 在启动时静默运行应用程序。 可在 FlatHub 下载:https://flathub.org/apps/me.timschneeber.GalaxyBudsClient ``` flatpak install me.timschneeberger.GalaxyBudsClient ```
### AUR 软件包
由 @joscdk 维护的适用于 Arch Linux 的 [AUR package](https://aur.archlinux.org/packages/galaxybudsclient-bin/) 同样可用:
```
yay -S galaxybudsclient-bin
```
### winget
Windows 安装包也可以通过 Windows Package Manager (winget) 进行安装
```
winget install timschneeb.GalaxyBudsClient
```
## 工作原理
为了使用 Bluetooth 无线技术,设备必须能够解释特定的 Bluetooth 配置文件,这些文件使 Bluetooth 设备能够彼此高效通信。
Galaxy Buds 定义了两种 Bluetooth 配置文件:用于音频流/控制的 A2DP (Advanced Audio Distribution Profile) 和用于传输二进制流的 SPP (Serial Port Profile)。制造商通常使用此配置文件(依赖于 RFCOMM 协议)来交换配置数据、执行固件更新或向 Bluetooth 设备发送其他命令。
尽管 A2DP 配置文件是标准化且有文档记录的,但此 RFCOMM 协议交换的二进制数据格式通常是专有的。
为了逆向工程此数据格式,我首先分析了耳机发送的二进制流结构。后来,我还反汇编了官方 Android Galaxy Buds 应用程序,以更深入地了解这些设备的内部工作原理。您可以在下面找到我记录的一些(不完整的)笔记。查看源代码以获取有关协议结构的更详细信息。
Galaxy Buds (2019) Notes • Galaxy Buds Plus Notes
在仔细研究 Galaxy Buds Plus 时,我还注意到了一些不寻常的功能,例如固件调试模式、未使用的配对模式和 Bluetooth 密钥转储程序。我在此处记录了这些发现: 目前,我正在研究和逆向工程 Buds+ 的固件。在撰写本文时,我已经创建了两个工具来获取和分析官方固件二进制文件。在这里查看它们: 使用此脚本从您的 Buds Pro 实时流式传输头部追踪数据:[timschneeb/BudsPro-Headtracking](https://github.com/timschneeb/BudsPro-Headtracking) ## 资源 * Android 图标中使用的耳机素材由来自 [Flaticon](https://www.flaticon.com/) 的 [Archival](https://www.flaticon.com/authors/archival) 制作 ## 许可证 本项目基于 [GPLv3](https://github.com/timschneeb/GalaxyBudsClient/blob/master/LICENSE) 授权。它与 Samsung 无关,也不受其任何形式的监督。 ``` THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ```标签:Android, DNS解析, DSL, Galaxy Buds Live, Galaxy Buds Plus, Galaxy Buds Pro, Geek工具, Samsung, TWS耳机, 三星 Galaxy Buds, 可穿戴设备, 固件刷写, 固件更新, 均衡器调节, 多人体追踪, 开发者选项, 开源项目, 电脑连接耳机, 系统托盘应用, 耳机续航, 耳机设置, 蓝牙低功耗 (BLE), 蓝牙耳机管理, 触控板设置, 设备管理工具, 跨平台应用, 非官方客户端

