找回密码
 立即注册
查看: 789|回复: 2

[经验分享] 小米射频发射器的逆天操作逻辑

[复制链接]

4

主题

28

回帖

504

积分

高级会员

积分
504
金钱
472
HASS币
0
发表于 2024-12-20 22:55:27 | 显示全部楼层 |阅读模式
本帖最后由 长洲中登 于 2024-12-21 11:21 编辑

终于知道小米的这款射频发射器的操作逻辑了https://home.miot-spec.com/s/wfxx.motor.ycmkq
这款射频接入miot很久了,小米官方的插件也有实体,但一直不知道怎么操作
今天看了github上官方插件的一个issue里,一位老哥试出来的方法:
https://github.com/XiaoMi/ha_xiaomi_home/issues/90
先Unset,再Set某个状态选择器,才算触发按下了信号发射按钮。


据此写了个简易模板转换一下实体
cover:
  - platform: template
    covers:
      xiaomi_garage_door:
        device_class: garage
        friendly_name: "小米车库门"
        open_cover:
          action: script.xiaomi_open_cover
        close_cover:
          action: script.xiaomi_close_cover
        stop_cover:
          action: script.xiaomi_stop_cover


对应的脚本如下(以停止为例):

xiaomi_stop_cover:
  alias: xiaomi_stop_cover
  sequence:
  - action: select.select_option
    metadata: {}
    data:
      option: Unset
    target:
      entity_id: select.wfxx_ycmkq_460e_keyfour_sta
  - delay:
      hours: 0
      minutes: 0
      seconds: 0
      milliseconds: 200
  - action: select.select_option
    metadata: {}
    data:
      option: Set
    target:
      entity_id: select.wfxx_ycmkq_460e_keyfour_sta
  description: ''
  icon: mdi:garage-alert


Unset后延迟200ms再执行Set,确保生效,最终效果见附件

转换实体

转换实体

原始实体

原始实体

评分

参与人数 3金钱 +24 收起 理由
awaychan + 2 我来瀚思就为看你!
隔壁的王叔叔 + 12
lqf1206 + 10 感谢楼主分享!

查看全部评分

回复

使用道具 举报

1

主题

7

回帖

110

积分

注册会员

积分
110
金钱
102
HASS币
0
发表于 2025-4-2 11:25:53 | 显示全部楼层
请问报错:未找到动作 script.xiaomi_close_cover 所使用的动作 cover.close_cover,脚本应该写 config 还是 scrips 里
回复

使用道具 举报

0

主题

18

回帖

409

积分

中级会员

积分
409
金钱
391
HASS币
0
发表于 2025-5-9 17:53:31 | 显示全部楼层
本帖最后由 hugeng 于 2025-5-9 22:27 编辑
amisher 发表于 2025-4-2 11:25
请问报错:未找到动作 script.xiaomi_close_cover 所使用的动作 cover.close_cover,脚本应该写 config 还 ...

我测试了没有问题。
请参考我的代码,首先要弄清楚自己的三个键:上升、下降、停止的ID。
放下幕布,我这边测试是放22秒后停止,不然幕布会太靠下了,大家可以自行调整。

/homeassistant/configuration.yaml 中增加一个窗帘实体

cover:
  - platform: template
    covers:
      ci_wo_mu_bu:  # 这是你的百叶窗实体名称
        device_class: garage
        friendly_name: "次卧幕布"
        open_cover:
          service: script.close_screen # 上升帘子的脚本
        close_cover:
          service: script.open_screen # 放下帘子的脚本
        stop_cover:
          service: script.stop_screen # 暂停动作的脚本


/homeassistant/scripts.yaml 增加三个脚本

stop_screen:
  alias: stop_screen
  sequence:
  - action: select.select_option
    metadata: {}
    data:
      option: Unset
    target:
      entity_id: select.wfxx_cn_547662879_ycmkq_keyfour_sta_p_3_5
  - delay:
      hours: 0
      minutes: 0
      seconds: 0
      milliseconds: 200
  - action: select.select_option
    metadata: {}
    data:
      option: Set
    target:
      entity_id: select.wfxx_cn_547662879_ycmkq_keyfour_sta_p_3_5
  description: 停止幕布
  icon: mdi:pause
open_screen:
  alias: open_screen
  sequence:
  - action: select.select_option
    metadata: {}
    data:
      option: Unset
    target:
      entity_id: select.wfxx_cn_547662879_ycmkq_keyone_sta_p_3_2
  - delay:
      hours: 0
      minutes: 0
      seconds: 0
      milliseconds: 200
  - action: select.select_option
    metadata: {}
    data:
      option: Set
    target:
      entity_id: select.wfxx_cn_547662879_ycmkq_keyone_sta_p_3_2
  - delay:
      hours: 0
      minutes: 0
      seconds: 22
      milliseconds: 0
  - action: script.stop_screen
    metadata: {}
    data: {}
  description: 放下幕布
  icon: mdi:arrow-down
close_screen:
  alias: close_screen
  sequence:
  - action: select.select_option
    metadata: {}
    data:
      option: Unset
    target:
      entity_id: select.wfxx_cn_547662879_ycmkq_keytwo_sta_p_3_3
  - delay:
      hours: 0
      minutes: 0
      seconds: 0
      milliseconds: 200
  - action: select.select_option
    metadata: {}
    data:
      option: Set
    target:
      entity_id: select.wfxx_cn_547662879_ycmkq_keytwo_sta_p_3_3
  description: 收起幕布
  icon: mdi:arrow-up




回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian ( 晋ICP备17001384号-1 )

GMT+8, 2025-6-2 03:35 , Processed in 0.140817 second(s), 26 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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