-
Notifications
You must be signed in to change notification settings - Fork 10
HomeAssistantPackage
gpbenton edited this page Jan 7, 2023
·
5 revisions
A home assistant package describing most of the functions used. Clone this code and replace the id (5460) with your own received from the device.
packages:
etrv_bedroom:
mqtt:
sensor:
-
state_topic: "/energenie/eTRV/Report/Temperature/5460"
name: "Bedroom Temperature"
unit_of_measurement: "°C"
force_update: true
expire_after: 660
-
state_topic: "/energenie/eTRV/Report/TargetTemperature/5460"
name: "Bedroom Target Rcvd"
unit_of_measurement: "°C"
-
state_topic: "/energenie/eTRV/Report/Voltage/5460"
name: "Bedroom TRV Voltage"
unit_of_measurement: V
force_update: true
-
state_topic: "/energenie/eTRV/Command/ValveState/5460"
name: "command_valvestate_5460"
-
state_topic: "/energenie/eTRV/Command/Temperature/5460"
name: "command_temperature_5460"
binary_sensor:
-
state_topic: "/energenie/eTRV/Report/Diagnostics/5460"
name: "Bedroom TRV Motor current below expectation"
value_template: '{{ value_json["Motor current below expectation"] }}'
payload_on: true
payload_off: false
-
state_topic: "/energenie/eTRV/Report/Diagnostics/5460"
name: "Bedroom TRV Motor current always high"
value_template: '{{ value_json["Motor current always high"] }}'
payload_on: true
payload_off: false
-
state_topic: "/energenie/eTRV/Report/Diagnostics/5460"
name: "Bedroom TRV Motor taking too long"
value_template: '{{ value_json["Motor taking too long"] }}'
payload_on: true
payload_off: false
-
state_topic: "/energenie/eTRV/Report/Diagnostics/5460"
name: "Bedroom TRV discrepancy between air and pipe sensors"
value_template: '{{ value_json["discrepancy between air and pipe sensors"] }}'
payload_on: true
payload_off: false
-
state_topic: "/energenie/eTRV/Report/Diagnostics/5460"
name: "Bedroom TRV air sensor out of expected range"
value_template: '{{ value_json["air sensor out of expected range"] }}'
payload_on: true
payload_off: false
-
state_topic: "/energenie/eTRV/Report/Diagnostics/5460"
name: "Bedroom TRV pipe sensor out of expected range"
value_template: '{{ value_json["pipe sensor out of expected range"] }}'
payload_on: true
payload_off: false
-
state_topic: "/energenie/eTRV/Report/Diagnostics/5460"
name: "Bedroom TRV Low Power Mode Enabled"
value_template: '{{ value_json["low power mode is enabled"] }}'
payload_on: true
payload_off: false
-
state_topic: "/energenie/eTRV/Report/Diagnostics/5460"
name: "Bedroom TRV no target temperature has been set by host"
value_template: '{{ value_json["no target temperature has been set by host"] }}'
payload_on: true
payload_off: false
-
state_topic: "/energenie/eTRV/Report/Diagnostics/5460"
name: "Bedroom TRV valve may be sticking"
value_template: '{{ value_json["valve may be sticking"] }}'
payload_on: true
payload_off: false
-
state_topic: "/energenie/eTRV/Report/Diagnostics/5460"
name: "Bedroom TRV valve exercise was successful"
value_template: '{{ value_json["valve exercise was successful"] }}'
payload_on: true
payload_off: false
-
state_topic: "/energenie/eTRV/Report/Diagnostics/5460"
name: "Bedroom TRV valve exercise was unsuccessful"
value_template: '{{ value_json["valve exercise was unsuccessful"] }}'
payload_on: true
payload_off: false
-
state_topic: "/energenie/eTRV/Report/Diagnostics/5460"
name: "Bedroom TRV driver micro has suffered a watchdog reset and needs data refresh"
value_template: '{{ value_json["driver micro has suffered a watchdog reset and needs data refresh"] }}'
payload_on: true
payload_off: false
-
state_topic: "/energenie/eTRV/Report/Diagnostics/5460"
name: "Bedroom TRV driver micro has suffered a noise reset and needs data refresh"
value_template: '{{ value_json["driver micro has suffered a noise reset and needs data refresh"] }}'
payload_on: true
payload_off: false
-
state_topic: "/energenie/eTRV/Report/Diagnostics/5460"
name: "Bedroom TRV battery voltage has fallen below 2.2V and valve has been opened"
value_template: '{{ value_json["battery voltage has fallen below 2p2V and valve has been opened"] }}'
payload_on: true
payload_off: false
-
state_topic: "/energenie/eTRV/Report/Diagnostics/5460"
name: "Bedroom TRV request for heat messaging is enabled"
value_template: '{{ value_json["request for heat messaging is enabled"] }}'
payload_on: true
payload_off: false
-
state_topic: "/energenie/eTRV/Report/Diagnostics/5460"
name: "Bedroom TRV request for heat"
value_template: '{{ value_json["request for heat"] }}'
payload_on: true
payload_off: false
switch:
-
name: "Bedroom TRV Low Power Mode"
command_topic: "/energenie/eTRV/Command/PowerMode/5460"
state_topic: "/energenie/eTRV/Command/PowerMode/5460"
payload_on: 1
payload_off: 0
retain: true
input_number:
bedroom_temp:
name: Bedroom Temperature Target
min: 4
max: 30
step: 1
unit_of_measurement: "°C"
mode: slider
initial: 18
icon: mdi:thermometer-lines
input_select:
bedroom_trv_state:
name: Bedroom TRV Valve State
options:
- Closed
- Normal
- Open
script:
send_report_voltage_bedroom:
sequence:
- service: script.send_trv_command
data:
id: '5460'
command: 'Voltage'
send_report_diagnostics_bedroom:
sequence:
- service: script.send_trv_command
data:
id: '5460'
command: 'Diagnostics'
send_exercise_bedroom:
sequence:
- service: script.send_trv_command
data:
id: '5460'
command: 'Exercise'
send_identity_bedroom:
sequence:
# This is written using the Script Syntax
- service: script.send_trv_command
data:
id: '5460'
command: 'Identify'
group:
bedroom_trv:
entities:
- sensor.bedroom_temperature
- input_number.bedroom_temp
- sensor.bedroom_target_rcvd
- input_select.bedroom_trv_state
- switch.bedroom_trv_low_power_mode
- script.send_report_diagnostics_bedroom
- script.send_exercise_bedroom
- script.send_identity_bedroom
- script.send_report_voltage_bedroom
- sensor.bedroom_trv_voltage
bedroom_diagnostics:
entities:
- binary_sensor.bedroom_trv_motor_current_below_expectation
- binary_sensor.bedroom_trv_motor_current_always_high
- binary_sensor.bedroom_trv_motor_taking_too_long
- binary_sensor.bedroom_trv_discrepancy_between_air_and_pipe_sensors
- binary_sensor.bedroom_trv_air_sensor_out_of_expected_range
- binary_sensor.bedroom_trv_pipe_sensor_out_of_expected_range
- binary_sensor.bedroom_trv_low_power_mode_enabled
- binary_sensor.bedroom_trv_no_target_temperature_has_been_set_by_host
- binary_sensor.bedroom_trv_valve_may_be_sticking
- binary_sensor.bedroom_trv_valve_exercise_was_successful
- binary_sensor.bedroom_trv_valve_exercise_was_unsuccessful
- binary_sensor.bedroom_trv_driver_micro_has_suffered_a_watchdog_reset_and_needs_data_refresh
- binary_sensor.bedroom_trv_driver_micro_has_suffered_a_noise_reset_and_needs_data_refresh
- binary_sensor.bedroom_trv_battery_voltage_has_fallen_below_2_2v_and_valve_has_been_opened
- binary_sensor.bedroom_trv_request_for_heat_messaging_is_enabled
- binary_sensor.bedroom_trv_request_for_heat
script:
send_trv_command:
sequence:
- service: mqtt.publish
data_template:
topic: '/energenie/eTRV/Command/{{command}}/{{id}}'
payload: 'ON'