Hello everyone, now I have such a problem, my fresh air device is MOUBUS access, the control register and the status register are separate, I made the definition of the register, defined as follows
#新风数据
sensor:
- platform: modbus
# scan_floaterval: 10 #0.88版以后这个语句失效
registers:
#负1楼新风系统读参数
- name: fresh_air_f1_power
hub: hub2
unit_of_measurement: 1开0关
slave: 1
register: 8704
- name: fresh_air_f1_temperature
hub: hub2
unit_of_measurement: °C
slave: 1
register: 8706
- name: fresh_air_f1_humidity
hub: hub2
unit_of_measurement: "%RH"
slave: 1
register: 8707
- name: fresh_air_f1_PM2.5
hub: hub2
unit_of_measurement: μg/m³
slave: 1
register: 8712
- name: fresh_air_f1_mode
hub: hub2
unit_of_measurement: 0除湿1通风2净化
slave: 1
register: 8713
- name: fresh_air_f1_speed
hub: hub2
unit_of_measurement: 0低档1中档2高档
slave: 1
register: 8714
- name: fresh_air_f1_power_register
hub: hub2
slave: 1
unit_of_measurement: f1电源开关寄存器
register: 8960
The last one is register: 8960 is the register that controls the power supply on and off of the fresh air device. Writing 0x5A01 to this register is the boot, writing 0x5A00 is the shutdown.
I wrote this in the automated configuration.
#-1楼新风系统电源开关模式自动化和风速自动化
# 获取新风电源开关数值
- alias: fresh_air_f1_set_power
initial_state: true
trigger:
platform: state
entity_id: sensor.fresh_air_f1_power
action:
service: input_select.select_option
data_template:
entity_id: input_select.fresh_air_f1_power
option: >
{% if states.sensor.fresh_air_f1_power == "0" %}关闭新风
{% elif states.sensor.fresh_air_f1_power == "1" %}关闭新风
{% endif %}
# 设置新风电源开关数值
- alias: fresh_air_f1_get_power
initial_state: true
trigger:
platform: state
entity_id: input_select.fresh_air_f1_power
action:
service: write_register
data_template:
entity_id: sensor.fresh_air_f1_power_register
register: >
{% if states.input_select.fresh_air_f1_power.state == "0" %}23040
{% elif states.input_select.fresh_air_f1_power.state == "1" %}23041
{% endif %}
I use HA’s services debugger for testing and it is impossible to complete.
Write register is wrong, who knows how to write this syntax? Thank you