Fans are simple representations of KNX controlled fans. They support setting the speed and the oscillation.
namename of the device.
group_addressis the KNX group address of the fan speed. Used for sending. DPT 5.001 / 5.010
group_address_stateis the KNX group address of the fan speed state. Used for updating and reading state. DPT 5.001 / 5.010
group_address_oscillationis the KNX group address of the oscillation. Used for sending. DPT 1.001
group_address_oscillation_stateis the KNX group address of the fan oscillation state. Used for updating and reading state. DPT 1.001
sync_statedefines if and how often the value should be actively read from the bus. If
Falseno GroupValueRead telegrams will be sent to its group address. Defaults to
device_updated_cbawaitable callback for each update.
max_stepMaximum step amount for fans which are controlled with steps and not percentage. If this attribute is set, the fan is controlled by sending the step value in the range
max_step. In that case, the group address DPT changes from DPT 5.001 to DPT 5.010. Default: None
fan = Fan(xknx, 'TestFan', group_address='1/2/1', group_address_state='1/2/2', group_address_oscillation='1/2/3', group_address_oscillation_state='1/2/4') # Set the fan speed await fan.set_speed(50) # Accessing speed print(fan.current_speed) # Set the oscillation await fan.set_oscillation(True) # Accessing speed print(fan.current_oscillation) # Requesting state via KNX GroupValueRead await fan.sync()