Closed luciol21 closed 2 years ago
Thanks for reporting!
(for contributors: it seems that we need to pull the actual temperature from device #7
and not use the CORE_COMFORT_ROOM_TEMPERATURE_STATE).
Hi. If it can help, I also own a Sauter Asama Connect, but integrated with a Tahoma Switch (which doesn't support it yet). For now, HA detects a I2G_Actuator with these informations : ENTITY : button.i2g_actuator_identify I2G_Actuator Identify STATE : unknown ATTRIBUTES : icon: mdi:human-greeting-variant friendly_name: I2G_Actuator Identify
ENTITY : climate.i2g_actuator I2G_Actuator STATE : unavailable ATTRIBUTES : restored: true hvac_modes: heat, off, auto min_temp: 7 max_temp: 35 preset_modes: boost, drying, none friendly_name: I2G_Actuator supported_features: 17
ENTITY : sensor.i2g_actuator_rssi_level I2G_Actuator RSSI Level STATE : 80 ATTRIBUTES : state_class: measurement unit_of_measurement: dB device_class: signal_strength friendly_name: I2G_Actuator RSSI Level
ENTITY : sensor.io_9492619_6_electric_energy_consumption IO (9492619#6) Electric Energy Consumption STATE : 15000 ATTRIBUTES : state_class: total_increasing unit_of_measurement: Wh device_class: energy friendly_name: IO (9492619#6) Electric Energy Consumption
ENTITY : sensor.io_9492619_7_temperature IO (9492619#7) Temperature STATE : 6.5 state_class: measurement ATTRIBUTES : unit_of_measurement: °C device_class: temperature friendly_name: IO (9492619#7) Temperature
I added "on": HVAC_MODE_HEAT for TAHOMA_TO_HVAC_MODE in atlantic_electrical_towel_dryer.py to avoid an error.
From @alexandreaudrain, here an other setup for io:AtlanticElectricalTowelDryer_IC3_IOComponent
2021-12-28 10:20:12 DEBUG (MainThread) [custom_components.tahoma] Added device (Device(attributes=States(_states=[State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='D725008'), State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group')]), available=True, enabled=True, label='I2G_Actuator', device_url=io://****-****-2069/9492619#1, controllable_name='io:AtlanticElectricalTowelDryer_IC3_IOComponent', definition=Definition(commands=CommandDefinitions(_commands=[CommandDefinition(command_name='advancedRefresh', nparams=1), CommandDefinition(command_name='cancelHeatingLevel', nparams=1), CommandDefinition(command_name='delayedStopIdentify', nparams=1), CommandDefinition(command_name='getName', nparams=0), CommandDefinition(command_name='identify', nparams=0), CommandDefinition(command_name='off', nparams=0), CommandDefinition(command_name='refreshComfortTemperature', nparams=0), CommandDefinition(command_name='refreshDerogatedTargetTemperature', nparams=0), CommandDefinition(command_name='refreshEcoTemperature', nparams=0), CommandDefinition(command_name='refreshHeatingLevel', nparams=0), CommandDefinition(command_name='refreshManufacturerName', nparams=0), CommandDefinition(command_name='refreshMaximumHeatingTargetTemperature', nparams=0), CommandDefinition(command_name='refreshMaximumTargetTemperature', nparams=0), CommandDefinition(command_name='refreshTargetTemperature', nparams=0), CommandDefinition(command_name='refreshTemperature', nparams=0), CommandDefinition(command_name='setComfortTemperature', nparams=1), CommandDefinition(command_name='setDerogatedTargetTemperature', nparams=1), CommandDefinition(command_name='setEcoTemperature', nparams=1), CommandDefinition(command_name='setHeatingLevel', nparams=1), CommandDefinition(command_name='setHeatingLevelWithTimer', nparams=2), CommandDefinition(command_name='setName', nparams=1), CommandDefinition(command_name='setSchedulingType', nparams=1), CommandDefinition(command_name='setTargetTemperature', nparams=1), CommandDefinition(command_name='startIdentify', nparams=0), CommandDefinition(command_name='stopIdentify', nparams=0), CommandDefinition(command_name='wink', nparams=1), CommandDefinition(command_name='pairOneWayController', nparams=2), CommandDefinition(command_name='refreshAutoProgram', nparams=0), CommandDefinition(command_name='refreshControllerAddress', nparams=0), CommandDefinition(command_name='refreshModel', nparams=0), CommandDefinition(command_name='refreshNativeFunctionalLevel', nparams=0), CommandDefinition(command_name='refreshPowerAndTension', nparams=0), CommandDefinition(command_name='refreshSetpointLoweringTemperatureInProgMode', nparams=0), CommandDefinition(command_name='setSetpointLoweringTemperatureInProgMode', nparams=1), CommandDefinition(command_name='unpairAllOneWayControllers', nparams=0), CommandDefinition(command_name='unpairOneWayController', nparams=2)]), states=[StateDefinition(qualified_name='core:ComfortRoomTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:DerogatedTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:DiscreteRSSILevelState', type='DiscreteState', values=['good', 'low', 'normal', 'verylow']), StateDefinition(qualified_name='core:EcoRoomTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:IdentifierState', type='DataState', values=None), StateDefinition(qualified_name='core:ManufacturerNameState', type='DataState', values=None), StateDefinition(qualified_name='core:MaximumHeatingTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:MaximumTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:NameState', type='DataState', values=None), StateDefinition(qualified_name='core:OnOffState', type='DiscreteState', values=['off', 'on']), StateDefinition(qualified_name='core:PriorityLockTimerState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:RSSILevelState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:RegulationModeState', type='DiscreteState', values=['increase', 'none', 'standby']), StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable']), StateDefinition(qualified_name='core:TargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:VersionState', type='ContinuousState', values=None), StateDefinition(qualified_name='io:ControllerAddressState', type='DataState', values=None), StateDefinition(qualified_name='io:InternalExternalSchedulingTypeState', type='DiscreteState', values=['external', 'internal']), StateDefinition(qualified_name='io:MaximumHeatingLevelState', type='DiscreteState', values=['boost', 'comfort', 'comfort-1', 'comfort-2', 'eco', 'frostprotection', 'off', 'secured']), StateDefinition(qualified_name='io:ModelState', type='DataState', values=None), StateDefinition(qualified_name='io:NativeFunctionalLevelState', type='DiscreteState', values=['base', 'medium', 'top']), StateDefinition(qualified_name='io:PowerState', type='DataState', values=None), StateDefinition(qualified_name='io:PriorityLockLevelState', type='DiscreteState', values=['comfortLevel1', 'comfortLevel2', 'comfortLevel3', 'comfortLevel4', 'environmentProtection', 'humanProtection', 'userLevel1', 'userLevel2']), StateDefinition(qualified_name='io:PriorityLockOriginatorState', type='DiscreteState', values=['LSC', 'SAAC', 'SFC', 'UPS', 'externalGateway', 'localUser', 'myself', 'rain', 'security', 'temperature', 'timer', 'user', 'wind']), StateDefinition(qualified_name='io:SetpointLoweringTemperatureInProgModeState', type='ContinuousState', values=None), StateDefinition(qualified_name='io:TargetHeatingLevelState', type='DiscreteState', values=['boost', 'comfort', 'comfort-1', 'comfort-2', 'eco', 'frostprotection', 'off', 'secured']), StateDefinition(qualified_name='io:TensionState', type='DataState', values=None), StateDefinition(qualified_name='io:TimerForTransitoryStateState', type='ContinuousState', values=None)], widget_name='AtlanticElectricalTowelDryer', ui_class='HeatingSystem', qualified_name='io:AtlanticElectricalTowelDryer_IC3_IOComponent'), data_properties=None, widget='AtlanticElectricalTowelDryer', ui_class='HeatingSystem', states=States(_states=[State(name='core:NameState', type=<DataType.STRING: 3>, value='I2G_Actuator'), State(name='core:VersionState', type=<DataType.STRING: 3>, value='44373235303038202020'), State(name='core:OnOffState', type=<DataType.STRING: 3>, value='on'), State(name='io:TargetHeatingLevelState', type=<DataType.STRING: 3>, value='eco'), State(name='core:StatusState', type=<DataType.STRING: 3>, value='available'), State(name='core:DiscreteRSSILevelState', type=<DataType.STRING: 3>, value='good'), State(name='core:RSSILevelState', type=<DataType.FLOAT: 2>, value=86.0), State(name='core:IdentifierState', type=<DataType.STRING: 3>, value='00000000'), State(name='io:MaximumHeatingLevelState', type=<DataType.STRING: 3>, value='unknown'), State(name='io:TimerForTransitoryStateState', type=<DataType.INTEGER: 1>, value=0), State(name='core:ComfortRoomTemperatureState', type=<DataType.INTEGER: 1>, value=17), State(name='core:EcoRoomTemperatureState', type=<DataType.INTEGER: 1>, value=3), State(name='io:SetpointLoweringTemperatureInProgModeState', type=<DataType.FLOAT: 2>, value=3.0), State(name='core:RegulationModeState', type=<DataType.STRING: 3>, value='none'), State(name='core:ManufacturerNameState', type=<DataType.STRING: 3>, value='Sauter'), State(name='io:ModelState', type=<DataType.STRING: 3>, value='ASAMA Connect'), State(name='io:PowerState', type=<DataType.INTEGER: 1>, value=1500), State(name='io:TensionState', type=<DataType.INTEGER: 1>, value=230), State(name='core:DerogatedTargetTemperatureState', type=<DataType.FLOAT: 2>, value=0.0), State(name='io:NativeFunctionalLevelState', type=<DataType.STRING: 3>, value='Base'), State(name='io:ControllerAddressState', type=<DataType.INTEGER: 1>, value=9492618), State(name='core:TargetTemperatureState', type=<DataType.FLOAT: 2>, value=17.0)]), type=<ProductType.ACTUATOR: 1>, place_oid='616809ec-4cdc-44af-81e6-a4a8b590f10a'))
@alexandreaudrain Can you please try https://github.com/iMicknl/ha-tahoma/archive/refs/heads/fix/atlantic_dryer/no_preset.zip? Before revert the tweak you did. It should remove your error into the log.
@luciol21 You haven't any error related to the presets? Di you try them?
@iMicknl I will take care of this one.
Hello,
I gave all the logs I found. but if you give me a procedure i can do the tests. I am using HA only from the web interface. So I don't know anything about the source code tree. But no worries about applying a patch. For the moment, the radiator is applying the instructions I gave it. The dry and boost mode also works.
Hi. I tried uninstalling my previous Overkiz installation and manually install the patch, but Home Assistant will stay on "configuring" page forever, and finally an error message like "configuration flow coundn't be uploaded".
2021-12-30 13:24:33 ERROR (SyncWorker_0) [homeassistant.util.package] Unable to install package pyoverkiz==1.0.0: ERROR: Cannot install python-jose-cryptodome==1.3.2 because these package versions have conflicting dependencies.
ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/user_guide/#fixing-conflicting-dependencies
I tried installing latest Overkiz version, and overwritting custom_components with the patch... I got this error (after something like 15 minutes) :
2021-12-30 11:20:53 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration pyopenrad which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2021-12-30 11:20:53 WARNING (SyncWorker_1) [homeassistant.loader] We found a custom integration sonoff which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2021-12-30 11:20:53 WARNING (SyncWorker_2) [homeassistant.loader] We found a custom integration livebox which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2021-12-30 11:20:53 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration myEnedis which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2021-12-30 11:20:53 WARNING (SyncWorker_3) [homeassistant.loader] We found a custom integration hacs which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2021-12-30 11:20:53 WARNING (SyncWorker_1) [homeassistant.loader] We found a custom integration webrtc which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2021-12-30 11:20:53 WARNING (SyncWorker_5) [homeassistant.loader] We found a custom integration tahoma which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2021-12-30 11:21:46 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [2866823640] Received invalid command: mobile_app/push_notification_channel
2021-12-30 11:21:50 ERROR (MainThread) [homeassistant.components.camera.img_util] Error loading libturbojpeg; Cameras may impact HomeKit performance
Traceback (most recent call last):
File "/srv/homeassistant/lib/python3.9/site-packages/numpy/core/__init__.py", line 22, in <module>
from . import multiarray
File "/srv/homeassistant/lib/python3.9/site-packages/numpy/core/multiarray.py", line 12, in <module>
from . import overrides
File "/srv/homeassistant/lib/python3.9/site-packages/numpy/core/overrides.py", line 7, in <module>
from numpy.core._multiarray_umath import (
ImportError: libcblas.so.3: cannot open shared object file: No such file or directory
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/components/camera/img_util.py", line 94, in __init__
from turbojpeg import TurboJPEG # pylint: disable=import-outside-toplevel
File "/srv/homeassistant/lib/python3.9/site-packages/turbojpeg.py", line 31, in <module>
import numpy as np
File "/srv/homeassistant/lib/python3.9/site-packages/numpy/__init__.py", line 150, in <module>
from . import core
File "/srv/homeassistant/lib/python3.9/site-packages/numpy/core/__init__.py", line 48, in <module>
raise ImportError(msg)
ImportError:
IMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!
Importing the numpy C-extensions failed. This error can happen for
many reasons, often due to issues with your setup or how NumPy was
installed.
We have compiled some common reasons and troubleshooting tips at:
https://numpy.org/devdocs/user/troubleshooting-importerror.html
Please note and check the following:
* The Python version is: Python3.9 from "/srv/homeassistant/bin/python3"
* The NumPy version is: "1.21.5"
and make sure that they are the versions you expect.
Please carefully study the documentation linked above for further help.
Original error was: libcblas.so.3: cannot open shared object file: No such file or directory
2021-12-30 11:23:52 ERROR (SyncWorker_1) [homeassistant.util.package] Unable to install package pyoverkiz==1.0.0: ERROR: Cannot install python-jose-cryptodome==1.3.2 because these package versions have conflicting dependencies.
ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/user_guide/#fixing-conflicting-dependencies
2021-12-30 11:26:38 ERROR (SyncWorker_4) [homeassistant.util.package] Unable to install package pyoverkiz==1.0.0: ERROR: Cannot install python-jose-cryptodome==1.3.2 because these package versions have conflicting dependencies.
ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/user_guide/#fixing-conflicting-dependencies
2021-12-30 11:26:48 ERROR (MainThread) [aiohttp.server] Error handling request
Traceback (most recent call last):
File "/srv/homeassistant/lib/python3.9/site-packages/aiohttp/web_protocol.py", line 435, in _handle_request
resp = await request_handler(request)
File "/srv/homeassistant/lib/python3.9/site-packages/aiohttp/web_app.py", line 504, in _handle
resp = await handler(request)
File "/srv/homeassistant/lib/python3.9/site-packages/aiohttp/web_middlewares.py", line 117, in impl
return await handler(request)
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/components/http/security_filter.py", line 60, in security_filter_middleware
return await handler(request)
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/components/http/forwarded.py", line 98, in forwarded_middleware
return await handler(request)
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/components/http/request_context.py", line 28, in request_context_middleware
return await handler(request)
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/components/http/ban.py", line 78, in ban_middleware
return await handler(request)
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/components/http/auth.py", line 181, in auth_middleware
return await handler(request)
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/components/http/view.py", line 137, in handle
result = await result
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/components/config/config_entries.py", line 71, in delete
result = await hass.config_entries.async_remove(entry_id)
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/config_entries.py", line 831, in async_remove
await entry.async_remove(self.hass)
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/config_entries.py", line 487, in async_remove
component = integration.get_component()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/loader.py", line 522, in get_component
cache[self.domain] = importlib.import_module(self.pkg_path)
File "/usr/local/lib/python3.9/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 850, in exec_module
File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
File "/home/homeassistant/.homeassistant/custom_components/tahoma/__init__.py", line 18, in <module>
from pyoverkiz.client import OverkizClient
ModuleNotFoundError: No module named 'pyoverkiz'
2021-12-30 11:29:19 ERROR (SyncWorker_3) [homeassistant.util.package] Unable to install package pyoverkiz==1.0.0: ERROR: Cannot install python-jose-cryptodome==1.3.2 because these package versions have conflicting dependencies.
ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/user_guide/#fixing-conflicting-dependencies
2021-12-30 11:29:19 ERROR (MainThread) [homeassistant.setup] Setup failed for tahoma: Requirements for tahoma not found: ['pyoverkiz==1.0.0'].
After a few reboots, the patch doesn't seem to resolve ma problem :
2021-12-30 14:22:28 WARNING (SyncWorker_5) [homeassistant.loader] We found a custom integration tahoma which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Finished fetching device events data in 0.020 seconds (success: True)
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Unsupported device detected (Device(attributes=States(_states=[]), available=True, enabled=True, label='INTERNAL (wifi/0)', device_url=internal://****-****-2069/wifi/0, controllable_name='internal:WifiComponent', definition=Definition(commands=CommandDefinitions(_commands=[CommandDefinition(command_name='clearCredentials', nparams=0), CommandDefinition(command_name='setTargetInfraConfig', nparams=2), CommandDefinition(command_name='setWifiMode', nparams=1)]), states=[StateDefinition(qualified_name='internal:CurrentInfraConfigState', type='DataState', values=None), StateDefinition(qualified_name='internal:SignalStrengthState', type='ContinuousState', values=None), StateDefinition(qualified_name='internal:WifiModeState', type='DataState', values=None)], widget_name='Wifi', ui_class='Wifi', qualified_name='internal:WifiComponent'), data_properties=None, widget='Wifi', ui_class='Wifi', states=States(_states=[State(name='internal:WifiModeState', type=<DataType.STRING: 3>, value='infrastructure'), State(name='internal:CurrentInfraConfigState', type=<DataType.STRING: 3>, value='Livebox-AlexFlo'), State(name='internal:SignalStrengthState', type=<DataType.INTEGER: 1>, value=73)]), type=<ProductType.ACTUATOR: 1>, place_oid='616809ec-4cdc-44af-81e6-a4a8b590f10a'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Added device (Device(attributes=States(_states=[State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='00000000000000000007'), State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='VELUX')]), available=True, enabled=True, label='Velux Palier', device_url=io://****-****-2069/10413880, controllable_name='io:RollerShutterVeluxIOComponent', definition=Definition(commands=CommandDefinitions(_commands=[CommandDefinition(command_name='advancedRefresh', nparams=1), CommandDefinition(command_name='close', nparams=0), CommandDefinition(command_name='delayedStopIdentify', nparams=1), CommandDefinition(command_name='down', nparams=0), CommandDefinition(command_name='getName', nparams=0), CommandDefinition(command_name='identify', nparams=0), CommandDefinition(command_name='my', nparams=0), CommandDefinition(command_name='open', nparams=0), CommandDefinition(command_name='refreshMemorized1Position', nparams=0), CommandDefinition(command_name='setClosure', nparams=1), CommandDefinition(command_name='setDeployment', nparams=1), CommandDefinition(command_name='setMemorized1Position', nparams=1), CommandDefinition(command_name='setName', nparams=1), CommandDefinition(command_name='setPosition', nparams=1), CommandDefinition(command_name='setSecuredPosition', nparams=1), CommandDefinition(command_name='startIdentify', nparams=0), CommandDefinition(command_name='stop', nparams=0), CommandDefinition(command_name='stopIdentify', nparams=0), CommandDefinition(command_name='up', nparams=0), CommandDefinition(command_name='wink', nparams=1), CommandDefinition(command_name='pairOneWayController', nparams=2), CommandDefinition(command_name='setConfigState', nparams=1), CommandDefinition(command_name='unpairAllOneWayControllers', nparams=0), CommandDefinition(command_name='unpairOneWayController', nparams=2)]), states=[StateDefinition(qualified_name='core:ClosureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:DiscreteRSSILevelState', type='DiscreteState', values=['good', 'low', 'normal', 'verylow']), StateDefinition(qualified_name='core:Memorized1PositionState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:NameState', type='DataState', values=None), StateDefinition(qualified_name='core:OpenClosedState', type='DiscreteState', values=['closed', 'open']), StateDefinition(qualified_name='core:PriorityLockTimerState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:RSSILevelState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:SecuredPositionState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable']), StateDefinition(qualified_name='io:PriorityLockLevelState', type='DiscreteState', values=['comfortLevel1', 'comfortLevel2', 'comfortLevel3', 'comfortLevel4', 'environmentProtection', 'humanProtection', 'userLevel1', 'userLevel2']), StateDefinition(qualified_name='io:PriorityLockOriginatorState', type='DiscreteState', values=['LSC', 'SAAC', 'SFC', 'UPS', 'externalGateway', 'localUser', 'myself', 'rain', 'security', 'temperature', 'timer', 'user', 'wind'])], widget_name='PositionableTiltedRollerShutter', ui_class='RollerShutter', qualified_name='io:RollerShutterVeluxIOComponent'), data_properties=None, widget='PositionableTiltedRollerShutter', ui_class='RollerShutter', states=States(_states=[State(name='core:NameState', type=<DataType.STRING: 3>, value='Velux Palier'), State(name='core:PriorityLockTimerState', type=<DataType.INTEGER: 1>, value=0), State(name='core:StatusState', type=<DataType.STRING: 3>, value='available'), State(name='core:DiscreteRSSILevelState', type=<DataType.STRING: 3>, value='normal'), State(name='core:RSSILevelState', type=<DataType.FLOAT: 2>, value=52.0), State(name='core:ClosureState', type=<DataType.INTEGER: 1>, value=0), State(name='core:OpenClosedState', type=<DataType.STRING: 3>, value='open'), State(name='core:Memorized1PositionState', type=<DataType.INTEGER: 1>, value=52)]), type=<ProductType.ACTUATOR: 1>, place_oid='616809ec-4cdc-44af-81e6-a4a8b590f10a'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Added device (Device(attributes=States(_states=[State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group'), State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='2d202020ffffff240000')]), available=True, enabled=True, label='Radiateur Salon', device_url=io://****-****-2069/5019957#1, controllable_name='io:AtlanticElectricalHeaterWithAdjustableTemperatureSetpointIOComponent', definition=Definition(commands=CommandDefinitions(_commands=[CommandDefinition(command_name='advancedRefresh', nparams=1), CommandDefinition(command_name='cancelHeatingLevel', nparams=1), CommandDefinition(command_name='delayedStopIdentify', nparams=1), CommandDefinition(command_name='getName', nparams=0), CommandDefinition(command_name='identify', nparams=0), CommandDefinition(command_name='noPersonInside', nparams=0), CommandDefinition(command_name='off', nparams=0), CommandDefinition(command_name='personInside', nparams=0), CommandDefinition(command_name='refreshComfortTemperature', nparams=0), CommandDefinition(command_name='refreshDerogatedTargetTemperature', nparams=0), CommandDefinition(command_name='refreshEcoTemperature', nparams=0), CommandDefinition(command_name='refreshHeatingLevel', nparams=0), CommandDefinition(command_name='refreshIdentifier', nparams=0), CommandDefinition(command_name='refreshManufacturerName', nparams=0), CommandDefinition(command_name='refreshMaximumHeatingTargetTemperature', nparams=0), CommandDefinition(command_name='refreshMaximumTargetTemperature', nparams=0), CommandDefinition(command_name='refreshOperatingMode', nparams=0), CommandDefinition(command_name='refreshTargetTemperature', nparams=0), CommandDefinition(command_name='refreshTemperature', nparams=0), CommandDefinition(command_name='refreshTimeProgram', nparams=0), CommandDefinition(command_name='setComfortTemperature', nparams=1), CommandDefinition(command_name='setDerogatedTargetTemperature', nparams=1), CommandDefinition(command_name='setEcoTemperature', nparams=1), CommandDefinition(command_name='setHeatingLevel', nparams=1), CommandDefinition(command_name='setHeatingLevelWithTimer', nparams=2), CommandDefinition(command_name='setHolidays', nparams=1), CommandDefinition(command_name='setHolidaysTargetTemperature', nparams=1), CommandDefinition(command_name='setName', nparams=1), CommandDefinition(command_name='setOccupancyActivation', nparams=1), CommandDefinition(command_name='setOccupancy', nparams=1), CommandDefinition(command_name='setOpenWindowDetectionActivation', nparams=1), CommandDefinition(command_name='setOperatingMode', nparams=1), CommandDefinition(command_name='setPreviousTargetTemperature', nparams=1), CommandDefinition(command_name='setSchedulingType', nparams=1), CommandDefinition(command_name='setTargetTemperature', nparams=1), CommandDefinition(command_name='setTimeProgram', nparams=1), CommandDefinition(command_name='startIdentify', nparams=0), CommandDefinition(command_name='stopIdentify', nparams=0), CommandDefinition(command_name='wink', nparams=1), CommandDefinition(command_name='pairOneWayController', nparams=2), CommandDefinition(command_name='refreshAutoProgram', nparams=0), CommandDefinition(command_name='refreshControllerAddress', nparams=0), CommandDefinition(command_name='refreshModel', nparams=0), CommandDefinition(command_name='refreshNativeFunctionalLevel', nparams=0), CommandDefinition(command_name='refreshPowerAndTension', nparams=0), CommandDefinition(command_name='refreshSetpointLoweringTemperatureInProgMode', nparams=0), CommandDefinition(command_name='setHeatingLevelForTrigger', nparams=1), CommandDefinition(command_name='setSetpointLoweringTemperatureInProgMode', nparams=1), CommandDefinition(command_name='setTwinningExit', nparams=1), CommandDefinition(command_name='unpairAllOneWayControllers', nparams=0), CommandDefinition(command_name='unpairOneWayController', nparams=2)]), states=[StateDefinition(qualified_name='core:ComfortRoomTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:DerogatedTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:DiscreteRSSILevelState', type='DiscreteState', values=['good', 'low', 'normal', 'verylow']), StateDefinition(qualified_name='core:EcoRoomTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:HolidaysModeState', type='DiscreteState', values=['off', 'on']), StateDefinition(qualified_name='core:HolidaysTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:IdentifierState', type='DataState', values=None), StateDefinition(qualified_name='core:ManufacturerNameState', type='DataState', values=None), StateDefinition(qualified_name='core:MaximumHeatingTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:MaximumTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:NameState', type='DataState', values=None), StateDefinition(qualified_name='core:OccupancyActivationState', type='DiscreteState', values=['active', 'inactive']), StateDefinition(qualified_name='core:OnOffState', type='DiscreteState', values=['off', 'on']), StateDefinition(qualified_name='core:OpenWindowDetectionActivationState', type='DiscreteState', values=['active', 'inactive']), StateDefinition(qualified_name='core:OperatingModeState', type='DiscreteState', values=['antifreeze', 'auto', 'away', 'eco', 'frostprotection', 'manual', 'max', 'normal', 'off', 'on', 'prog', 'program', 'boost']), StateDefinition(qualified_name='core:PreviousTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:PriorityLockTimerState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:RSSILevelState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:RegulationModeState', type='DiscreteState', values=['increase', 'none', 'standby']), StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable']), StateDefinition(qualified_name='core:TargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:TimeProgramState', type='DataState', values=None), StateDefinition(qualified_name='core:VersionState', type='ContinuousState', values=None), StateDefinition(qualified_name='io:ControllerAddressState', type='DataState', values=None), StateDefinition(qualified_name='io:InternalExternalSchedulingTypeState', type='DiscreteState', values=['external', 'internal']), StateDefinition(qualified_name='io:MaximumHeatingLevelState', type='DiscreteState', values=['boost', 'comfort', 'comfort-1', 'comfort-2', 'eco', 'frostprotection', 'off', 'secured']), StateDefinition(qualified_name='io:ModelState', type='DataState', values=None), StateDefinition(qualified_name='io:NativeFunctionalLevelState', type='DiscreteState', values=['base', 'medium', 'top']), StateDefinition(qualified_name='io:PowerState', type='DataState', values=None), StateDefinition(qualified_name='io:PriorityLockLevelState', type='DiscreteState', values=['comfortLevel1', 'comfortLevel2', 'comfortLevel3', 'comfortLevel4', 'environmentProtection', 'humanProtection', 'userLevel1', 'userLevel2']), StateDefinition(qualified_name='io:PriorityLockOriginatorState', type='DiscreteState', values=['LSC', 'SAAC', 'SFC', 'UPS', 'externalGateway', 'localUser', 'myself', 'rain', 'security', 'temperature', 'timer', 'user', 'wind']), StateDefinition(qualified_name='io:SetpointLoweringTemperatureInProgModeState', type='ContinuousState', values=None), StateDefinition(qualified_name='io:TargetHeatingLevelState', type='DiscreteState', values=['boost', 'comfort', 'comfort-1', 'comfort-2', 'eco', 'frostprotection', 'off', 'secured']), StateDefinition(qualified_name='io:TensionState', type='DataState', values=None), StateDefinition(qualified_name='io:TimerForTransitoryStateState', type='ContinuousState', values=None)], widget_name='AtlanticElectricalHeaterWithAdjustableTemperatureSetpoint', ui_class='HeatingSystem', qualified_name='io:AtlanticElectricalHeaterWithAdjustableTemperatureSetpointIOComponent'), data_properties=None, widget='AtlanticElectricalHeaterWithAdjustableTemperatureSetpoint', ui_class='HeatingSystem', states=States(_states=[State(name='core:NameState', type=<DataType.STRING: 3>, value='Radiateur Salon'), State(name='core:VersionState', type=<DataType.STRING: 3>, value='2d202020ffffff240000'), State(name='core:OnOffState', type=<DataType.STRING: 3>, value='on'), State(name='io:TargetHeatingLevelState', type=<DataType.STRING: 3>, value='eco'), State(name='core:StatusState', type=<DataType.STRING: 3>, value='available'), State(name='core:DiscreteRSSILevelState', type=<DataType.STRING: 3>, value='good'), State(name='core:RSSILevelState', type=<DataType.FLOAT: 2>, value=100.0), State(name='core:IdentifierState', type=<DataType.STRING: 3>, value='00000000'), State(name='io:MaximumHeatingLevelState', type=<DataType.STRING: 3>, value='unknown'), State(name='io:TimerForTransitoryStateState', type=<DataType.INTEGER: 1>, value=0), State(name='core:ComfortRoomTemperatureState', type=<DataType.INTEGER: 1>, value=18), State(name='core:EcoRoomTemperatureState', type=<DataType.INTEGER: 1>, value=3), State(name='core:OperatingModeState', type=<DataType.STRING: 3>, value='internal'), State(name='core:OccupancyActivationState', type=<DataType.STRING: 3>, value='inactive'), State(name='core:MaximumHeatingTargetTemperatureState', type=<DataType.FLOAT: 2>, value=28.0), State(name='core:MaximumTargetTemperatureState', type=<DataType.FLOAT: 2>, value=28.0), State(name='core:TargetTemperatureState', type=<DataType.FLOAT: 2>, value=18.0), State(name='io:SetpointLoweringTemperatureInProgModeState', type=<DataType.FLOAT: 2>, value=3.0), State(name='core:OpenWindowDetectionActivationState', type=<DataType.STRING: 3>, value='active'), State(name='io:InternalExternalSchedulingTypeState', type=<DataType.STRING: 3>, value='internal'), State(name='core:RegulationModeState', type=<DataType.STRING: 3>, value='none'), State(name='core:ManufacturerNameState', type=<DataType.STRING: 3>, value='Sauter'), State(name='io:ModelState', type=<DataType.STRING: 3>, value='Malao'), State(name='io:PowerState', type=<DataType.INTEGER: 1>, value=1000), State(name='io:TensionState', type=<DataType.INTEGER: 1>, value=230), State(name='core:DerogatedTargetTemperatureState', type=<DataType.FLOAT: 2>, value=0.0), State(name='io:NativeFunctionalLevelState', type=<DataType.STRING: 3>, value='Base'), State(name='io:ControllerAddressState', type=<DataType.INTEGER: 1>, value=5019956), State(name='core:TimeProgramState', type=<DataType.JSON_ARRAY: 10>, value=[{'monday': [{'start': '04:30', 'end': '09:00'}, {'start': '16:00', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}]}, {'tuesday': [{'start': '04:30', 'end': '09:00'}, {'start': '16:00', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}]}, {'wednesday': [{'start': '04:30', 'end': '09:00'}, {'start': '16:00', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}]}, {'thursday': [{'start': '04:30', 'end': '09:00'}, {'start': '16:00', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}]}, {'friday': [{'start': '04:30', 'end': '09:00'}, {'start': '16:00', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}]}, {'saturday': [{'start': '04:30', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}, {'start': '00:00', 'end': '00:00'}]}, {'sunday': [{'start': '04:30', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}, {'start': '00:00', 'end': '00:00'}]}])]), type=<ProductType.ACTUATOR: 1>, place_oid='48ed22a9-5bb5-446f-8177-120d2d9ef2fe'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Unsupported device detected (Device(attributes=States(_states=[State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group'), State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='2d202020ffffff240000'), State(name='core:MeasuredValueType', type=<DataType.STRING: 3>, value='core:TemperatureInCelcius'), State(name='core:PowerSourceType', type=<DataType.STRING: 3>, value='mainSupply')]), available=True, enabled=True, label='Radiateur Salon', device_url=io://****-****-2069/5019957#2, controllable_name='io:TemperatureInCelciusIOSystemDeviceSensor', definition=Definition(commands=CommandDefinitions(_commands=[]), states=[StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable']), StateDefinition(qualified_name='core:TemperatureState', type='ContinuousState', values=None)], widget_name='TemperatureSensor', ui_class='TemperatureSensor', qualified_name='io:TemperatureInCelciusIOSystemDeviceSensor'), data_properties=None, widget='TemperatureSensor', ui_class='TemperatureSensor', states=States(_states=[State(name='core:StatusState', type=<DataType.STRING: 3>, value='available'), State(name='core:TemperatureState', type=<DataType.FLOAT: 2>, value=17.0)]), type=<ProductType.SENSOR: 2>, place_oid='48ed22a9-5bb5-446f-8177-120d2d9ef2fe'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Unsupported device detected (Device(attributes=States(_states=[State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group'), State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='2d202020ffffff240000'), State(name='core:PowerSourceType', type=<DataType.STRING: 3>, value='mainSupply')]), available=True, enabled=True, label='Radiateur Salon', device_url=io://****-****-2069/5019957#3, controllable_name='io:ContactIOSystemDeviceSensor', definition=Definition(commands=CommandDefinitions(_commands=[]), states=[StateDefinition(qualified_name='core:ContactState', type='DiscreteState', values=['closed', 'open']), StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable'])], widget_name='ContactSensor', ui_class='ContactSensor', qualified_name='io:ContactIOSystemDeviceSensor'), data_properties=None, widget='ContactSensor', ui_class='ContactSensor', states=States(_states=[State(name='core:StatusState', type=<DataType.STRING: 3>, value='available')]), type=<ProductType.SENSOR: 2>, place_oid='48ed22a9-5bb5-446f-8177-120d2d9ef2fe'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Unsupported device detected (Device(attributes=States(_states=[State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group'), State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='2d202020ffffff240000'), State(name='core:PowerSourceType', type=<DataType.STRING: 3>, value='mainSupply')]), available=True, enabled=True, label='Radiateur Salon', device_url=io://****-****-2069/5019957#4, controllable_name='io:OccupancyIOSystemDeviceSensor', definition=Definition(commands=CommandDefinitions(_commands=[]), states=[StateDefinition(qualified_name='core:OccupancyState', type='DiscreteState', values=['noPersonInside', 'personInside']), StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable'])], widget_name='OccupancySensor', ui_class='OccupancySensor', qualified_name='io:OccupancyIOSystemDeviceSensor'), data_properties=None, widget='OccupancySensor', ui_class='OccupancySensor', states=States(_states=[State(name='core:StatusState', type=<DataType.STRING: 3>, value='available')]), type=<ProductType.SENSOR: 2>, place_oid='48ed22a9-5bb5-446f-8177-120d2d9ef2fe'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Unsupported device detected (Device(attributes=States(_states=[State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group'), State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='2d202020ffffff240000'), State(name='core:PowerSourceType', type=<DataType.STRING: 3>, value='mainSupply'), State(name='core:MeasuredValueType', type=<DataType.STRING: 3>, value='core:ElectricalEnergyInWh')]), available=True, enabled=True, label='Radiateur Salon', device_url=io://****-****-2069/5019957#5, controllable_name='io:CumulatedElectricalEnergyConsumptionIOSystemDeviceSensor', definition=Definition(commands=CommandDefinitions(_commands=[]), states=[StateDefinition(qualified_name='core:ElectricEnergyConsumptionState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable'])], widget_name='CumulativeElectricPowerConsumptionSensor', ui_class='ElectricitySensor', qualified_name='io:CumulatedElectricalEnergyConsumptionIOSystemDeviceSensor'), data_properties=None, widget='CumulativeElectricPowerConsumptionSensor', ui_class='ElectricitySensor', states=States(_states=[State(name='core:StatusState', type=<DataType.STRING: 3>, value='available'), State(name='core:ElectricEnergyConsumptionState', type=<DataType.INTEGER: 1>, value=98000)]), type=<ProductType.SENSOR: 2>, place_oid='48ed22a9-5bb5-446f-8177-120d2d9ef2fe'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Added device (Device(attributes=States(_states=[State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='VELUX'), State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='00000000000000000007')]), available=True, enabled=True, label='Velux Chambre', device_url=io://****-****-2069/7113249, controllable_name='io:RollerShutterVeluxIOComponent', definition=Definition(commands=CommandDefinitions(_commands=[CommandDefinition(command_name='advancedRefresh', nparams=1), CommandDefinition(command_name='close', nparams=0), CommandDefinition(command_name='delayedStopIdentify', nparams=1), CommandDefinition(command_name='down', nparams=0), CommandDefinition(command_name='getName', nparams=0), CommandDefinition(command_name='identify', nparams=0), CommandDefinition(command_name='my', nparams=0), CommandDefinition(command_name='open', nparams=0), CommandDefinition(command_name='refreshMemorized1Position', nparams=0), CommandDefinition(command_name='setClosure', nparams=1), CommandDefinition(command_name='setDeployment', nparams=1), CommandDefinition(command_name='setMemorized1Position', nparams=1), CommandDefinition(command_name='setName', nparams=1), CommandDefinition(command_name='setPosition', nparams=1), CommandDefinition(command_name='setSecuredPosition', nparams=1), CommandDefinition(command_name='startIdentify', nparams=0), CommandDefinition(command_name='stop', nparams=0), CommandDefinition(command_name='stopIdentify', nparams=0), CommandDefinition(command_name='up', nparams=0), CommandDefinition(command_name='wink', nparams=1), CommandDefinition(command_name='pairOneWayController', nparams=2), CommandDefinition(command_name='setConfigState', nparams=1), CommandDefinition(command_name='unpairAllOneWayControllers', nparams=0), CommandDefinition(command_name='unpairOneWayController', nparams=2)]), states=[StateDefinition(qualified_name='core:ClosureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:DiscreteRSSILevelState', type='DiscreteState', values=['good', 'low', 'normal', 'verylow']), StateDefinition(qualified_name='core:Memorized1PositionState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:NameState', type='DataState', values=None), StateDefinition(qualified_name='core:OpenClosedState', type='DiscreteState', values=['closed', 'open']), StateDefinition(qualified_name='core:PriorityLockTimerState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:RSSILevelState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:SecuredPositionState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable']), StateDefinition(qualified_name='io:PriorityLockLevelState', type='DiscreteState', values=['comfortLevel1', 'comfortLevel2', 'comfortLevel3', 'comfortLevel4', 'environmentProtection', 'humanProtection', 'userLevel1', 'userLevel2']), StateDefinition(qualified_name='io:PriorityLockOriginatorState', type='DiscreteState', values=['LSC', 'SAAC', 'SFC', 'UPS', 'externalGateway', 'localUser', 'myself', 'rain', 'security', 'temperature', 'timer', 'user', 'wind'])], widget_name='PositionableTiltedRollerShutter', ui_class='RollerShutter', qualified_name='io:RollerShutterVeluxIOComponent'), data_properties=None, widget='PositionableTiltedRollerShutter', ui_class='RollerShutter', states=States(_states=[State(name='core:NameState', type=<DataType.STRING: 3>, value='Velux Chambre'), State(name='core:PriorityLockTimerState', type=<DataType.INTEGER: 1>, value=0), State(name='core:StatusState', type=<DataType.STRING: 3>, value='available'), State(name='core:DiscreteRSSILevelState', type=<DataType.STRING: 3>, value='normal'), State(name='core:RSSILevelState', type=<DataType.FLOAT: 2>, value=76.0), State(name='core:ClosureState', type=<DataType.INTEGER: 1>, value=100), State(name='core:OpenClosedState', type=<DataType.STRING: 3>, value='closed'), State(name='core:Memorized1PositionState', type=<DataType.INTEGER: 1>, value=0)]), type=<ProductType.ACTUATOR: 1>, place_oid='616809ec-4cdc-44af-81e6-a4a8b590f10a'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Added device (Device(attributes=States(_states=[State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='2d202020ffffff240000'), State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group')]), available=True, enabled=True, label='Radiateur entrée', device_url=io://****-****-2069/7668855#1, controllable_name='io:AtlanticElectricalHeaterWithAdjustableTemperatureSetpointIOComponent', definition=Definition(commands=CommandDefinitions(_commands=[CommandDefinition(command_name='advancedRefresh', nparams=1), CommandDefinition(command_name='cancelHeatingLevel', nparams=1), CommandDefinition(command_name='delayedStopIdentify', nparams=1), CommandDefinition(command_name='getName', nparams=0), CommandDefinition(command_name='identify', nparams=0), CommandDefinition(command_name='noPersonInside', nparams=0), CommandDefinition(command_name='off', nparams=0), CommandDefinition(command_name='personInside', nparams=0), CommandDefinition(command_name='refreshComfortTemperature', nparams=0), CommandDefinition(command_name='refreshDerogatedTargetTemperature', nparams=0), CommandDefinition(command_name='refreshEcoTemperature', nparams=0), CommandDefinition(command_name='refreshHeatingLevel', nparams=0), CommandDefinition(command_name='refreshIdentifier', nparams=0), CommandDefinition(command_name='refreshManufacturerName', nparams=0), CommandDefinition(command_name='refreshMaximumHeatingTargetTemperature', nparams=0), CommandDefinition(command_name='refreshMaximumTargetTemperature', nparams=0), CommandDefinition(command_name='refreshOperatingMode', nparams=0), CommandDefinition(command_name='refreshTargetTemperature', nparams=0), CommandDefinition(command_name='refreshTemperature', nparams=0), CommandDefinition(command_name='refreshTimeProgram', nparams=0), CommandDefinition(command_name='setComfortTemperature', nparams=1), CommandDefinition(command_name='setDerogatedTargetTemperature', nparams=1), CommandDefinition(command_name='setEcoTemperature', nparams=1), CommandDefinition(command_name='setHeatingLevel', nparams=1), CommandDefinition(command_name='setHeatingLevelWithTimer', nparams=2), CommandDefinition(command_name='setHolidays', nparams=1), CommandDefinition(command_name='setHolidaysTargetTemperature', nparams=1), CommandDefinition(command_name='setName', nparams=1), CommandDefinition(command_name='setOccupancyActivation', nparams=1), CommandDefinition(command_name='setOccupancy', nparams=1), CommandDefinition(command_name='setOpenWindowDetectionActivation', nparams=1), CommandDefinition(command_name='setOperatingMode', nparams=1), CommandDefinition(command_name='setPreviousTargetTemperature', nparams=1), CommandDefinition(command_name='setSchedulingType', nparams=1), CommandDefinition(command_name='setTargetTemperature', nparams=1), CommandDefinition(command_name='setTimeProgram', nparams=1), CommandDefinition(command_name='startIdentify', nparams=0), CommandDefinition(command_name='stopIdentify', nparams=0), CommandDefinition(command_name='wink', nparams=1), CommandDefinition(command_name='pairOneWayController', nparams=2), CommandDefinition(command_name='refreshAutoProgram', nparams=0), CommandDefinition(command_name='refreshControllerAddress', nparams=0), CommandDefinition(command_name='refreshModel', nparams=0), CommandDefinition(command_name='refreshNativeFunctionalLevel', nparams=0), CommandDefinition(command_name='refreshPowerAndTension', nparams=0), CommandDefinition(command_name='refreshSetpointLoweringTemperatureInProgMode', nparams=0), CommandDefinition(command_name='setHeatingLevelForTrigger', nparams=1), CommandDefinition(command_name='setSetpointLoweringTemperatureInProgMode', nparams=1), CommandDefinition(command_name='setTwinningExit', nparams=1), CommandDefinition(command_name='unpairAllOneWayControllers', nparams=0), CommandDefinition(command_name='unpairOneWayController', nparams=2)]), states=[StateDefinition(qualified_name='core:ComfortRoomTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:DerogatedTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:DiscreteRSSILevelState', type='DiscreteState', values=['good', 'low', 'normal', 'verylow']), StateDefinition(qualified_name='core:EcoRoomTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:HolidaysModeState', type='DiscreteState', values=['off', 'on']), StateDefinition(qualified_name='core:HolidaysTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:IdentifierState', type='DataState', values=None), StateDefinition(qualified_name='core:ManufacturerNameState', type='DataState', values=None), StateDefinition(qualified_name='core:MaximumHeatingTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:MaximumTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:NameState', type='DataState', values=None), StateDefinition(qualified_name='core:OccupancyActivationState', type='DiscreteState', values=['active', 'inactive']), StateDefinition(qualified_name='core:OnOffState', type='DiscreteState', values=['off', 'on']), StateDefinition(qualified_name='core:OpenWindowDetectionActivationState', type='DiscreteState', values=['active', 'inactive']), StateDefinition(qualified_name='core:OperatingModeState', type='DiscreteState', values=['antifreeze', 'auto', 'away', 'eco', 'frostprotection', 'manual', 'max', 'normal', 'off', 'on', 'prog', 'program', 'boost']), StateDefinition(qualified_name='core:PreviousTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:PriorityLockTimerState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:RSSILevelState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:RegulationModeState', type='DiscreteState', values=['increase', 'none', 'standby']), StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable']), StateDefinition(qualified_name='core:TargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:TimeProgramState', type='DataState', values=None), StateDefinition(qualified_name='core:VersionState', type='ContinuousState', values=None), StateDefinition(qualified_name='io:ControllerAddressState', type='DataState', values=None), StateDefinition(qualified_name='io:InternalExternalSchedulingTypeState', type='DiscreteState', values=['external', 'internal']), StateDefinition(qualified_name='io:MaximumHeatingLevelState', type='DiscreteState', values=['boost', 'comfort', 'comfort-1', 'comfort-2', 'eco', 'frostprotection', 'off', 'secured']), StateDefinition(qualified_name='io:ModelState', type='DataState', values=None), StateDefinition(qualified_name='io:NativeFunctionalLevelState', type='DiscreteState', values=['base', 'medium', 'top']), StateDefinition(qualified_name='io:PowerState', type='DataState', values=None), StateDefinition(qualified_name='io:PriorityLockLevelState', type='DiscreteState', values=['comfortLevel1', 'comfortLevel2', 'comfortLevel3', 'comfortLevel4', 'environmentProtection', 'humanProtection', 'userLevel1', 'userLevel2']), StateDefinition(qualified_name='io:PriorityLockOriginatorState', type='DiscreteState', values=['LSC', 'SAAC', 'SFC', 'UPS', 'externalGateway', 'localUser', 'myself', 'rain', 'security', 'temperature', 'timer', 'user', 'wind']), StateDefinition(qualified_name='io:SetpointLoweringTemperatureInProgModeState', type='ContinuousState', values=None), StateDefinition(qualified_name='io:TargetHeatingLevelState', type='DiscreteState', values=['boost', 'comfort', 'comfort-1', 'comfort-2', 'eco', 'frostprotection', 'off', 'secured']), StateDefinition(qualified_name='io:TensionState', type='DataState', values=None), StateDefinition(qualified_name='io:TimerForTransitoryStateState', type='ContinuousState', values=None)], widget_name='AtlanticElectricalHeaterWithAdjustableTemperatureSetpoint', ui_class='HeatingSystem', qualified_name='io:AtlanticElectricalHeaterWithAdjustableTemperatureSetpointIOComponent'), data_properties=None, widget='AtlanticElectricalHeaterWithAdjustableTemperatureSetpoint', ui_class='HeatingSystem', states=States(_states=[State(name='core:NameState', type=<DataType.STRING: 3>, value='Radiateur entré'), State(name='core:VersionState', type=<DataType.STRING: 3>, value='2d202020ffffff240000'), State(name='core:OnOffState', type=<DataType.STRING: 3>, value='on'), State(name='io:TargetHeatingLevelState', type=<DataType.STRING: 3>, value='eco'), State(name='core:StatusState', type=<DataType.STRING: 3>, value='available'), State(name='core:DiscreteRSSILevelState', type=<DataType.STRING: 3>, value='good'), State(name='core:RSSILevelState', type=<DataType.FLOAT: 2>, value=98.0), State(name='core:IdentifierState', type=<DataType.STRING: 3>, value='00000000'), State(name='io:MaximumHeatingLevelState', type=<DataType.STRING: 3>, value='unknown'), State(name='io:TimerForTransitoryStateState', type=<DataType.INTEGER: 1>, value=0), State(name='core:ComfortRoomTemperatureState', type=<DataType.INTEGER: 1>, value=18), State(name='core:EcoRoomTemperatureState', type=<DataType.INTEGER: 1>, value=3), State(name='core:OperatingModeState', type=<DataType.STRING: 3>, value='internal'), State(name='core:OccupancyActivationState', type=<DataType.STRING: 3>, value='inactive'), State(name='core:MaximumHeatingTargetTemperatureState', type=<DataType.FLOAT: 2>, value=28.0), State(name='core:MaximumTargetTemperatureState', type=<DataType.FLOAT: 2>, value=28.0), State(name='core:TargetTemperatureState', type=<DataType.FLOAT: 2>, value=18.0), State(name='io:SetpointLoweringTemperatureInProgModeState', type=<DataType.FLOAT: 2>, value=3.0), State(name='core:OpenWindowDetectionActivationState', type=<DataType.STRING: 3>, value='active'), State(name='io:InternalExternalSchedulingTypeState', type=<DataType.STRING: 3>, value='internal'), State(name='core:RegulationModeState', type=<DataType.STRING: 3>, value='none'), State(name='core:ManufacturerNameState', type=<DataType.STRING: 3>, value='Sauter'), State(name='io:ModelState', type=<DataType.STRING: 3>, value='Malao'), State(name='io:PowerState', type=<DataType.INTEGER: 1>, value=1000), State(name='io:TensionState', type=<DataType.INTEGER: 1>, value=230), State(name='core:DerogatedTargetTemperatureState', type=<DataType.FLOAT: 2>, value=0.0), State(name='io:NativeFunctionalLevelState', type=<DataType.STRING: 3>, value='Base'), State(name='io:ControllerAddressState', type=<DataType.INTEGER: 1>, value=7668854), State(name='core:TimeProgramState', type=<DataType.JSON_ARRAY: 10>, value=[{'monday': [{'start': '04:30', 'end': '09:00'}, {'start': '16:00', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}]}, {'tuesday': [{'start': '04:30', 'end': '09:00'}, {'start': '16:00', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}]}, {'wednesday': [{'start': '04:30', 'end': '09:00'}, {'start': '16:00', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}]}, {'thursday': [{'start': '04:30', 'end': '09:00'}, {'start': '16:00', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}]}, {'friday': [{'start': '04:30', 'end': '09:00'}, {'start': '16:00', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}]}, {'saturday': [{'start': '04:30', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}, {'start': '00:00', 'end': '00:00'}]}, {'sunday': [{'start': '04:30', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}, {'start': '00:00', 'end': '00:00'}]}])]), type=<ProductType.ACTUATOR: 1>, place_oid='e99e29e7-2159-40c3-a138-4faf219d3293'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Unsupported device detected (Device(attributes=States(_states=[State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='2d202020ffffff240000'), State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group'), State(name='core:MeasuredValueType', type=<DataType.STRING: 3>, value='core:TemperatureInCelcius'), State(name='core:PowerSourceType', type=<DataType.STRING: 3>, value='mainSupply')]), available=True, enabled=True, label='Radiateur entrée', device_url=io://****-****-2069/7668855#2, controllable_name='io:TemperatureInCelciusIOSystemDeviceSensor', definition=Definition(commands=CommandDefinitions(_commands=[]), states=[StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable']), StateDefinition(qualified_name='core:TemperatureState', type='ContinuousState', values=None)], widget_name='TemperatureSensor', ui_class='TemperatureSensor', qualified_name='io:TemperatureInCelciusIOSystemDeviceSensor'), data_properties=None, widget='TemperatureSensor', ui_class='TemperatureSensor', states=States(_states=[State(name='core:StatusState', type=<DataType.STRING: 3>, value='available'), State(name='core:TemperatureState', type=<DataType.FLOAT: 2>, value=16.25)]), type=<ProductType.SENSOR: 2>, place_oid='e99e29e7-2159-40c3-a138-4faf219d3293'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Unsupported device detected (Device(attributes=States(_states=[State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='2d202020ffffff240000'), State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group'), State(name='core:PowerSourceType', type=<DataType.STRING: 3>, value='mainSupply')]), available=True, enabled=True, label='Radiateur entrée', device_url=io://****-****-2069/7668855#3, controllable_name='io:ContactIOSystemDeviceSensor', definition=Definition(commands=CommandDefinitions(_commands=[]), states=[StateDefinition(qualified_name='core:ContactState', type='DiscreteState', values=['closed', 'open']), StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable'])], widget_name='ContactSensor', ui_class='ContactSensor', qualified_name='io:ContactIOSystemDeviceSensor'), data_properties=None, widget='ContactSensor', ui_class='ContactSensor', states=States(_states=[State(name='core:StatusState', type=<DataType.STRING: 3>, value='available')]), type=<ProductType.SENSOR: 2>, place_oid='e99e29e7-2159-40c3-a138-4faf219d3293'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Unsupported device detected (Device(attributes=States(_states=[State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='2d202020ffffff240000'), State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group'), State(name='core:PowerSourceType', type=<DataType.STRING: 3>, value='mainSupply')]), available=True, enabled=True, label='Radiateur entrée', device_url=io://****-****-2069/7668855#4, controllable_name='io:OccupancyIOSystemDeviceSensor', definition=Definition(commands=CommandDefinitions(_commands=[]), states=[StateDefinition(qualified_name='core:OccupancyState', type='DiscreteState', values=['noPersonInside', 'personInside']), StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable'])], widget_name='OccupancySensor', ui_class='OccupancySensor', qualified_name='io:OccupancyIOSystemDeviceSensor'), data_properties=None, widget='OccupancySensor', ui_class='OccupancySensor', states=States(_states=[State(name='core:StatusState', type=<DataType.STRING: 3>, value='available')]), type=<ProductType.SENSOR: 2>, place_oid='e99e29e7-2159-40c3-a138-4faf219d3293'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Unsupported device detected (Device(attributes=States(_states=[State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='2d202020ffffff240000'), State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group'), State(name='core:PowerSourceType', type=<DataType.STRING: 3>, value='mainSupply'), State(name='core:MeasuredValueType', type=<DataType.STRING: 3>, value='core:ElectricalEnergyInWh')]), available=True, enabled=True, label='Radiateur entrée', device_url=io://****-****-2069/7668855#5, controllable_name='io:CumulatedElectricalEnergyConsumptionIOSystemDeviceSensor', definition=Definition(commands=CommandDefinitions(_commands=[]), states=[StateDefinition(qualified_name='core:ElectricEnergyConsumptionState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable'])], widget_name='CumulativeElectricPowerConsumptionSensor', ui_class='ElectricitySensor', qualified_name='io:CumulatedElectricalEnergyConsumptionIOSystemDeviceSensor'), data_properties=None, widget='CumulativeElectricPowerConsumptionSensor', ui_class='ElectricitySensor', states=States(_states=[State(name='core:StatusState', type=<DataType.STRING: 3>, value='available'), State(name='core:ElectricEnergyConsumptionState', type=<DataType.INTEGER: 1>, value=161000)]), type=<ProductType.SENSOR: 2>, place_oid='e99e29e7-2159-40c3-a138-4faf219d3293'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Added device (Device(attributes=States(_states=[State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='VELUX'), State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='00000000000000000007')]), available=True, enabled=True, label='Velux Salle de Bain', device_url=io://****-****-2069/8373768, controllable_name='io:RollerShutterVeluxIOComponent', definition=Definition(commands=CommandDefinitions(_commands=[CommandDefinition(command_name='advancedRefresh', nparams=1), CommandDefinition(command_name='close', nparams=0), CommandDefinition(command_name='delayedStopIdentify', nparams=1), CommandDefinition(command_name='down', nparams=0), CommandDefinition(command_name='getName', nparams=0), CommandDefinition(command_name='identify', nparams=0), CommandDefinition(command_name='my', nparams=0), CommandDefinition(command_name='open', nparams=0), CommandDefinition(command_name='refreshMemorized1Position', nparams=0), CommandDefinition(command_name='setClosure', nparams=1), CommandDefinition(command_name='setDeployment', nparams=1), CommandDefinition(command_name='setMemorized1Position', nparams=1), CommandDefinition(command_name='setName', nparams=1), CommandDefinition(command_name='setPosition', nparams=1), CommandDefinition(command_name='setSecuredPosition', nparams=1), CommandDefinition(command_name='startIdentify', nparams=0), CommandDefinition(command_name='stop', nparams=0), CommandDefinition(command_name='stopIdentify', nparams=0), CommandDefinition(command_name='up', nparams=0), CommandDefinition(command_name='wink', nparams=1), CommandDefinition(command_name='pairOneWayController', nparams=2), CommandDefinition(command_name='setConfigState', nparams=1), CommandDefinition(command_name='unpairAllOneWayControllers', nparams=0), CommandDefinition(command_name='unpairOneWayController', nparams=2)]), states=[StateDefinition(qualified_name='core:ClosureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:DiscreteRSSILevelState', type='DiscreteState', values=['good', 'low', 'normal', 'verylow']), StateDefinition(qualified_name='core:Memorized1PositionState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:NameState', type='DataState', values=None), StateDefinition(qualified_name='core:OpenClosedState', type='DiscreteState', values=['closed', 'open']), StateDefinition(qualified_name='core:PriorityLockTimerState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:RSSILevelState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:SecuredPositionState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable']), StateDefinition(qualified_name='io:PriorityLockLevelState', type='DiscreteState', values=['comfortLevel1', 'comfortLevel2', 'comfortLevel3', 'comfortLevel4', 'environmentProtection', 'humanProtection', 'userLevel1', 'userLevel2']), StateDefinition(qualified_name='io:PriorityLockOriginatorState', type='DiscreteState', values=['LSC', 'SAAC', 'SFC', 'UPS', 'externalGateway', 'localUser', 'myself', 'rain', 'security', 'temperature', 'timer', 'user', 'wind'])], widget_name='PositionableTiltedRollerShutter', ui_class='RollerShutter', qualified_name='io:RollerShutterVeluxIOComponent'), data_properties=None, widget='PositionableTiltedRollerShutter', ui_class='RollerShutter', states=States(_states=[State(name='core:NameState', type=<DataType.STRING: 3>, value='Velux Salle de B'), State(name='core:PriorityLockTimerState', type=<DataType.INTEGER: 1>, value=0), State(name='core:StatusState', type=<DataType.STRING: 3>, value='available'), State(name='core:DiscreteRSSILevelState', type=<DataType.STRING: 3>, value='normal'), State(name='core:RSSILevelState', type=<DataType.FLOAT: 2>, value=74.0), State(name='core:ClosureState', type=<DataType.INTEGER: 1>, value=100), State(name='core:OpenClosedState', type=<DataType.STRING: 3>, value='closed'), State(name='core:Memorized1PositionState', type=<DataType.INTEGER: 1>, value=0)]), type=<ProductType.ACTUATOR: 1>, place_oid='616809ec-4cdc-44af-81e6-a4a8b590f10a'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Added device (Device(attributes=States(_states=[State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group'), State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='2d202020ffffff240000')]), available=True, enabled=True, label='Radiateur Salle à Manger', device_url=io://****-****-2069/9401954#1, controllable_name='io:AtlanticElectricalHeaterWithAdjustableTemperatureSetpointIOComponent', definition=Definition(commands=CommandDefinitions(_commands=[CommandDefinition(command_name='advancedRefresh', nparams=1), CommandDefinition(command_name='cancelHeatingLevel', nparams=1), CommandDefinition(command_name='delayedStopIdentify', nparams=1), CommandDefinition(command_name='getName', nparams=0), CommandDefinition(command_name='identify', nparams=0), CommandDefinition(command_name='noPersonInside', nparams=0), CommandDefinition(command_name='off', nparams=0), CommandDefinition(command_name='personInside', nparams=0), CommandDefinition(command_name='refreshComfortTemperature', nparams=0), CommandDefinition(command_name='refreshDerogatedTargetTemperature', nparams=0), CommandDefinition(command_name='refreshEcoTemperature', nparams=0), CommandDefinition(command_name='refreshHeatingLevel', nparams=0), CommandDefinition(command_name='refreshIdentifier', nparams=0), CommandDefinition(command_name='refreshManufacturerName', nparams=0), CommandDefinition(command_name='refreshMaximumHeatingTargetTemperature', nparams=0), CommandDefinition(command_name='refreshMaximumTargetTemperature', nparams=0), CommandDefinition(command_name='refreshOperatingMode', nparams=0), CommandDefinition(command_name='refreshTargetTemperature', nparams=0), CommandDefinition(command_name='refreshTemperature', nparams=0), CommandDefinition(command_name='refreshTimeProgram', nparams=0), CommandDefinition(command_name='setComfortTemperature', nparams=1), CommandDefinition(command_name='setDerogatedTargetTemperature', nparams=1), CommandDefinition(command_name='setEcoTemperature', nparams=1), CommandDefinition(command_name='setHeatingLevel', nparams=1), CommandDefinition(command_name='setHeatingLevelWithTimer', nparams=2), CommandDefinition(command_name='setHolidays', nparams=1), CommandDefinition(command_name='setHolidaysTargetTemperature', nparams=1), CommandDefinition(command_name='setName', nparams=1), CommandDefinition(command_name='setOccupancyActivation', nparams=1), CommandDefinition(command_name='setOccupancy', nparams=1), CommandDefinition(command_name='setOpenWindowDetectionActivation', nparams=1), CommandDefinition(command_name='setOperatingMode', nparams=1), CommandDefinition(command_name='setPreviousTargetTemperature', nparams=1), CommandDefinition(command_name='setSchedulingType', nparams=1), CommandDefinition(command_name='setTargetTemperature', nparams=1), CommandDefinition(command_name='setTimeProgram', nparams=1), CommandDefinition(command_name='startIdentify', nparams=0), CommandDefinition(command_name='stopIdentify', nparams=0), CommandDefinition(command_name='wink', nparams=1), CommandDefinition(command_name='pairOneWayController', nparams=2), CommandDefinition(command_name='refreshAutoProgram', nparams=0), CommandDefinition(command_name='refreshControllerAddress', nparams=0), CommandDefinition(command_name='refreshModel', nparams=0), CommandDefinition(command_name='refreshNativeFunctionalLevel', nparams=0), CommandDefinition(command_name='refreshPowerAndTension', nparams=0), CommandDefinition(command_name='refreshSetpointLoweringTemperatureInProgMode', nparams=0), CommandDefinition(command_name='setHeatingLevelForTrigger', nparams=1), CommandDefinition(command_name='setSetpointLoweringTemperatureInProgMode', nparams=1), CommandDefinition(command_name='setTwinningExit', nparams=1), CommandDefinition(command_name='unpairAllOneWayControllers', nparams=0), CommandDefinition(command_name='unpairOneWayController', nparams=2)]), states=[StateDefinition(qualified_name='core:ComfortRoomTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:DerogatedTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:DiscreteRSSILevelState', type='DiscreteState', values=['good', 'low', 'normal', 'verylow']), StateDefinition(qualified_name='core:EcoRoomTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:HolidaysModeState', type='DiscreteState', values=['off', 'on']), StateDefinition(qualified_name='core:HolidaysTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:IdentifierState', type='DataState', values=None), StateDefinition(qualified_name='core:ManufacturerNameState', type='DataState', values=None), StateDefinition(qualified_name='core:MaximumHeatingTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:MaximumTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:NameState', type='DataState', values=None), StateDefinition(qualified_name='core:OccupancyActivationState', type='DiscreteState', values=['active', 'inactive']), StateDefinition(qualified_name='core:OnOffState', type='DiscreteState', values=['off', 'on']), StateDefinition(qualified_name='core:OpenWindowDetectionActivationState', type='DiscreteState', values=['active', 'inactive']), StateDefinition(qualified_name='core:OperatingModeState', type='DiscreteState', values=['antifreeze', 'auto', 'away', 'eco', 'frostprotection', 'manual', 'max', 'normal', 'off', 'on', 'prog', 'program', 'boost']), StateDefinition(qualified_name='core:PreviousTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:PriorityLockTimerState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:RSSILevelState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:RegulationModeState', type='DiscreteState', values=['increase', 'none', 'standby']), StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable']), StateDefinition(qualified_name='core:TargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:TimeProgramState', type='DataState', values=None), StateDefinition(qualified_name='core:VersionState', type='ContinuousState', values=None), StateDefinition(qualified_name='io:ControllerAddressState', type='DataState', values=None), StateDefinition(qualified_name='io:InternalExternalSchedulingTypeState', type='DiscreteState', values=['external', 'internal']), StateDefinition(qualified_name='io:MaximumHeatingLevelState', type='DiscreteState', values=['boost', 'comfort', 'comfort-1', 'comfort-2', 'eco', 'frostprotection', 'off', 'secured']), StateDefinition(qualified_name='io:ModelState', type='DataState', values=None), StateDefinition(qualified_name='io:NativeFunctionalLevelState', type='DiscreteState', values=['base', 'medium', 'top']), StateDefinition(qualified_name='io:PowerState', type='DataState', values=None), StateDefinition(qualified_name='io:PriorityLockLevelState', type='DiscreteState', values=['comfortLevel1', 'comfortLevel2', 'comfortLevel3', 'comfortLevel4', 'environmentProtection', 'humanProtection', 'userLevel1', 'userLevel2']), StateDefinition(qualified_name='io:PriorityLockOriginatorState', type='DiscreteState', values=['LSC', 'SAAC', 'SFC', 'UPS', 'externalGateway', 'localUser', 'myself', 'rain', 'security', 'temperature', 'timer', 'user', 'wind']), StateDefinition(qualified_name='io:SetpointLoweringTemperatureInProgModeState', type='ContinuousState', values=None), StateDefinition(qualified_name='io:TargetHeatingLevelState', type='DiscreteState', values=['boost', 'comfort', 'comfort-1', 'comfort-2', 'eco', 'frostprotection', 'off', 'secured']), StateDefinition(qualified_name='io:TensionState', type='DataState', values=None), StateDefinition(qualified_name='io:TimerForTransitoryStateState', type='ContinuousState', values=None)], widget_name='AtlanticElectricalHeaterWithAdjustableTemperatureSetpoint', ui_class='HeatingSystem', qualified_name='io:AtlanticElectricalHeaterWithAdjustableTemperatureSetpointIOComponent'), data_properties=None, widget='AtlanticElectricalHeaterWithAdjustableTemperatureSetpoint', ui_class='HeatingSystem', states=States(_states=[State(name='core:NameState', type=<DataType.STRING: 3>, value='Radiateur Salle'), State(name='core:VersionState', type=<DataType.STRING: 3>, value='2d202020ffffff240000'), State(name='core:OnOffState', type=<DataType.STRING: 3>, value='on'), State(name='io:TargetHeatingLevelState', type=<DataType.STRING: 3>, value='eco'), State(name='core:StatusState', type=<DataType.STRING: 3>, value='available'), State(name='core:DiscreteRSSILevelState', type=<DataType.STRING: 3>, value='good'), State(name='core:RSSILevelState', type=<DataType.FLOAT: 2>, value=92.0), State(name='core:IdentifierState', type=<DataType.STRING: 3>, value='00000000'), State(name='io:MaximumHeatingLevelState', type=<DataType.STRING: 3>, value='unknown'), State(name='io:TimerForTransitoryStateState', type=<DataType.INTEGER: 1>, value=0), State(name='core:ComfortRoomTemperatureState', type=<DataType.INTEGER: 1>, value=18), State(name='core:EcoRoomTemperatureState', type=<DataType.INTEGER: 1>, value=3), State(name='core:OperatingModeState', type=<DataType.STRING: 3>, value='internal'), State(name='core:OccupancyActivationState', type=<DataType.STRING: 3>, value='inactive'), State(name='core:MaximumHeatingTargetTemperatureState', type=<DataType.FLOAT: 2>, value=28.0), State(name='core:MaximumTargetTemperatureState', type=<DataType.FLOAT: 2>, value=28.0), State(name='core:TargetTemperatureState', type=<DataType.FLOAT: 2>, value=18.0), State(name='io:SetpointLoweringTemperatureInProgModeState', type=<DataType.FLOAT: 2>, value=3.0), State(name='core:OpenWindowDetectionActivationState', type=<DataType.STRING: 3>, value='active'), State(name='io:InternalExternalSchedulingTypeState', type=<DataType.STRING: 3>, value='internal'), State(name='core:RegulationModeState', type=<DataType.STRING: 3>, value='none'), State(name='core:ManufacturerNameState', type=<DataType.STRING: 3>, value='Sauter'), State(name='io:ModelState', type=<DataType.STRING: 3>, value='Malao V'), State(name='io:PowerState', type=<DataType.INTEGER: 1>, value=1500), State(name='io:TensionState', type=<DataType.INTEGER: 1>, value=230), State(name='core:DerogatedTargetTemperatureState', type=<DataType.FLOAT: 2>, value=0.0), State(name='io:NativeFunctionalLevelState', type=<DataType.STRING: 3>, value='Base'), State(name='io:ControllerAddressState', type=<DataType.INTEGER: 1>, value=9401953), State(name='core:TimeProgramState', type=<DataType.JSON_ARRAY: 10>, value=[{'monday': [{'start': '04:30', 'end': '09:00'}, {'start': '16:00', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}]}, {'tuesday': [{'start': '04:30', 'end': '09:00'}, {'start': '16:00', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}]}, {'wednesday': [{'start': '04:30', 'end': '09:00'}, {'start': '16:00', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}]}, {'thursday': [{'start': '04:30', 'end': '09:00'}, {'start': '16:00', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}]}, {'friday': [{'start': '04:30', 'end': '09:00'}, {'start': '16:00', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}]}, {'saturday': [{'start': '04:30', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}, {'start': '00:00', 'end': '00:00'}]}, {'sunday': [{'start': '04:30', 'end': '23:00'}, {'start': '00:00', 'end': '00:00'}, {'start': '00:00', 'end': '00:00'}]}])]), type=<ProductType.ACTUATOR: 1>, place_oid='28c4d630-5294-431d-9366-d218a696ebc9'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Unsupported device detected (Device(attributes=States(_states=[State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group'), State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='2d202020ffffff240000'), State(name='core:MeasuredValueType', type=<DataType.STRING: 3>, value='core:TemperatureInCelcius'), State(name='core:PowerSourceType', type=<DataType.STRING: 3>, value='mainSupply')]), available=True, enabled=True, label='Radiateur Salle à Manger', device_url=io://****-****-2069/9401954#2, controllable_name='io:TemperatureInCelciusIOSystemDeviceSensor', definition=Definition(commands=CommandDefinitions(_commands=[]), states=[StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable']), StateDefinition(qualified_name='core:TemperatureState', type='ContinuousState', values=None)], widget_name='TemperatureSensor', ui_class='TemperatureSensor', qualified_name='io:TemperatureInCelciusIOSystemDeviceSensor'), data_properties=None, widget='TemperatureSensor', ui_class='TemperatureSensor', states=States(_states=[State(name='core:StatusState', type=<DataType.STRING: 3>, value='available'), State(name='core:TemperatureState', type=<DataType.FLOAT: 2>, value=17.75)]), type=<ProductType.SENSOR: 2>, place_oid='28c4d630-5294-431d-9366-d218a696ebc9'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Unsupported device detected (Device(attributes=States(_states=[State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group'), State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='2d202020ffffff240000'), State(name='core:PowerSourceType', type=<DataType.STRING: 3>, value='mainSupply')]), available=True, enabled=True, label='Radiateur Salle à Manger', device_url=io://****-****-2069/9401954#3, controllable_name='io:ContactIOSystemDeviceSensor', definition=Definition(commands=CommandDefinitions(_commands=[]), states=[StateDefinition(qualified_name='core:ContactState', type='DiscreteState', values=['closed', 'open']), StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable'])], widget_name='ContactSensor', ui_class='ContactSensor', qualified_name='io:ContactIOSystemDeviceSensor'), data_properties=None, widget='ContactSensor', ui_class='ContactSensor', states=States(_states=[State(name='core:StatusState', type=<DataType.STRING: 3>, value='available')]), type=<ProductType.SENSOR: 2>, place_oid='28c4d630-5294-431d-9366-d218a696ebc9'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Unsupported device detected (Device(attributes=States(_states=[State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group'), State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='2d202020ffffff240000'), State(name='core:PowerSourceType', type=<DataType.STRING: 3>, value='mainSupply')]), available=True, enabled=True, label='Radiateur Salle à Manger', device_url=io://****-****-2069/9401954#4, controllable_name='io:OccupancyIOSystemDeviceSensor', definition=Definition(commands=CommandDefinitions(_commands=[]), states=[StateDefinition(qualified_name='core:OccupancyState', type='DiscreteState', values=['noPersonInside', 'personInside']), StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable'])], widget_name='OccupancySensor', ui_class='OccupancySensor', qualified_name='io:OccupancyIOSystemDeviceSensor'), data_properties=None, widget='OccupancySensor', ui_class='OccupancySensor', states=States(_states=[State(name='core:StatusState', type=<DataType.STRING: 3>, value='available')]), type=<ProductType.SENSOR: 2>, place_oid='28c4d630-5294-431d-9366-d218a696ebc9'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Unsupported device detected (Device(attributes=States(_states=[State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group'), State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='2d202020ffffff240000'), State(name='core:PowerSourceType', type=<DataType.STRING: 3>, value='mainSupply'), State(name='core:MeasuredValueType', type=<DataType.STRING: 3>, value='core:ElectricalEnergyInWh')]), available=True, enabled=True, label='Radiateur Salle à Manger', device_url=io://****-****-2069/9401954#5, controllable_name='io:CumulatedElectricalEnergyConsumptionIOSystemDeviceSensor', definition=Definition(commands=CommandDefinitions(_commands=[]), states=[StateDefinition(qualified_name='core:ElectricEnergyConsumptionState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable'])], widget_name='CumulativeElectricPowerConsumptionSensor', ui_class='ElectricitySensor', qualified_name='io:CumulatedElectricalEnergyConsumptionIOSystemDeviceSensor'), data_properties=None, widget='CumulativeElectricPowerConsumptionSensor', ui_class='ElectricitySensor', states=States(_states=[State(name='core:StatusState', type=<DataType.STRING: 3>, value='available'), State(name='core:ElectricEnergyConsumptionState', type=<DataType.INTEGER: 1>, value=215000)]), type=<ProductType.SENSOR: 2>, place_oid='28c4d630-5294-431d-9366-d218a696ebc9'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Added device (Device(attributes=States(_states=[State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='D725008'), State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group')]), available=True, enabled=True, label='I2G_Actuator', device_url=io://****-****-2069/9492619#1, controllable_name='io:AtlanticElectricalTowelDryer_IC3_IOComponent', definition=Definition(commands=CommandDefinitions(_commands=[CommandDefinition(command_name='advancedRefresh', nparams=1), CommandDefinition(command_name='cancelHeatingLevel', nparams=1), CommandDefinition(command_name='delayedStopIdentify', nparams=1), CommandDefinition(command_name='getName', nparams=0), CommandDefinition(command_name='identify', nparams=0), CommandDefinition(command_name='off', nparams=0), CommandDefinition(command_name='refreshComfortTemperature', nparams=0), CommandDefinition(command_name='refreshDerogatedTargetTemperature', nparams=0), CommandDefinition(command_name='refreshEcoTemperature', nparams=0), CommandDefinition(command_name='refreshHeatingLevel', nparams=0), CommandDefinition(command_name='refreshManufacturerName', nparams=0), CommandDefinition(command_name='refreshMaximumHeatingTargetTemperature', nparams=0), CommandDefinition(command_name='refreshMaximumTargetTemperature', nparams=0), CommandDefinition(command_name='refreshTargetTemperature', nparams=0), CommandDefinition(command_name='refreshTemperature', nparams=0), CommandDefinition(command_name='setComfortTemperature', nparams=1), CommandDefinition(command_name='setDerogatedTargetTemperature', nparams=1), CommandDefinition(command_name='setEcoTemperature', nparams=1), CommandDefinition(command_name='setHeatingLevel', nparams=1), CommandDefinition(command_name='setHeatingLevelWithTimer', nparams=2), CommandDefinition(command_name='setName', nparams=1), CommandDefinition(command_name='setSchedulingType', nparams=1), CommandDefinition(command_name='setTargetTemperature', nparams=1), CommandDefinition(command_name='startIdentify', nparams=0), CommandDefinition(command_name='stopIdentify', nparams=0), CommandDefinition(command_name='wink', nparams=1), CommandDefinition(command_name='pairOneWayController', nparams=2), CommandDefinition(command_name='refreshAutoProgram', nparams=0), CommandDefinition(command_name='refreshControllerAddress', nparams=0), CommandDefinition(command_name='refreshModel', nparams=0), CommandDefinition(command_name='refreshNativeFunctionalLevel', nparams=0), CommandDefinition(command_name='refreshPowerAndTension', nparams=0), CommandDefinition(command_name='refreshSetpointLoweringTemperatureInProgMode', nparams=0), CommandDefinition(command_name='setSetpointLoweringTemperatureInProgMode', nparams=1), CommandDefinition(command_name='unpairAllOneWayControllers', nparams=0), CommandDefinition(command_name='unpairOneWayController', nparams=2)]), states=[StateDefinition(qualified_name='core:ComfortRoomTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:DerogatedTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:DiscreteRSSILevelState', type='DiscreteState', values=['good', 'low', 'normal', 'verylow']), StateDefinition(qualified_name='core:EcoRoomTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:IdentifierState', type='DataState', values=None), StateDefinition(qualified_name='core:ManufacturerNameState', type='DataState', values=None), StateDefinition(qualified_name='core:MaximumHeatingTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:MaximumTargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:NameState', type='DataState', values=None), StateDefinition(qualified_name='core:OnOffState', type='DiscreteState', values=['off', 'on']), StateDefinition(qualified_name='core:PriorityLockTimerState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:RSSILevelState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:RegulationModeState', type='DiscreteState', values=['increase', 'none', 'standby']), StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable']), StateDefinition(qualified_name='core:TargetTemperatureState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:VersionState', type='ContinuousState', values=None), StateDefinition(qualified_name='io:ControllerAddressState', type='DataState', values=None), StateDefinition(qualified_name='io:InternalExternalSchedulingTypeState', type='DiscreteState', values=['external', 'internal']), StateDefinition(qualified_name='io:MaximumHeatingLevelState', type='DiscreteState', values=['boost', 'comfort', 'comfort-1', 'comfort-2', 'eco', 'frostprotection', 'off', 'secured']), StateDefinition(qualified_name='io:ModelState', type='DataState', values=None), StateDefinition(qualified_name='io:NativeFunctionalLevelState', type='DiscreteState', values=['base', 'medium', 'top']), StateDefinition(qualified_name='io:PowerState', type='DataState', values=None), StateDefinition(qualified_name='io:PriorityLockLevelState', type='DiscreteState', values=['comfortLevel1', 'comfortLevel2', 'comfortLevel3', 'comfortLevel4', 'environmentProtection', 'humanProtection', 'userLevel1', 'userLevel2']), StateDefinition(qualified_name='io:PriorityLockOriginatorState', type='DiscreteState', values=['LSC', 'SAAC', 'SFC', 'UPS', 'externalGateway', 'localUser', 'myself', 'rain', 'security', 'temperature', 'timer', 'user', 'wind']), StateDefinition(qualified_name='io:SetpointLoweringTemperatureInProgModeState', type='ContinuousState', values=None), StateDefinition(qualified_name='io:TargetHeatingLevelState', type='DiscreteState', values=['boost', 'comfort', 'comfort-1', 'comfort-2', 'eco', 'frostprotection', 'off', 'secured']), StateDefinition(qualified_name='io:TensionState', type='DataState', values=None), StateDefinition(qualified_name='io:TimerForTransitoryStateState', type='ContinuousState', values=None)], widget_name='AtlanticElectricalTowelDryer', ui_class='HeatingSystem', qualified_name='io:AtlanticElectricalTowelDryer_IC3_IOComponent'), data_properties=None, widget='AtlanticElectricalTowelDryer', ui_class='HeatingSystem', states=States(_states=[State(name='core:NameState', type=<DataType.STRING: 3>, value='I2G_Actuator'), State(name='core:VersionState', type=<DataType.STRING: 3>, value='44373235303038202020'), State(name='core:OnOffState', type=<DataType.STRING: 3>, value='on'), State(name='io:TargetHeatingLevelState', type=<DataType.STRING: 3>, value='eco'), State(name='core:StatusState', type=<DataType.STRING: 3>, value='available'), State(name='core:DiscreteRSSILevelState', type=<DataType.STRING: 3>, value='good'), State(name='core:RSSILevelState', type=<DataType.FLOAT: 2>, value=86.0), State(name='core:IdentifierState', type=<DataType.STRING: 3>, value='00000000'), State(name='io:MaximumHeatingLevelState', type=<DataType.STRING: 3>, value='unknown'), State(name='io:TimerForTransitoryStateState', type=<DataType.INTEGER: 1>, value=0), State(name='core:ComfortRoomTemperatureState', type=<DataType.INTEGER: 1>, value=17), State(name='core:EcoRoomTemperatureState', type=<DataType.INTEGER: 1>, value=3), State(name='io:SetpointLoweringTemperatureInProgModeState', type=<DataType.FLOAT: 2>, value=3.0), State(name='core:RegulationModeState', type=<DataType.STRING: 3>, value='none'), State(name='core:ManufacturerNameState', type=<DataType.STRING: 3>, value='Sauter'), State(name='io:ModelState', type=<DataType.STRING: 3>, value='ASAMA Connect'), State(name='io:PowerState', type=<DataType.INTEGER: 1>, value=1500), State(name='io:TensionState', type=<DataType.INTEGER: 1>, value=230), State(name='core:DerogatedTargetTemperatureState', type=<DataType.FLOAT: 2>, value=0.0), State(name='io:NativeFunctionalLevelState', type=<DataType.STRING: 3>, value='Base'), State(name='io:ControllerAddressState', type=<DataType.INTEGER: 1>, value=9492618), State(name='core:TargetTemperatureState', type=<DataType.FLOAT: 2>, value=17.0)]), type=<ProductType.ACTUATOR: 1>, place_oid='616809ec-4cdc-44af-81e6-a4a8b590f10a'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Unsupported device detected (Device(attributes=States(_states=[State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='D725008'), State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group'), State(name='core:PowerSourceType', type=<DataType.STRING: 3>, value='mainSupply')]), available=True, enabled=True, label='IO (9492619#2)', device_url=io://****-****-2069/9492619#2, controllable_name='io:OccupancyIOSystemDeviceSensor', definition=Definition(commands=CommandDefinitions(_commands=[]), states=[StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable'])], widget_name='OccupancySensor', ui_class='OccupancySensor', qualified_name='io:OccupancyIOSystemDeviceSensor'), data_properties=None, widget='OccupancySensor', ui_class='OccupancySensor', states=States(_states=[State(name='core:StatusState', type=<DataType.STRING: 3>, value='available')]), type=<ProductType.SENSOR: 2>, place_oid='616809ec-4cdc-44af-81e6-a4a8b590f10a'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Unsupported device detected (Device(attributes=States(_states=[State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='D725008'), State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group'), State(name='core:MeasuredValueType', type=<DataType.STRING: 3>, value='core:LuminanceInLux'), State(name='core:PowerSourceType', type=<DataType.STRING: 3>, value='mainSupply')]), available=True, enabled=True, label='IO (9492619#3)', device_url=io://****-****-2069/9492619#3, controllable_name='io:LightIOSystemDeviceSensor', definition=Definition(commands=CommandDefinitions(_commands=[]), states=[StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable'])], widget_name='LuminanceSensor', ui_class='LightSensor', qualified_name='io:LightIOSystemDeviceSensor'), data_properties=None, widget='LuminanceSensor', ui_class='LightSensor', states=States(_states=[State(name='core:StatusState', type=<DataType.STRING: 3>, value='available')]), type=<ProductType.SENSOR: 2>, place_oid='616809ec-4cdc-44af-81e6-a4a8b590f10a'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Unsupported device detected (Device(attributes=States(_states=[State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='D725008'), State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group'), State(name='core:PowerSourceType', type=<DataType.STRING: 3>, value='mainSupply'), State(name='core:MeasuredValueType', type=<DataType.STRING: 3>, value='core:RelativeValueInPercentage')]), available=True, enabled=True, label='IO (9492619#4)', device_url=io://****-****-2069/9492619#4, controllable_name='io:RelativeHumidityIOSystemDeviceSensor', definition=Definition(commands=CommandDefinitions(_commands=[]), states=[StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable'])], widget_name='RelativeHumiditySensor', ui_class='HumiditySensor', qualified_name='io:RelativeHumidityIOSystemDeviceSensor'), data_properties=None, widget='RelativeHumiditySensor', ui_class='HumiditySensor', states=States(_states=[State(name='core:StatusState', type=<DataType.STRING: 3>, value='available')]), type=<ProductType.SENSOR: 2>, place_oid='616809ec-4cdc-44af-81e6-a4a8b590f10a'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Unsupported device detected (Device(attributes=States(_states=[State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='D725008'), State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group'), State(name='core:MeasuredValueType', type=<DataType.STRING: 3>, value='core:TemperatureInCelcius'), State(name='core:PowerSourceType', type=<DataType.STRING: 3>, value='mainSupply')]), available=True, enabled=True, label='IO (9492619#5)', device_url=io://****-****-2069/9492619#5, controllable_name='io:TemperatureInCelciusIOSystemDeviceSensor', definition=Definition(commands=CommandDefinitions(_commands=[]), states=[StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable'])], widget_name='TemperatureSensor', ui_class='TemperatureSensor', qualified_name='io:TemperatureInCelciusIOSystemDeviceSensor'), data_properties=None, widget='TemperatureSensor', ui_class='TemperatureSensor', states=States(_states=[State(name='core:StatusState', type=<DataType.STRING: 3>, value='available')]), type=<ProductType.SENSOR: 2>, place_oid='616809ec-4cdc-44af-81e6-a4a8b590f10a'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Unsupported device detected (Device(attributes=States(_states=[State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='D725008'), State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group'), State(name='core:PowerSourceType', type=<DataType.STRING: 3>, value='mainSupply'), State(name='core:MeasuredValueType', type=<DataType.STRING: 3>, value='core:ElectricalEnergyInWh')]), available=True, enabled=True, label='IO (9492619#6)', device_url=io://****-****-2069/9492619#6, controllable_name='io:CumulatedElectricalEnergyConsumptionIOSystemDeviceSensor', definition=Definition(commands=CommandDefinitions(_commands=[]), states=[StateDefinition(qualified_name='core:ElectricEnergyConsumptionState', type='ContinuousState', values=None), StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable'])], widget_name='CumulativeElectricPowerConsumptionSensor', ui_class='ElectricitySensor', qualified_name='io:CumulatedElectricalEnergyConsumptionIOSystemDeviceSensor'), data_properties=None, widget='CumulativeElectricPowerConsumptionSensor', ui_class='ElectricitySensor', states=States(_states=[State(name='core:StatusState', type=<DataType.STRING: 3>, value='available'), State(name='core:ElectricEnergyConsumptionState', type=<DataType.INTEGER: 1>, value=16000)]), type=<ProductType.SENSOR: 2>, place_oid='616809ec-4cdc-44af-81e6-a4a8b590f10a'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Unsupported device detected (Device(attributes=States(_states=[State(name='core:FirmwareRevision', type=<DataType.STRING: 3>, value='D725008'), State(name='core:Manufacturer', type=<DataType.STRING: 3>, value='Atlantic Group'), State(name='core:MeasuredValueType', type=<DataType.STRING: 3>, value='core:TemperatureInCelcius'), State(name='core:PowerSourceType', type=<DataType.STRING: 3>, value='mainSupply')]), available=True, enabled=True, label='IO (9492619#7)', device_url=io://****-****-2069/9492619#7, controllable_name='io:TemperatureInCelciusIOSystemDeviceSensor', definition=Definition(commands=CommandDefinitions(_commands=[]), states=[StateDefinition(qualified_name='core:StatusState', type='DiscreteState', values=['available', 'unavailable']), StateDefinition(qualified_name='core:TemperatureState', type='ContinuousState', values=None)], widget_name='TemperatureSensor', ui_class='TemperatureSensor', qualified_name='io:TemperatureInCelciusIOSystemDeviceSensor'), data_properties=None, widget='TemperatureSensor', ui_class='TemperatureSensor', states=States(_states=[State(name='core:StatusState', type=<DataType.STRING: 3>, value='available'), State(name='core:TemperatureState', type=<DataType.FLOAT: 2>, value=17.0)]), type=<ProductType.SENSOR: 2>, place_oid='616809ec-4cdc-44af-81e6-a4a8b590f10a'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Unsupported device detected (Device(attributes=States(_states=[]), available=True, enabled=True, label='IO (9492619#8)', device_url=io://****-****-2069/9492619#8, controllable_name='core:WeatherSystemSensor', definition=Definition(commands=CommandDefinitions(_commands=[CommandDefinition(command_name='advancedRefresh', nparams=1)]), states=[], widget_name='WeatherForecastSensor', ui_class='WeatherSensor', qualified_name='core:WeatherSystemSensor'), data_properties=None, widget='WeatherForecastSensor', ui_class='WeatherSensor', states=States(_states=[]), type=<ProductType.SENSOR: 2>, place_oid='616809ec-4cdc-44af-81e6-a4a8b590f10a'))
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Added gateway (Gateway(partners=[], functions='INTERNET_AUTHORIZATION,SCENARIO_DOWNLOAD,SCENARIO_AUTO_LAUNCHING,SCENARIO_TELECO_LAUNCHING,INTERNET_UPLOAD,INTERNET_UPDATE,TRIGGERS_SENSORS', sub_type=<GatewaySubType.TAHOMA_BASIC: 1>, id=****-****-2069, gateway_id=NOTHING, alive=True, mode='ACTIVE', place_oid='616809ec-4cdc-44af-81e6-a4a8b590f10a', time_reliable=True, connectivity=Connectivity(status='OK', protocol_version='2021.5.4'), up_to_date=True, update_status=<UpdateBoxStatus.UP_TO_DATE: 'UP_TO_DATE'>, sync_in_progress=False, type=<GatewayType.TAHOMA_SWITCH: 98>))
2021-12-30 14:22:56 ERROR (MainThread) [homeassistant.components.climate] Error adding entities for domain climate with platform tahoma
Traceback (most recent call last):
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity_platform.py", line 382, in async_add_entities
await asyncio.gather(*tasks)
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity_platform.py", line 613, in _async_add_entity
await entity.add_to_platform_finish()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 748, in add_to_platform_finish
self.async_write_ha_state()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 505, in async_write_ha_state
self._async_write_ha_state()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 538, in _async_write_ha_state
state = self._stringify_state()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 511, in _stringify_state
if (state := self.state) is None:
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/components/climate/__init__.py", line 210, in state
return self.hvac_mode
File "/home/homeassistant/.homeassistant/custom_components/tahoma/climate_devices/atlantic_electrical_towel_dryer.py", line 80, in hvac_mode
return TAHOMA_TO_HVAC_MODE[self.executor.select_state(CORE_ON_OFF_STATE)]
KeyError: 'on'
2021-12-30 14:22:56 ERROR (MainThread) [homeassistant.components.climate] Error while setting up tahoma platform for climate
Traceback (most recent call last):
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity_platform.py", line 257, in _async_setup_platform
await asyncio.gather(*pending)
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity_platform.py", line 382, in async_add_entities
await asyncio.gather(*tasks)
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity_platform.py", line 613, in _async_add_entity
await entity.add_to_platform_finish()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 748, in add_to_platform_finish
self.async_write_ha_state()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 505, in async_write_ha_state
self._async_write_ha_state()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 538, in _async_write_ha_state
state = self._stringify_state()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 511, in _stringify_state
if (state := self.state) is None:
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/components/climate/__init__.py", line 210, in state
return self.hvac_mode
File "/home/homeassistant/.homeassistant/custom_components/tahoma/climate_devices/atlantic_electrical_towel_dryer.py", line 80, in hvac_mode
return TAHOMA_TO_HVAC_MODE[self.executor.select_state(CORE_ON_OFF_STATE)]
KeyError: 'on'
2021-12-30 14:22:56 DEBUG (MainThread) [custom_components.tahoma] Finished fetching device events data in 0.061 seconds (success: True)
2021-12-30 14:22:56 ERROR (MainThread) [homeassistant.helpers.entity] Update for climate.radiateur_salon fails
Traceback (most recent call last):
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 487, in async_update_ha_state
await self.async_device_update()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 691, in async_device_update
raise exc
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/update_coordinator.py", line 336, in async_update
await self.coordinator.async_request_refresh()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/update_coordinator.py", line 141, in async_request_refresh
await self._debounced_refresh.async_call()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/debounce.py", line 78, in async_call
await task
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/update_coordinator.py", line 165, in async_refresh
await self._async_refresh(log_failures=True)
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/update_coordinator.py", line 265, in _async_refresh
update_callback()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/update_coordinator.py", line 325, in _handle_coordinator_update
self.async_write_ha_state()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 505, in async_write_ha_state
self._async_write_ha_state()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 538, in _async_write_ha_state
state = self._stringify_state()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 511, in _stringify_state
if (state := self.state) is None:
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/components/climate/__init__.py", line 210, in state
return self.hvac_mode
File "/home/homeassistant/.homeassistant/custom_components/tahoma/climate_devices/atlantic_electrical_towel_dryer.py", line 80, in hvac_mode
return TAHOMA_TO_HVAC_MODE[self.executor.select_state(CORE_ON_OFF_STATE)]
KeyError: 'on'
2021-12-30 14:23:26 DEBUG (MainThread) [custom_components.tahoma] Finished fetching device events data in 0.051 seconds (success: True)
2021-12-30 14:23:26 ERROR (MainThread) [homeassistant] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/update_coordinator.py", line 134, in _handle_refresh_interval
await self._async_refresh(log_failures=True, scheduled=True)
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/update_coordinator.py", line 265, in _async_refresh
update_callback()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/update_coordinator.py", line 325, in _handle_coordinator_update
self.async_write_ha_state()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 505, in async_write_ha_state
self._async_write_ha_state()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 538, in _async_write_ha_state
state = self._stringify_state()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 511, in _stringify_state
if (state := self.state) is None:
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/components/climate/__init__.py", line 210, in state
return self.hvac_mode
File "/home/homeassistant/.homeassistant/custom_components/tahoma/climate_devices/atlantic_electrical_towel_dryer.py", line 80, in hvac_mode
return TAHOMA_TO_HVAC_MODE[self.executor.select_state(CORE_ON_OFF_STATE)]
KeyError: 'on'
2021-12-30 14:23:48 ERROR (MainThread) [homeassistant.components.camera.img_util] Error loading libturbojpeg; Cameras may impact HomeKit performance
Traceback (most recent call last):
File "/srv/homeassistant/lib/python3.9/site-packages/numpy/core/__init__.py", line 22, in <module>
from . import multiarray
File "/srv/homeassistant/lib/python3.9/site-packages/numpy/core/multiarray.py", line 12, in <module>
from . import overrides
File "/srv/homeassistant/lib/python3.9/site-packages/numpy/core/overrides.py", line 7, in <module>
from numpy.core._multiarray_umath import (
ImportError: libcblas.so.3: cannot open shared object file: No such file or directory
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/components/camera/img_util.py", line 94, in __init__
from turbojpeg import TurboJPEG # pylint: disable=import-outside-toplevel
File "/srv/homeassistant/lib/python3.9/site-packages/turbojpeg.py", line 31, in <module>
import numpy as np
File "/srv/homeassistant/lib/python3.9/site-packages/numpy/__init__.py", line 150, in <module>
from . import core
File "/srv/homeassistant/lib/python3.9/site-packages/numpy/core/__init__.py", line 48, in <module>
raise ImportError(msg)
ImportError:
IMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!
Importing the numpy C-extensions failed. This error can happen for
many reasons, often due to issues with your setup or how NumPy was
installed.
We have compiled some common reasons and troubleshooting tips at:
https://numpy.org/devdocs/user/troubleshooting-importerror.html
Please note and check the following:
* The Python version is: Python3.9 from "/srv/homeassistant/bin/python3"
* The NumPy version is: "1.21.5"
and make sure that they are the versions you expect.
Please carefully study the documentation linked above for further help.
Original error was: libcblas.so.3: cannot open shared object file: No such file or directory
2021-12-30 14:23:56 DEBUG (MainThread) [custom_components.tahoma] Finished fetching device events data in 0.054 seconds (success: True)
2021-12-30 14:23:56 ERROR (MainThread) [homeassistant] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/update_coordinator.py", line 134, in _handle_refresh_interval
await self._async_refresh(log_failures=True, scheduled=True)
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/update_coordinator.py", line 265, in _async_refresh
update_callback()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/update_coordinator.py", line 325, in _handle_coordinator_update
self.async_write_ha_state()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 505, in async_write_ha_state
self._async_write_ha_state()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 538, in _async_write_ha_state
state = self._stringify_state()
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/helpers/entity.py", line 511, in _stringify_state
if (state := self.state) is None:
File "/srv/homeassistant/lib/python3.9/site-packages/homeassistant/components/climate/__init__.py", line 210, in state
return self.hvac_mode
File "/home/homeassistant/.homeassistant/custom_components/tahoma/climate_devices/atlantic_electrical_towel_dryer.py", line 80, in hvac_mode
return TAHOMA_TO_HVAC_MODE[self.executor.select_state(CORE_ON_OFF_STATE)]
KeyError: 'on'
Hi @luciol21, can you please have a try with https://github.com/iMicknl/ha-tahoma/archive/refs/heads/fix/climate/temperature-towel-dryer.zip and tell if the temperature is now ok.
hi @tetienne , can you explain to me how to install the patch ? I deleted my custom_component/tahoma folder and put the patch folder. My climate is no longer available.
@luciol21 That’s it, just extract this zip file and place custom_components/tahoma in your custom_components folder.
@tetienne : so, my climate is not available... Can you see my logs ?
@luciol21 Yes I read your log, there is no error, and the integration is well loaded. I don’t get why the climate is not loaded, I only touched the current temperature.
@luciol21 Can you redownload the zip? I found one mistake. It can explain what you observed.
@tetienne :(:(:( I just did the test, it's the same result ... home-assistant.log
@luciol21 Can you join me on Discord? If you can change your password and share it with me, it will ease my investigation.
thank you very much @tetienne . Your new patch is 100% operational.
@luciol21 That’s great to know. Be able to test myself the device was really helpful 🙏
@alexandreaudrain @luciol21 I am in the process of migrating the AtlanticElectricalTowelDryer to core and it seems that there are two devices to support. Would both of you be willing to test some versions perhaps?
(and if you can share you diagnostics information with me, that would be awesome).
Yes, for sure !
Hi, I start try HA to manage my Io equipments and I have issue with the AtlanticElectricalTowelDryer detected but not work in last HA version 2023.5.4 linked to Tahoma gateway In Tahoma it's the same thé radiator is detected and not work also. This radiator already migrate in HA core ? HA could manage it even it not work with Tahoma gateway ?
Hi, my guess is that the problem is on Somfy side (not in this integration). If you speak french : https://forum.somfy.fr/questions/2817110-connecter-sauter-seche-serviettes-asama-tahoma-switch
Bjr Merci de votre réponse rapide Donc en résumé pour pouvoir gérer ce radiateur il faut installer un Cozytouch intégration du radiateur dans l'appli cozytouch et ensuite gérer une nouvelle instance overkiz dans HA C'est frustrant de voir le radiateur détecté mais inutilisable. Il existe un plugin homekit qui permet la gestion locale de quelques appareils Io Serait il envisageable de créer un plugin Io HA pour gestion locale de tout appareil Io sans utiliser l'API overkiz?
Slts
Le dim. 28 mai 2023 à 10:05, alexandreaudrain @.***> a écrit :
Hi, my guess is that the problem is on Somfy side (not in this integration). If you speak french : https://forum.somfy.fr/questions/2817110-connecter-sauter-seche-serviettes-asama-tahoma-switch
— Reply to this email directly, view it on GitHub https://github.com/iMicknl/ha-tahoma/issues/682#issuecomment-1565981157, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIOCJDEHZIPL4SLAXJKC563XIMBMDANCNFSM5KHI2VWQ . You are receiving this because you commented.Message ID: @.***>
Did you read the instructions?
The problem
I don't know if my radiator is correctly installed. But I manage to choose the setpoint and the modes of the radiator with the climate entity
In entetity there are 2 temperatures :
I dont know whichs logs can be helful.
Thank you for your help
What version of this integration (ha-tahoma) has the issue?
2.10.1
What version of Home Assistant Core has the issue?
core-2021.12.1
Which gateway / hub do you use?
Cozytouch
Device model
ASAMA Connect
Home Assistant log
Additional information