微信扫码登录
4
45
437
中级会员
硬件: 1、broadlink品牌的红外发射器 2、home-assistant服务器
软件: 1、home-assistant系统 2、home-assistant-custom-ui组件 https://github.com/andrey-git/home-assistant-custom-ui
设置好broadlink发射器,不再累述
安装custom ui组件 https://github.com/andrey-git/home-assistant-custom-ui/blob/master/docs/installing.md
建立一个slider滑杆 entity_id: input_slider.air_conditioner_temp 在configuration.yaml (以下简称confing文件)建立一个滑杆开关 input_slider: air_conditioner_temp: name: '空调温度' icon: mdi:ray-vertex initial: 25 min: 16 max: 30 step: 1 复制代码 创建出来的的entity_id为input_slider.air_conditioner_temp,根据需要自行修改,initial是min/max分别对应滑杆的最小最大指示数值
input_slider: air_conditioner_temp: name: '空调温度' icon: mdi:ray-vertex initial: 25 min: 16 max: 30 step: 1
创建一个对应滑杆位置的温度传感器 sensor.temp_show sensor: - platform: template sensors: temp_show: friendly_name: '空调温度' unit_of_measurement: "°C" value_template: '{{states.input_slider.air_conditioner_temp.state|round(0)}}' entity_id: - input_slider.air_conditioner_temp 复制代码
sensor: - platform: template sensors: temp_show: friendly_name: '空调温度' unit_of_measurement: "°C" value_template: '{{states.input_slider.air_conditioner_temp.state|round(0)}}' entity_id: - input_slider.air_conditioner_temp
将传感器温度显示在空调开关下 customize_glob: switch.airconditioner: custom_ui_state_card: custom-ui state_card_mode: break-slider stretch_slider: false extra_data_template: "{state.sensor.temp_show}°C" hide_control: false show_last_changed: false confirm_controls_show_lock: false 复制代码
customize_glob: switch.airconditioner: custom_ui_state_card: custom-ui state_card_mode: break-slider stretch_slider: false extra_data_template: "{state.sensor.temp_show}°C" hide_control: false show_last_changed: false confirm_controls_show_lock: false 复制代码
customize_glob: switch.airconditioner: custom_ui_state_card: custom-ui state_card_mode: break-slider stretch_slider: false extra_data_template: "{state.sensor.temp_show}°C" hide_control: false show_last_changed: false confirm_controls_show_lock: false
创建对应的automations 两个开关,第一个负责在空调开关打开时用滑杆设置温度,第二个开关负责在空调打开时为滑杆设置正确的温度 - alias: air_conditioner_temp_cool trigger: - platform: state entity_id: input_slider.air_conditioner_temp condition: - condition: state entity_id: switch.airconditioner state: 'on' action: - service: script.turn_on data_template: entity_id: - script.air_conditioner_temp_cool{{ states.input_slider.air_conditioner_temp.state | int }} - alias: rest temp trigger: - platform: state entity_id: switch.airconditioner from: 'off' to: 'on' action: - service: input_slider.select_value data_template: entity_id: input_slider.air_conditioner_temp value: ’26' 复制代码 创建温度对应的脚本 payload就是对应的红外码 air_conditioner_temp_cool16: sequence: - service: broadlink.send_packet_192_168_1_233 data: packet: - "payload" air_conditioner_temp_cool17: sequence: - service: broadlink.send_packet_192_168_1_233 data: packet: - "payload" 复制代码
- alias: air_conditioner_temp_cool trigger: - platform: state entity_id: input_slider.air_conditioner_temp condition: - condition: state entity_id: switch.airconditioner state: 'on' action: - service: script.turn_on data_template: entity_id: - script.air_conditioner_temp_cool{{ states.input_slider.air_conditioner_temp.state | int }} - alias: rest temp trigger: - platform: state entity_id: switch.airconditioner from: 'off' to: 'on' action: - service: input_slider.select_value data_template: entity_id: input_slider.air_conditioner_temp value: ’26'
air_conditioner_temp_cool16: sequence: - service: broadlink.send_packet_192_168_1_233 data: packet: - "payload" air_conditioner_temp_cool17: sequence: - service: broadlink.send_packet_192_168_1_233 data: packet: - "payload"
查看全部评分
使用道具 举报
30
969
4185
论坛元老
2
282
2284
金牌会员
25
132
注册会员
5
68
241
论坛分享达人
编码狂魔
164
1401
0
13
43
新手上路
86
375
127
1924
110
628
高级会员
本版积分规则 发表回复 回帖后跳转到最后一页
经常参与各类话题的讨论,发帖内容较有主见
Archiver|手机版|小黑屋|Hassbian ( 晋ICP备17001384号-1 )
GMT+8, 2025-10-29 11:00 , Processed in 0.061378 second(s), 13 queries , MemCached On.
Powered by Discuz! X3.5
© 2001-2025 Discuz! Team.