『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 13392|回复: 100

[插件集成] [重磅更新]: 极米投影仪插件完美支持开机!

  [复制链接]

6

主题

73

帖子

1160

积分

论坛技术达人

积分
1160
金钱
1082
HASS币
20
发表于 2022-5-4 17:05:20 | 显示全部楼层 |阅读模式
本帖最后由 manymuch 于 2024-3-27 14:26 编辑

缘由
家里有有个极米投影仪Z6X, 一直想接入HA, 然而新的极米系统已经关闭了ADB开启的入口(在工程模式里面已经没有ADB了), 所有HA自带的android tv 集成就不能用了.


其他相关工作
感谢论坛里这些朋友提供的极米投影仪各个接入教程

https://bbs.hassbian.com/thread-4998-1-1.html
https://bbs.hassbian.com/thread-7105-1-1.html
https://bbs.hassbian.com/thread-8363-1-1.html
https://bbs.hassbian.com/thread-11830-1-1.html

有的提供了UDP协议接口, 有的基于Node-Red集成, 有的自己写了HA 集成.
虽然基本够用, 但是偶尔还是会有一点小问题, 于是这两天学了一点HA 集成开发的方法, 基于async写了一个 稍微"正规"一点的HA插件.
在此抛砖引玉, 希望能吸引大佬门一起开发这个极米投影仪HA插件.
https://github.com/manymuch/Xgimi-4-Home-Assistant


使用方法
如果想直接使用, 可以下载这个包: xgimi.zip (5.28 KB, 下载次数: 246) , 放入custom_components内, 重启一下HA
然后在configuration.yaml中填入

remote:
- platform: xgimi
  name: z6x  # 随便起个名字
  host: 192.168.0.115  # 极米投影仪IP
  token: "12D7C7899B9F80FFFFFF3043524B544D"  # BLE manufacture data


再重启一下HA, 就可以看到一个remote.z6x的实体了


可以通过调用remote service来控制

service: remote.send_command
data:
    command: volumeup
target:
    entity_id: remote.z6x

目前支持的command有
play, pause, power, back, home, menu, right, left
up, down, volumedown, volumeup,  poweron, poweroff, volumemute
如果输入的command不在上面的范围内, 就会直接转换成语音控制,
比如

service: remote.send_command
data:
  command: 关屏
target:
  entity_id: remote.z6x

就会实现 "光关机", 所以只要语音控制能支持的, 都可以通过这个方法间接实现

关于开机
目前开机是基于发送ble advertisement实现的, 这就需要你的HA宿主机有一个可以用的蓝牙模块, 我是在树莓派上测试的, 不需要额外的设置, 如果是其他机器或者自己加装的USB 蓝牙模块, 可能需要一些特殊的设置。
每一台投影仪都有自己的token,按照以下步骤可以嗅探到自己投影仪的token:
1. 你需要一个ios设备, 下载 bluetooth smart scanner app
2. 将你的投影仪主机彻底断开电源
3. 不停的按遥控器上的开机按键,这时在bluetooth smart scanner app上应该可以找到遥控器发射的ble advertisement信号
4. 在上面的信号中, 找到manufactorer data
5. 建议先通过EFR connect. 这个安卓app, 验证下能否使用上面的manufactorer data唤起投影仪
6. 如果成功了, 把这一串填入插件的token那一项, 重启HA

Dashboard使用样例
基于tv-card可以构建一个极米投影仪遥控器界面,
以下ui设置共参考
https://github.com/manymuch/Xgim ... v-card-example.yaml


总结
该插件还在非常初级的阶段, 功能, 稳定性方面都还有很多空间.
本来想做成通过config flow UI集成的插件, 然而学艺不精, 折腾了半天没做出来, 暂时先做成基于yaml的, 希望有大佬能够指点一下.

走过路过麻烦在github上按一个星星呀, 支持我开发的动力!










评分

参与人数 5金钱 +42 HASS币 +20 收起 理由
relliky + 6 论坛有你更精彩!
deliwanger + 1 感谢楼主分享!
+ 20 + 20 高手,这是高手!
fenixdeng + 5
firewater + 10 论坛有你更精彩!

查看全部评分

回复

使用道具 举报

0

主题

7

帖子

60

积分

注册会员

Rank: 2

积分
60
金钱
52
HASS币
0
发表于 2022-5-4 22:50:36 | 显示全部楼层
牛  试用试用
回复

使用道具 举报

0

主题

9

帖子

80

积分

注册会员

Rank: 2

积分
80
金钱
71
HASS币
0
发表于 2022-5-30 09:32:54 | 显示全部楼层
有个疑问,极米的投影现在是没法用 UDP 开机了吗?设备关闭后 ip 都 ping 不通了。
回复

使用道具 举报

10

主题

63

帖子

401

积分

中级会员

Rank: 3Rank: 3

积分
401
金钱
338
HASS币
0
发表于 2022-6-3 18:30:37 | 显示全部楼层
支持一下!!顺便偷师学习一下插件开发
回复

使用道具 举报

0

主题

11

帖子

78

积分

注册会员

Rank: 2

积分
78
金钱
67
HASS币
0
发表于 2022-6-28 20:24:57 | 显示全部楼层

支持一下!!
回复

使用道具 举报

0

主题

3

帖子

52

积分

注册会员

Rank: 2

积分
52
金钱
49
HASS币
0
发表于 2022-8-13 16:18:09 | 显示全部楼层
本帖最后由 bottomer 于 2022-8-13 16:25 编辑

已经成功接入了,支持,非常感谢!
参考着把电视遥控也接入了
https://www.home-assistant.io/integrations/braviatv/

回复

使用道具 举报

6

主题

73

帖子

1160

积分

论坛技术达人

积分
1160
金钱
1082
HASS币
20
 楼主| 发表于 2022-8-14 14:22:14 | 显示全部楼层
marc1 发表于 2022-5-30 09:32
有个疑问,极米的投影现在是没法用 UDP 开机了吗?设备关闭后 ip 都 ping 不通了。 ...

是的, 至少我手上的极米是这样的, 关机后整个网卡应该都关了, 只能通过蓝牙遥控器开机
回复

使用道具 举报

43

主题

407

帖子

3613

积分

元老级技术达人

积分
3613
金钱
3201
HASS币
136
发表于 2022-9-2 23:36:01 | 显示全部楼层
刚买了极米。试试。谢谢
回复

使用道具 举报

55

主题

618

帖子

3774

积分

论坛元老

Rank: 8Rank: 8

积分
3774
金钱
3151
HASS币
20
发表于 2022-9-3 12:36:33 | 显示全部楼层
智能家居之走火入魔系列 用了apple tv加极米 搞到遥控器没什么用了 只能开机就掉在一边 所以用esp继电器给遥控器短接模拟短按开机键 关机给api命令开机
9C3D972C-26B3-4A72-B505-A3B0612B7DE3.jpeg
CF7ABB57-EF3C-437B-8902-311CF31CEFA5.jpeg
FDD1EF5E-C440-45FB-8E5F-52338B5C50EE.jpeg
E14BB1CE-C357-4B03-A070-E5340E336E46.jpeg
F5FE3789-7837-46B0-B26C-8674D20B3F61.png
回复

使用道具 举报

6

主题

73

帖子

1160

积分

论坛技术达人

积分
1160
金钱
1082
HASS币
20
 楼主| 发表于 2022-9-3 15:04:43 | 显示全部楼层
最新发现: 极米手机app可以通过发送蓝牙开启极米投影仪
Screenshot_20220903-150205.jpg
而且这个过程不需要蓝牙配对, 貌似是一种BLE广播的形式.
简单尝试了一下利用wireshark对hci.log进行抓包分析, 还没有发现有用的信息.
理论上只要能够用树莓派模拟这个蓝牙广播, 就可以解决开机问题了, 不知道有没有大佬指点一下蓝牙抓包
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-4-20 10:13 , Processed in 0.081806 second(s), 35 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表