@@ -69,14 +69,14 @@ def async_update_channels(
69
69
channel = coordinator .device .channels [channel_id ]
70
70
except IndexError :
71
71
continue
72
+ if channel .mode is not None and channel .mode_list is not None :
73
+ new_entities .append (UNILEDModeSelect (coordinator , channel_id ))
74
+ if channel .input is not None and channel .input_list is not None :
75
+ new_entities .append (UNILEDInputSelect (coordinator , channel_id ))
72
76
if channel .chip_order is not None and channel .chip_order_list is not None :
73
77
new_entities .append (UNILEDChipOrderSelect (coordinator , channel_id ))
74
78
if channel .chip_type is not None and channel .chip_type_list is not None :
75
79
new_entities .append (UNILEDChipTypeSelect (coordinator , channel_id ))
76
- if channel .input is not None and channel .input_list is not None :
77
- new_entities .append (UNILEDInputSelect (coordinator , channel_id ))
78
- if channel .mode is not None and channel .mode_list is not None :
79
- new_entities .append (UNILEDModeSelect (coordinator , channel_id ))
80
80
81
81
async_add_entities (new_entities )
82
82
@@ -147,7 +147,6 @@ def __init__(self, coordinator: UNILEDUpdateCoordinator, channel_id: int) -> Non
147
147
148
148
@property
149
149
def available (self ) -> bool :
150
- #return False ## For now disable chip type selection!
151
150
return super ().available
152
151
153
152
@callback
@@ -164,6 +163,8 @@ async def async_select_option(self, option: str) -> None:
164
163
if self .channel .needs_type_reload :
165
164
await self .channel .device .stop ()
166
165
await _async_delayed_reload (self .hass , self .coordinator .entry )
166
+ else :
167
+ await self .coordinator .async_refresh ()
167
168
168
169
class UNILEDChipOrderSelect (
169
170
UNILEDEntity , CoordinatorEntity [UNILEDUpdateCoordinator ], SelectEntity
0 commit comments