-
Notifications
You must be signed in to change notification settings - Fork 1
Home
Initially created by Smartzeug for his Youtube series on Home Assistant
Information based on: https://community.home-assistant.io/t/pluggit-ventilation-unit-modbus/108284
Please help out by adding more registers or even making this a custom component.
- Add the working example from Smartzeug
- Add all known addresses from the official docs
- Create a HACS Custom Component
modbus:
name: pluggit
type: tcp
host: IP_ADDRESS_OF_VENTILLATION_UNIT
port: 502
sensors:
- name: Outdoor_T1
address: 133
unit_of_measurement: °C
count: 2
precision: 2
data_type: float32
device_class: temperature
- name: Supply_T2
address: 135
unit_of_measurement: °C
count: 2
precision: 2
data_type: float32
device_class: temperature
- name: Extract_T3
address: 137
unit_of_measurement: °C
count: 2
precision: 2
data_type: float32
device_class: temperature
- name: Exhaust_T4
address: 139
unit_of_measurement: °C
count: 2
precision: 2
data_type: float32
device_class: temperature
- name: RoomTemp_WirelesRemote_T5
address: 141
unit_of_measurement: °C
count: 2
data_type: float32
- name: Bypass_State
address: 198
count: 1
data_type: uint16
unit_of_measurement: status
- name: Bypass_remaining_time
address: 264
unit_of_measurement: min
count: 1
data_type: uint16
- name: Fan_Level
address: 323
unit_of_measurement: Step
count: 2
data_type: uint32
- name: Fan1_Speed
address: 101
unit_of_measurement: rpm
count: 2
data_type: float32
- name: Fan2_Speed
address: 103
unit_of_measurement: rpm
count: 2
data_type: float32
- name: Filter_Remaining_Time
address: 553
unit_of_measurement: days
count: 2
data_type: uint32
- name: Pluggit VOC
address: 430 #40431
count: 1
data_type: uint16
#device_class: none
unit_of_measurement: ppm
- name: Pluggit Feuchte
address: 196 #40197
count: 1
data_type: uint16
device_class: humidity
unit_of_measurement: RH%
- name: Pluggit Modus
address: 472 #40473
count: 1
data_type: uint16
#device_class: none
According to the docs there should be two discrete commands to turn the summer mode on or off. On my P310 both commands will toggle the state of the summer mode between on and off, no matter what the current status is. I analyzed the traffic from the Pluggit Android app and it actually always sends 0x8800 (End Summer Mode) every time. Looks like Pluggit changed something internally and didn't bother to update the documentation. For the sake of completeness I documented both Start and End actions below, but they behave the same. At least on my system.
Note: Summer Mode is not the automatic bypass. Summer mode disables the Intake fan, to suck in air from opened windows, instead.
# Start Summer Mode (Toggles Summer Mode)
service: modbus.write_register
data:
address: 168
hub: Pluggit
value:
- 0x0800
- 0
# End Summer Mode (Toggles Summer Mode)
service: modbus.write_register
data:
address: 168
hub: Pluggit
value:
- 0x8800
- 0
# Open / Close the Bypass
service: modbus.write_register
data:
address: 212
hub: Pluggit
value:
- 0 for close / 255 for open
- 0
Create a manuel card in the lovelace dashboard. Then enter:
show_name: false
show_icon: true
type: button
show_state: true
tap_action:
action: call-service
service: modbus.write_register
service_data:
address: 324
unit: 255
value:
- 1 # Here you can define the speed (0-4)
- 0
hub: pluggit
target: {}
name: Pluggit Step 1
icon: mdi:fan-speed-1
icon_height: 30px
Many more addresses (registers) can be taken from the official docs of Pluggit: http://www.pluggit.com/fileserver/files/1413/609560454939420/21_08_2015_pluggit_uvc_controller_modbus_tcp_ip.pdf
- The registers are allocated from 0-15 instead of 1-16, so you need to subtract 1 from the register addresses in the documentation. You can also skip the "40" because they are ignored by the PLC of the Pluggit unit. All addresses above follow these conventions.
You might need to write to the register minus one. So to write to register 169, write to register 168 instead. Use the decimal numbers from the official docs or use the hexadecimal numbers prepended with 0x. See the examples above.
Please feel free to add more things here. This is a Wiki for a reason!