Mobasheera/Atomberg-BLDC-IR-Remote

GitHub: Mobasheera/Atomberg-BLDC-IR-Remote

Atomberg BLDC红外遥控器是一款开源的Android应用程序,用于控制Atomberg BLDC吊扇。

Stars: 2 | Forks: 0

IR Remote

Open-source Android IR remote for Atomberg BLDC fans using verified NEC infrared commands.

## 概述 Atomberg BLDC 红外遥控器是一款开源的 Android 应用程序,允许兼容的红外(IR)发射器智能手机控制 Atomberg BLDC 吊扇。 该应用程序通过逆向工程和验证 Atomberg 的红外命令集开发而成,提供了一种轻量级且可靠的替代物理遥控器的方法。它直接使用 Android 的 ConsumerIrManager API 以 NEC 格式传输红外命令,无需互联网访问、蓝牙、Wi-Fi 或任何外部硬件。 当前版本支持基本的吊扇控制,包括电源、速度选择、增强模式、定时模式和睡眠模式。 ## 功能 * 电源开关控制 * 速度选择(1-5 级) * 支持增强模式 * 支持定时模式 * 支持睡眠模式 * 使用 Android ConsumerIrManager 进行原生红外传输 * 验证的 NEC 协议实现(38 kHz) * 按钮按下时的触觉反馈 * 轻量级且响应迅速的界面 * 无广告 * 无需互联网连接 * 开源项目 ## 截图 ### 主界面

Main Interface

主界面

该应用程序复制了原始 Atomberg 遥控器的布局,同时提供从支持的 Android 设备直接进行红外传输。 原始遥控器布局被有意保留,以提供熟悉的用户体验。通过尽可能匹配物理遥控器,现有 Atomberg 用户可以在不学习新界面的情况下操作应用程序。这种方法使应用程序适用于所有年龄和技术背景的用户,包括可能不太适应现代智能手机应用程序的用户。 ## 支持的功能 以下功能已通过 Atomberg BLDC 吊扇验证和测试: | 功能 | 状态 | | ----------- | ----------------- | | 电源 | ✅ 支持 | | 速度 1 | ✅ 支持 | | 速度 2 | ✅ 支持 | | 速度 3 | ✅ 支持 | | 速度 4 | ✅ 支持 | | 速度 5 | ✅ 支持 | | 增强模式 | ✅ 支持 | | 定时模式 | ✅ 支持 | | 睡眠模式 | ✅ 支持 | | LED 控制 | ❌ 未实现 | ### 验证的 NEC 命令 | 功能 | NEC 代码 | | -------- | ---------- | | 电源 | `6E91F300` | | 速度 1 | `748BF300` | | 速度 2 | `6F90F300` | | 速度 3 | `758AF300` | | 速度 4 | `6C93F300` | | 速度 5 | `7788F300` | | 增强模式 | `708FF300` | | 定时模式 | `6996F300` | | 睡眠模式 | `718EF300` | ## 要求 ### 支持的设备 此应用程序需要配备内置红外(IR)发射器的 Android 设备。 ### 测试过的设备 | 设备 | 状态 | | ----------------- | -------- | | Redmi Note 10 Pro | ✅ 测试 | | Redmi Note 8 Pro | ✅ 测试 | ### 吊扇兼容性 以下 Atomberg 吊扇系列已知使用支持的红外命令集: #### Aris 系列 * Aris * Aris Smart * Aris Starlight * Aris Starlight Smart * Aris Contour * Aris Gladius * Aris Gladius Smart #### Studio 系列 * Studio+ * Studio Smart+ * Studio Nexus #### Erica 系列 * Erica * Erica Smart * Erica Meta * Erica Nuvo #### Renesa 系列 * Renesa+ * Renesa Smart+ * Renesa Prime Remote * Renesa Elite * Renesa Halo #### 其他型号 * Ikano * Efficio * Efficio 2 * Efficio Prime ### 验证的硬件 该应用程序已由个人测试和验证,与以下组件兼容: | 组件 | 型号 | |------------|------------| | 吊扇 | Atomberg Erica Meta | | 手机 | Redmi Note 10 Pro | | 手机 | Redmi Note 8 Pro | 与更多支持型号的兼容性基于共享的红外命令集和社区验证。 ## 安装 1. 从 [发布](https://github.com/Mobasheera/Atomberg-BLDC-IR-Remote/releases/latest) 页面下载最新版本的 APK。 2. 在配备红外发射器的 Android 设备上安装 APK。 3. 启动应用程序并开始控制您的吊扇。 ## 替代遥控器配置 对于喜欢第三方红外遥控器应用程序的用户,此存储库还提供了预配置的遥控器配置文件,包含与该应用程序相同的已验证 Atomberg NEC 命令集。 ### 下载 * [IRplus 配置](https://github.com/Mobasheera/Atomberg-BLDC-IR-Remote/blob/main/remote-configs/Atomberg_Fan.irplus) * [红外发射器远程备份](https://github.com/Mobasheera/Atomberg-BLDC-IR-Remote/blob/main/remote-configs/irblaster_backup_1780420947147.json) 这些文件可以直接导入到它们各自的应用程序中,并提供控制兼容 Atomberg BLDC 吊扇的另一种方法。 ## 使用方法 1. 打开应用程序。 2. 将手机的红外发射器对准吊扇接收器。 3. 按下虚拟遥控器上的所需按钮。 4. 命令立即传输。 有关支持的命令,请参阅上面的 **支持的功能** 部分。 ## 工作原理 该应用程序使用 Android 的 `ConsumerIrManager` API 访问支持设备上可用的红外发射器。 当按下按钮时: 1. 应用程序生成 NEC 格式的红外数据包。 2. 使用已验证的 Atomberg 命令代码对数据包进行编码。 3. 以 38 kHz 的载波频率传输信号。 4. 吊扇接收并解码命令。 5. 吊扇执行相应的操作。 应用程序在本地执行所有信号生成,无需: * 互联网连接 * 蓝牙 * Wi-Fi * 外部硬件 ## 红外协议细节 ### 协议 | 参数 | 值 | | ----------------- | --------- | | 协议 | NEC | | 载波频率 | 38 kHz | | 位顺序 | LSB First | | 数据长度 | 32-bit | ### 时序参数 | 参数 | 值 | | ------------- | ------- | | 头标记 | 9000 µs | | 头空间 | 4500 µs | | 位标记 | 560 µs | | 逻辑 0 空间 | 560 µs | | 逻辑 1 空间 | 1690 µs | | 尾标记 | 560 µs | ### 命令结构 应用程序使用已验证的 Atomberg 命令值动态生成 NEC 红外数据包。 示例: ``` POWER = 6E91F300 SLEEP = 718EF300 BOOST = 708FF300 ``` 生成的脉冲序列使用 Android 的 ConsumerIrManager API 以 38 kHz 的频率传输。 ### 逆向工程注意事项 初始的 Atomberg 红外命令集参考了 Glen Zac 对 Atomberg BLDC 吊扇红外代码的研究: 在真实硬件上验证命令集时,发现发布的睡眠命令在测试的吊扇上无法正常工作。该项目中包含的睡眠命令是在原始文档化的命令在测试中无法正常工作时独立逆向工程、验证和测试的 Atomberg Erica Meta 吊扇。 在测试过程中还发现了其他未记录的 NEC 命令。这些命令被发现用于控制吊扇的 LED 指示器状态,并似乎暴露了用于诊断、维护或制造用途的功能。 该应用程序中包含的睡眠命令是在原始文档化的命令在测试中无法正常工作时,在 Atomberg Erica Meta 吊扇上独立逆向工程和验证的。 发现的未记录命令: | 功能 | NEC 代码 | | -------- | ---------- | | 1 LED | `7A85F300` | | 2 LED | `7986F300` | | 6 LED | `738CF300` | 这些命令有意从应用程序中排除,因为它们的行为尚未在所有支持型号的 Atomberg 吊扇上完全记录或验证。 ## 项目结构 ``` Atomberg-BLDC-IR-Remote/ ├── app/ │ ├── src/ │ │ ├── main/ │ │ │ ├── java/ │ │ │ │ └── com/moba/atombergremote/ │ │ │ │ └── MainActivity.java │ │ │ ├── res/ │ │ │ │ ├── drawable/ │ │ │ │ │ ├── remote.png │ │ │ │ │ └── launcher icons │ │ │ │ ├── layout/ │ │ │ │ │ └── activity_main.xml │ │ │ │ └── mipmap/ │ │ │ └── AndroidManifest.xml │ │ └── build.gradle │ ├── remote-configs/ │ ├── Atomberg_Fan.irplus │ └── irblaster_backup_1780420947147.json │ ├── README.md ├── LICENSE ├── build.gradle.kts ├── settings.gradle.kts └── gradle/ ``` ### 关键组件 | 组件 | 目的 | | ----------------------------------- | ------------------------------------------------------------------ | | MainActivity.java | 处理按钮交互和 NEC 红外传输 | | activity_main.xml | 定义遥控控制用户界面 | | remote.png | 用于复制原始 Atomberg 遥控器的背景图像 | | ConsumerIrManager | 用于红外传输的 Android API | | Atomberg_Fan.irplus | 包含已验证 Atomberg NEC 命令的 IRplus 配置 | | irblaster_backup_1780420947147.json | 包含已验证 Atomberg NEC 命令的 IR Blaster Remote 备份 | ## 许可证 本项目采用 MIT 许可证。 您可以根据许可证条款免费使用、修改、分发和修改此项目。 有关详细信息,请参阅 [LICENSE 文件](https://github.com/Mobasheera/Atomberg-BLDC-IR-Remote/blob/main/LICENSE)。 ## 致谢 特别感谢: * Glen Zac 为 Atomberg BLDC 吊扇红外命令和协议信息提供文档,为该项目提供了初始参考。 * Android 开源项目 (AOSP) 提供了 ConsumerIrManager API。 * Atomberg 用户社区分享兼容性信息和多个吊扇型号的测试结果。 ### 项目贡献 作为本项目的一部分,进行了额外的协议验证、命令验证、睡眠命令逆向工程、Android 实现、测试和文档工作。 ## 作者 由 **Mobashshir Ahsan (Mobasheera)** 开发和维护。 * GitHub: https://github.com/Mobasheera * Linktree: https://linktr.ee/mobashshir
标签:38kHz红外频率, Android应用, Atomberg, BLDC电机, DNS解析, JS文件枚举, NEC协议, 云资产清单, 域名枚举, 增强模式, 定时模式, 开源项目, 无广告, 无需网络, 智能家居, 智能家电, 消费级红外管理API, 物理遥控器替代, 用户界面, 红外发射器, 红外命令, 红外遥控, 节能模式, 远程控制, 逆向工程, 速度调节