Closed rama1981 closed 2 months ago
Hi @rama1981,
for sure I'll have a look into this. As I do not own a Grohe Blue it will be a little try and error as well for me :) As far as I understand, the device is definitely having a lot of state information/sensors but I guess you can also control the water output.
If the Blue behaves like the sense guard it would be great if you could provide me the JSON output of the following endpoints (like you already did for the dashboard).
Also I'm going to update the Dashboard information accordingly to your provided data.
@rama1981: Can you give the branch feature/blue_professional a try if it's at least setting up the blue and adding a notification sensor to it.
Hi @rama1981,
for sure I'll have a look into this. As I do not own a Grohe Blue it will be a little try and error as well for me :) As far as I understand, the device is definitely having a lot of state information/sensors but I guess you can also control the water output.
If the Blue behaves like the sense guard it would be great if you could provide me the JSON output of the following endpoints (like you already did for the dashboard).
- GET https://idp2-apigw.cloud.grohe.com/v3/iot/locations/{location_id}/rooms/{room_id}/appliances/{appliance_id}/details
- GET https://idp2-apigw.cloud.grohe.com/v3/iot/locations/{location_id}/rooms/{room_id}/appliances/{appliance_id}/command
Also I'm going to update the Dashboard information accordingly to your provided data.
/details:
{
"appliance_id": "XXXXXXXXXXXXXXXXXXXXXXXX",
"installation_date": "2022-07-16T14:47:22.000+02:00",
"name": "My GROHE Blue Pro",
"serial_number": "XXXXXX",
"type": 105,
"version": "01.04.Z10.0300.0104",
"tdt": "2024-07-16T23:11:18.000+02:00",
"timezone": 120,
"config": {
"co2_type": 2,
"hose_length": 270,
"co2_consumption_medium": 48,
"co2_consumption_carbonated": 65,
"guest_mode_active": false,
"auto_flush_active": false,
"flush_confirmed": false,
"f_parameter": 1,
"l_parameter": 3,
"flow_rate_still": 19,
"flow_rate_medium": 34,
"flow_rate_carbonated": 17
},
"role": "owner",
"registration_complete": true,
"presharedkey": "XXXXXX",
"params": {
"water_hardness": 0,
"carbon_hardness": 15,
"filter_type": 6,
"variant": 4,
"auto_flush_reminder_notif": true,
"consumables_low_notif": true,
"product_information_notif": true
},
"error": {
"errors_1": false,
"errors_2": false,
"errors_3": false,
"errors_4": false,
"errors_5": false,
"errors_6": false,
"errors_7": false,
"errors_8": false,
"errors_9": false,
"errors_10": false,
"errors_11": false,
"errors_12": false,
"errors_13": false,
"errors_14": false,
"errors_15": false,
"errors_16": false,
"error1_counter": 2,
"error2_counter": 1,
"error3_counter": 13,
"error4_counter": 0,
"error5_counter": 0,
"error6_counter": 0,
"error7_counter": 0,
"error8_counter": 0,
"error9_counter": 0,
"error10_counter": 0,
"error11_counter": 0,
"error12_counter": 39,
"error13_counter": 0,
"error14_counter": 0,
"error15_counter": 0,
"error16_counter": 0
},
"state": {
"start_time": 1721198687,
"APPLIANCE_SUCCESSFUL_CONFIGURED": false,
"co2_empty": false,
"co2_20l_reached": false,
"filter_empty": false,
"filter_20l_reached": false,
"cleaning_mode_active": false,
"cleaning_needed": false,
"flush_confirmation_required": false,
"System_error_bitfield": 0
},
"status": [
{
"type": "update_available",
"value": 0
},
{
"type": "connection",
"value": 1
}
],
"data_latest": {
"measurement": {
"cleaning_count": 2,
"date_of_cleaning": "2024-06-30T21:13:21.000+02:00",
"date_of_co2_replacement": "2024-07-16T23:11:18.000+02:00",
"date_of_filter_replacement": "2024-06-30T21:41:22.000+02:00",
"filter_change_count": 3,
"max_idle_time": 10875,
"open_close_cycles_carbonated": 2352,
"open_close_cycles_still": 2480,
"operating_time": 14828,
"power_cut_count": 73,
"pump_count": 2487,
"pump_running_time": 350,
"remaining_co2": 91,
"remaining_filter": 99,
"time_since_last_withdrawal": 58,
"time_since_restart": 536887329,
"timeoffset": 120,
"timestamp": "2024-07-16T23:11:18.000+02:00",
"water_running_time_carbonated": 493,
"water_running_time_medium": 10,
"water_running_time_still": 221,
"remaining_filter_liters": 3158,
"remaining_co2_liters": 241
}
},
"notifications": []
}
/command
{
"appliance_id": "##########",
"type": 105,
"lastCO2Reset": "2024-07-01T10:07:29.653Z",
"command": {
"co2_status_reset": true,
"tap_type": 0,
"cleaning_mode": false,
"filter_status_reset": false,
"get_current_measurement": false,
"tap_amount": 0,
"factory_reset": false,
"revoke_flush_confirmation": false,
"exec_auto_flush": false
},
"commandb64": "EAAAAA==",
"timestamp": "2024-07-01T10:07:29.604Z"
}
i like to thank you, that you look over my request
Thanks for the details. I'll look into this later.
@rama1981: Can you give the branch feature/blue_professional a try if it's at least setting up the blue and adding a notification sensor to it.
i did. notification = unknown, because i have no notification at the app as well.
now the proctocols:
Logger: homeassistant
Quelle: custom_components/grohe_sense/entities/grohe_sense_notifications.py:48
Integration: Grohe Sense ([Dokumentation](https://github.com/Flo-Schilli/homeassistant-grohe_sense), [Probleme](https://github.com/Flo-Schilli/homeassistant-grohe_sense/issues))
Erstmals aufgetreten: 09:04:06 (1 Vorkommnisse)
Zuletzt protokolliert: 09:04:06
Error doing job: Task exception was never retrieved (None)
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 255, in _handle_refresh_interval
await self._async_refresh(log_failures=True, scheduled=True)
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 411, in _async_refresh
self.async_update_listeners()
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 165, in async_update_listeners
update_callback()
File "/config/custom_components/grohe_sense/entities/grohe_sense_notifications.py", line 48, in _handle_coordinator_update
self._value = self._coordinator.data.notification
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'notification'
Logger: custom_components.grohe_sense.entities.grohe_update_coordinator
Quelle: custom_components/grohe_sense/entities/grohe_update_coordinator.py:90
Integration: Grohe Sense ([Dokumentation](https://github.com/Flo-Schilli/homeassistant-grohe_sense), [Probleme](https://github.com/Flo-Schilli/homeassistant-grohe_sense/issues))
Erstmals aufgetreten: 08:58:56 (3 Vorkommnisse)
Zuletzt protokolliert: 09:04:06
Error updating Grohe Sense data: 'NoneType' object has no attribute 'items'
Logger: custom_components.grohe_sense.entities.grohe_update_coordinator
Quelle: helpers/debounce.py:137
Integration: Grohe Sense ([Dokumentation](https://github.com/Flo-Schilli/homeassistant-grohe_sense), [Probleme](https://github.com/Flo-Schilli/homeassistant-grohe_sense/issues))
Erstmals aufgetreten: 08:59:06 (1 Vorkommnisse)
Zuletzt protokolliert: 08:59:06
Unexpected exception from <bound method DataUpdateCoordinator.async_refresh of <custom_components.grohe_sense.entities.grohe_update_coordinator.GroheUpdateCoordinator object at 0xffff466e5b20>>
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/debounce.py", line 137, in _handle_timer_finish
await task
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 288, in async_refresh
await self._async_refresh(log_failures=True)
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 411, in _async_refresh
self.async_update_listeners()
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 165, in async_update_listeners
update_callback()
File "/config/custom_components/grohe_sense/entities/grohe_sense_notifications.py", line 48, in _handle_coordinator_update
self._value = self._coordinator.data.notification
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'notification'
by the way, i usually do not need the command - no switch needed.
it would be great to get
Thank you
@rama1981 can you just give it a try. I just added nearly all the measurements as sensors.
@Flo-Schilli thank you for your work, all sensors are imported, but status is unknown.
here are the protocols.:
2024-07-18 09:17:54.987 DEBUG (MainThread) [custom_components.grohe_sense.api.ondus_api] Get appliance details for appliance XXXXXXXXXXX
2024-07-18 09:17:55.010 DEBUG (MainThread) [custom_components.grohe_sense.valve] Adding sensor entities from config entry <ConfigEntry entry_id=0XX2XXXFQBXXXXVQ8XXXXP89X8 version=1 domain=grohe_sense title=Grohe Sense state=ConfigEntryState.SETUP_IN_PROGRESS unique_id=GroheSense>
2024-07-18 09:17:56.155 ERROR (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Error updating Grohe Blue data: 'Measurement' object has no attribute 'items'
2024-07-18 09:17:56.155 DEBUG (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Finished fetching Grohe Blue data in 1.168 seconds (success: True)
2024-07-18 09:18:06.176 DEBUG (MainThread) [custom_components.grohe_sense.api.ondus_api] Get appliance details for appliance XXXXXXXXXXX
2024-07-18 09:18:06.826 ERROR (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Error updating Grohe Blue data: 'Measurement' object has no attribute 'items'
2024-07-18 09:18:06.826 DEBUG (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Finished fetching Grohe Blue data in 0.650 seconds (success: True)
2024-07-18 09:18:06.827 ERROR (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Unexpected exception from <bound method DataUpdateCoordinator.async_refresh of <custom_components.grohe_sense.entities.grohe_blue_update_coordinator.GroheBlueUpdateCoordinator object at 0xffff46cd3cb0>>
File "/config/custom_components/grohe_sense/entities/grohe_sense_notifications.py", line 50, in _handle_coordinator_update
Thanks for the update. Can you please give it another try
Thanks for the update. Can you please give it another try
Thank you very much for your time with trial and error 👍
`Logger: custom_components.grohe_sense.entities.grohe_blue_update_coordinator
Quelle: helpers/debounce.py:137
Integration: Grohe Sense ([Dokumentation](https://github.com/Flo-Schilli/homeassistant-grohe_sense), [Probleme](https://github.com/Flo-Schilli/homeassistant-grohe_sense/issues))
Erstmals aufgetreten: 14:41:33 (1 Vorkommnisse)
Zuletzt protokolliert: 14:41:33
Unexpected exception from <bound method DataUpdateCoordinator.async_refresh of <custom_components.grohe_sense.entities.grohe_blue_update_coordinator.GroheBlueUpdateCoordinator object at 0xffff55d17cb0>>
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/debounce.py", line 137, in _handle_timer_finish
await task
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 288, in async_refresh
await self._async_refresh(log_failures=True)
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 411, in _async_refresh
self.async_update_listeners()
File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 165, in async_update_listeners
update_callback()
File "/config/custom_components/grohe_sense/entities/grohe_sense_notifications.py", line 50, in _handle_coordinator_update
self._value = self._coordinator.data.notification
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'notification'
Logger: custom_components.grohe_sense.entities.grohe_blue_update_coordinator
Quelle: custom_components/grohe_sense/entities/grohe_blue_update_coordinator.py:63
Integration: Grohe Sense ([Dokumentation](https://github.com/Flo-Schilli/homeassistant-grohe_sense), [Probleme](https://github.com/Flo-Schilli/homeassistant-grohe_sense/issues))
Erstmals aufgetreten: 14:41:23 (2 Vorkommnisse)
Zuletzt protokolliert: 14:41:33
Error updating Grohe Blue data: 'Measurement' object has no attribute 'items'
detailed log
2024-07-18 14:41:22.934 DEBUG (MainThread) [custom_components.grohe_sense.api.ondus_api] Get appliance details for appliance XXXXXXXXXXXXXXXXXXXX
2024-07-18 14:41:22.947 DEBUG (MainThread) [custom_components.grohe_sense.valve] Adding sensor entities from config entry <ConfigEntry entry_id=XXXXXXXXXXXXXXXXXXXXXXXXXX version=1 domain=grohe_sense title=Grohe Sense state=ConfigEntryState.SETUP_IN_PROGRESS unique_id=GroheSense>
2024-07-18 14:41:23.470 ERROR (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Error updating Grohe Blue data: 'Measurement' object has no attribute 'items'
2024-07-18 14:41:23.471 DEBUG (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Finished fetching Grohe Blue data in 0.536 seconds (success: True)
2024-07-18 14:41:33.472 DEBUG (MainThread) [custom_components.grohe_sense.api.ondus_api] Get appliance details for appliance XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
2024-07-18 14:41:33.836 ERROR (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Error updating Grohe Blue data: 'Measurement' object has no attribute 'items'
2024-07-18 14:41:33.837 DEBUG (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Finished fetching Grohe Blue data in 0.364 seconds (success: True)
2024-07-18 14:41:33.837 ERROR (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Unexpected exception from <bound method DataUpdateCoordinator.async_refresh of <custom_components.grohe_sense.entities.grohe_blue_update_coordinator.GroheBlueUpdateCoordinator object at 0xffff55d17cb0>>
File "/config/custom_components/grohe_sense/entities/grohe_sense_notifications.py", line 50, in _handle_coordinator_update
@rama1981 I added some more debug logging. Can you please try and send me the debug log.
@rama1981 I added some more debug logging. Can you please try and send me the debug log.
shure, should i paste the files in here? hope that´s fine for you. Thank you
2024-07-18 21:20:08.634 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration grohe_sense 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
2024-07-18 21:20:17.551 DEBUG (MainThread) [custom_components.grohe_sense] Loading Grohe Sense
2024-07-18 21:20:17.551 INFO (MainThread) [custom_components.grohe_sense.api.ondus_api] Login to Ondus API
2024-07-18 21:20:17.551 DEBUG (MainThread) [custom_components.grohe_sense.api.ondus_api] Login with username/password
2024-07-18 21:20:18.728 DEBUG (MainThread) [custom_components.grohe_sense.dto.grohe_device] Getting all available Grohe devices
2024-07-18 21:20:18.734 DEBUG (MainThread) [custom_components.grohe_sense.api.ondus_api] Get locations
2024-07-18 21:20:18.873 DEBUG (MainThread) [custom_components.grohe_sense.api.ondus_api] Get rooms for location 5X6XXX6
2024-07-18 21:20:18.945 DEBUG (MainThread) [custom_components.grohe_sense.api.ondus_api] Get appliances for location 5X6XXX6 and room 4X4X8X4
2024-07-18 21:20:19.157 DEBUG (MainThread) [custom_components.grohe_sense.dto.grohe_device] Found in location 5X6XXX6 and room 4X4X8X4 the following appliance: Appliance(id='XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX', installation_date='2022-07-16T14:47:22.000+02:00', name='My GROHE Blue Pro', serial_number='XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX', type=105, version='01.04.Z10.0300.0104', tdt='2024-07-18T20:54:03.000+02:00', timezone=120, config=Config(thresholds=None, measurement_period=None, action_on_major_leakage=None, action_on_minor_leakage=None, action_on_micro_leakage=None, monitor_frost_alert=None, monitor_lower_flow_limit=None, monitor_upper_flow_limit=None, monitor_lower_pressure_limit=None, monitor_upper_pressure_limit=None, monitor_lower_temperature_limit=None, monitor_upper_temperature_limit=None, monitor_major_leakage=None, monitor_minor_leakage=None, monitor_micro_leakage=None, monitor_system_error=None, monitor_btw_0_1_and_0_8_leakage=None, monitor_withdrawel_amount_limit_breach=None, detection_interval=None, impulse_ignore=None, time_ignore=None, pressure_tolerance_band=None, pressure_drop=None, detection_time=None, action_on_btw_0_1_and_0_8_leakage=None, action_on_withdrawel_amount_limit_breach=None, withdrawel_amount_limit=None, sprinkler_mode_active_monday=None, sprinkler_mode_active_tuesday=None, sprinkler_mode_active_wednesday=None, sprinkler_mode_active_thursday=None, sprinkler_mode_active_friday=None, sprinkler_mode_active_saturday=None, sprinkler_mode_active_sunday=None, sprinkler_mode_start_time=None, sprinkler_mode_stop_time=None, measurement_transmission_intervall=None, measurement_transmission_intervall_offset=None, co2_type=2, hose_length=270, co2_consumption_medium=48, co2_consumption_carbonated=65, guest_mode_active=False, auto_flush_active=False, flush_confirmed=False, f_parameter=1, l_parameter=3, flow_rate_still=19, flow_rate_medium=34, flow_rate_carbonated=17), role='owner', registration_complete=True, presharedkey='26KL4EYOYjFYedciDGTP2jlXFl3Wsv7gPnLWsiAq/2M=', params=Params(water_hardness=0, carbon_hardness=15, filter_type=6, variant=4, auto_flush_reminder_notif=True, consumables_low_notif=True, product_information_notif=True), error=Errors(errors_1=False, errors_2=False, errors_3=False, errors_4=False, errors_5=False, errors_6=False, errors_7=False, errors_8=False, errors_9=False, errors_10=False, errors_11=False, errors_12=False, errors_13=False, errors_14=False, errors_15=False, errors_16=False, error1_counter=2, error2_counter=1, error3_counter=13, error4_counter=0, error5_counter=0, error6_counter=0, error7_counter=0, error8_counter=0, error9_counter=0, error10_counter=0, error11_counter=0, error12_counter=39, error13_counter=0, error14_counter=0, error15_counter=0, error16_counter=0), state=State(start_time=1721330419, APPLIANCE_SUCCESSFUL_CONFIGURED=False, co2_empty=False, co2_20l_reached=False, filter_empty=False, filter_20l_reached=False, cleaning_mode_active=False, cleaning_needed=False, flush_confirmation_required=False, System_error_bitfield=0), calculate_average_since=None, pressure_notification=None, snooze_status=None, last_pressure_measurement=None, installer=None, command=None, notifications=None, status=None, data_latest=None)
2024-07-18 21:20:28.059 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Adding sensor entities from config entry <ConfigEntry entry_id=01J32DECJJS2YAFFNJ1BGZKMCV version=1 domain=grohe_sense title=Grohe Sense state=ConfigEntryState.SETUP_IN_PROGRESS unique_id=GroheSense>
2024-07-18 21:20:28.059 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.NOTIFICATION to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.059 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.CLEANING_COUNT to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.059 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.DATE_OF_CLEANING to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.059 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.DATE_OF_CO2_REPLACEMENT to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.060 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.DATE_OF_FILTER_REPLACEMENT to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.060 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.FILTER_CHANGE_COUNT to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.060 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.MAX_IDLE_TIME to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.060 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.OPEN_CLOSE_CYCLES_CARBONATED to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.060 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.OPEN_CLOSE_CYCLES_STILL to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.060 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.OPERATING_TIME to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.060 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.POWER_CUT_COUNT to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.060 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.PUMP_COUNT to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.060 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.PUMP_RUNNING_TIME to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.060 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.REMAINING_CO2 to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.060 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.REMAINING_FILTER to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.060 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.TIME_SINCE_LAST_WITHDRAWAL to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.060 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.TIME_SINCE_RESTART to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.061 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.WATER_RUNNING_TIME_CARBONATED to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.061 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.WATER_RUNNING_TIME_MEDIUM to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.061 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.WATER_RUNNING_TIME_STILL to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.061 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.REMAINING_FILTER_LITERS to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.061 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.REMAINING_CO2_LITERS to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff568bea20>
2024-07-18 21:20:28.061 DEBUG (MainThread) [custom_components.grohe_sense.api.ondus_api] Get appliance details for appliance XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
2024-07-18 21:20:28.751 DEBUG (MainThread) [custom_components.grohe_sense.valve] Adding sensor entities from config entry <ConfigEntry entry_id=01J32DECJJS2YAFFNJ1BGZKMCV version=1 domain=grohe_sense title=Grohe Sense state=ConfigEntryState.SETUP_IN_PROGRESS unique_id=GroheSense>
2024-07-18 21:20:28.792 DEBUG (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Got the following details for appliance XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX: Appliance(id='XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX', installation_date='2022-07-16T14:47:22.000+02:00', name='My GROHE Blue Pro', serial_number='XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX', type=105, version='01.04.Z10.0300.0104', tdt='2024-07-18T20:54:03.000+02:00', timezone=120, config=Config(thresholds=None, measurement_period=None, action_on_major_leakage=None, action_on_minor_leakage=None, action_on_micro_leakage=None, monitor_frost_alert=None, monitor_lower_flow_limit=None, monitor_upper_flow_limit=None, monitor_lower_pressure_limit=None, monitor_upper_pressure_limit=None, monitor_lower_temperature_limit=None, monitor_upper_temperature_limit=None, monitor_major_leakage=None, monitor_minor_leakage=None, monitor_micro_leakage=None, monitor_system_error=None, monitor_btw_0_1_and_0_8_leakage=None, monitor_withdrawel_amount_limit_breach=None, detection_interval=None, impulse_ignore=None, time_ignore=None, pressure_tolerance_band=None, pressure_drop=None, detection_time=None, action_on_btw_0_1_and_0_8_leakage=None, action_on_withdrawel_amount_limit_breach=None, withdrawel_amount_limit=None, sprinkler_mode_active_monday=None, sprinkler_mode_active_tuesday=None, sprinkler_mode_active_wednesday=None, sprinkler_mode_active_thursday=None, sprinkler_mode_active_friday=None, sprinkler_mode_active_saturday=None, sprinkler_mode_active_sunday=None, sprinkler_mode_start_time=None, sprinkler_mode_stop_time=None, measurement_transmission_intervall=None, measurement_transmission_intervall_offset=None, co2_type=2, hose_length=270, co2_consumption_medium=48, co2_consumption_carbonated=65, guest_mode_active=False, auto_flush_active=False, flush_confirmed=False, f_parameter=1, l_parameter=3, flow_rate_still=19, flow_rate_medium=34, flow_rate_carbonated=17), role='owner', registration_complete=True, presharedkey='26KL4EYOYjFYedciDGTP2jlXFl3Wsv7gPnLWsiAq/2M=', params=Params(water_hardness=0, carbon_hardness=15, filter_type=6, variant=4, auto_flush_reminder_notif=True, consumables_low_notif=True, product_information_notif=True), error=Errors(errors_1=False, errors_2=False, errors_3=False, errors_4=False, errors_5=False, errors_6=False, errors_7=False, errors_8=False, errors_9=False, errors_10=False, errors_11=False, errors_12=False, errors_13=False, errors_14=False, errors_15=False, errors_16=False, error1_counter=2, error2_counter=1, error3_counter=13, error4_counter=0, error5_counter=0, error6_counter=0, error7_counter=0, error8_counter=0, error9_counter=0, error10_counter=0, error11_counter=0, error12_counter=39, error13_counter=0, error14_counter=0, error15_counter=0, error16_counter=0), state=State(start_time=1721330428, APPLIANCE_SUCCESSFUL_CONFIGURED=False, co2_empty=False, co2_20l_reached=False, filter_empty=False, filter_20l_reached=False, cleaning_mode_active=False, cleaning_needed=False, flush_confirmation_required=False, System_error_bitfield=0), calculate_average_since=None, pressure_notification=None, snooze_status=None, last_pressure_measurement=None, installer=None, command=None, notifications=[], status=[Status(type='update_available', value=0), Status(type='connection', value=1)], data_latest=DataLatest(measurement=Measurement(timestamp='2024-07-18T20:54:03.000+02:00', temperature=None, humidity=None, flow_rate=None, pressure=None, temperature_guard=None, battery=None, cleaning_count=2, date_of_cleaning='2024-06-30T21:13:21.000+02:00', date_of_co2_replacement='2024-07-18T20:54:03.000+02:00', date_of_filter_replacement='2024-06-30T21:41:22.000+02:00', filter_change_count=3, max_idle_time=10875, open_close_cycles_carbonated=2360, open_close_cycles_still=2488, operating_time=14873, power_cut_count=73, pump_count=2495, pump_running_time=351, remaining_co2=90, remaining_filter=99, time_since_last_withdrawal=3, time_since_restart=536887329, time_offset=120, water_running_time_carbonated=494, water_running_time_medium=10, water_running_time_still=221, remaining_filter_liters=3154, remaining_co2_liters=238), average_measurements=None))
2024-07-18 21:20:28.793 ERROR (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Error updating Grohe Blue data: 'Measurement' object has no attribute 'items'
2024-07-18 21:20:28.793 DEBUG (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Finished fetching Grohe Blue data in 0.732 seconds (success: True)
2024-07-18 21:20:40.598 DEBUG (MainThread) [custom_components.grohe_sense.api.ondus_api] Get appliance details for appliance XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
2024-07-18 21:20:41.172 DEBUG (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Got the following details for appliance XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX: Appliance(id='XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX', installation_date='2022-07-16T14:47:22.000+02:00', name='My GROHE Blue Pro', serial_number='XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX', type=105, version='01.04.Z10.0300.0104', tdt='2024-07-18T20:54:03.000+02:00', timezone=120, config=Config(thresholds=None, measurement_period=None, action_on_major_leakage=None, action_on_minor_leakage=None, action_on_micro_leakage=None, monitor_frost_alert=None, monitor_lower_flow_limit=None, monitor_upper_flow_limit=None, monitor_lower_pressure_limit=None, monitor_upper_pressure_limit=None, monitor_lower_temperature_limit=None, monitor_upper_temperature_limit=None, monitor_major_leakage=None, monitor_minor_leakage=None, monitor_micro_leakage=None, monitor_system_error=None, monitor_btw_0_1_and_0_8_leakage=None, monitor_withdrawel_amount_limit_breach=None, detection_interval=None, impulse_ignore=None, time_ignore=None, pressure_tolerance_band=None, pressure_drop=None, detection_time=None, action_on_btw_0_1_and_0_8_leakage=None, action_on_withdrawel_amount_limit_breach=None, withdrawel_amount_limit=None, sprinkler_mode_active_monday=None, sprinkler_mode_active_tuesday=None, sprinkler_mode_active_wednesday=None, sprinkler_mode_active_thursday=None, sprinkler_mode_active_friday=None, sprinkler_mode_active_saturday=None, sprinkler_mode_active_sunday=None, sprinkler_mode_start_time=None, sprinkler_mode_stop_time=None, measurement_transmission_intervall=None, measurement_transmission_intervall_offset=None, co2_type=2, hose_length=270, co2_consumption_medium=48, co2_consumption_carbonated=65, guest_mode_active=False, auto_flush_active=False, flush_confirmed=False, f_parameter=1, l_parameter=3, flow_rate_still=19, flow_rate_medium=34, flow_rate_carbonated=17), role='owner', registration_complete=True, presharedkey='26KL4EYOYjFYedciDGTP2jlXFl3Wsv7gPnLWsiAq/2M=', params=Params(water_hardness=0, carbon_hardness=15, filter_type=6, variant=4, auto_flush_reminder_notif=True, consumables_low_notif=True, product_information_notif=True), error=Errors(errors_1=False, errors_2=False, errors_3=False, errors_4=False, errors_5=False, errors_6=False, errors_7=False, errors_8=False, errors_9=False, errors_10=False, errors_11=False, errors_12=False, errors_13=False, errors_14=False, errors_15=False, errors_16=False, error1_counter=2, error2_counter=1, error3_counter=13, error4_counter=0, error5_counter=0, error6_counter=0, error7_counter=0, error8_counter=0, error9_counter=0, error10_counter=0, error11_counter=0, error12_counter=39, error13_counter=0, error14_counter=0, error15_counter=0, error16_counter=0), state=State(start_time=1721330440, APPLIANCE_SUCCESSFUL_CONFIGURED=False, co2_empty=False, co2_20l_reached=False, filter_empty=False, filter_20l_reached=False, cleaning_mode_active=False, cleaning_needed=False, flush_confirmation_required=False, System_error_bitfield=0), calculate_average_since=None, pressure_notification=None, snooze_status=None, last_pressure_measurement=None, installer=None, command=None, notifications=[], status=[Status(type='update_available', value=0), Status(type='connection', value=1)], data_latest=DataLatest(measurement=Measurement(timestamp='2024-07-18T20:54:03.000+02:00', temperature=None, humidity=None, flow_rate=None, pressure=None, temperature_guard=None, battery=None, cleaning_count=2, date_of_cleaning='2024-06-30T21:13:21.000+02:00', date_of_co2_replacement='2024-07-18T20:54:03.000+02:00', date_of_filter_replacement='2024-06-30T21:41:22.000+02:00', filter_change_count=3, max_idle_time=10875, open_close_cycles_carbonated=2360, open_close_cycles_still=2488, operating_time=14873, power_cut_count=73, pump_count=2495, pump_running_time=351, remaining_co2=90, remaining_filter=99, time_since_last_withdrawal=3, time_since_restart=536887329, time_offset=120, water_running_time_carbonated=494, water_running_time_medium=10, water_running_time_still=221, remaining_filter_liters=3154, remaining_co2_liters=238), average_measurements=None))
2024-07-18 21:20:41.172 ERROR (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Error updating Grohe Blue data: 'Measurement' object has no attribute 'items'
2024-07-18 21:20:41.172 DEBUG (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Finished fetching Grohe Blue data in 0.575 seconds (success: True)
2024-07-18 21:20:41.174 ERROR (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Unexpected exception from <bound method DataUpdateCoordinator.async_refresh of <custom_components.grohe_sense.entities.grohe_blue_update_coordinator.GroheBlueUpdateCoordinator object at 0xffff48280320>>
File "/config/custom_components/grohe_sense/entities/grohe_sense_notifications.py", line 50, in _handle_coordinator_update
Hi @rama1981, thanks for providing the information. I just made a few minor changes and I hope it should fix the problem (hopefully no other one will appear). Can you please give it a try :-)
hi @Flo-Schilli don´t worry, I´m very happy that you give my request a try :-)
2024-07-18 22:16:57.851 WARNING (SyncWorker_0) [homeassistant.loader] We found a custom integration grohe_sense 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
2024-07-18 22:17:12.690 DEBUG (MainThread) [custom_components.grohe_sense] Loading Grohe Sense
2024-07-18 22:17:12.690 INFO (MainThread) [custom_components.grohe_sense.api.ondus_api] Login to Ondus API
2024-07-18 22:17:12.690 DEBUG (MainThread) [custom_components.grohe_sense.api.ondus_api] Login with username/password
2024-07-18 22:17:14.576 DEBUG (MainThread) [custom_components.grohe_sense.dto.grohe_device] Getting all available Grohe devices
2024-07-18 22:17:14.576 DEBUG (MainThread) [custom_components.grohe_sense.api.ondus_api] Get locations
2024-07-18 22:17:14.724 DEBUG (MainThread) [custom_components.grohe_sense.api.ondus_api] Get rooms for location LocId
2024-07-18 22:17:14.803 DEBUG (MainThread) [custom_components.grohe_sense.api.ondus_api] Get appliances for location LocId and room RoomId
2024-07-18 22:17:14.985 DEBUG (MainThread) [custom_components.grohe_sense.dto.grohe_device] Found in location LocId and room RoomId the following appliance: Appliance(id='ThisIsMyId', installation_date='2022-07-16T14:47:22.000+02:00', name='My GROHE Blue Pro', serial_number='thisIsMySerial', type=105, version='01.04.Z10.0300.0104', tdt='2024-07-18T20:54:03.000+02:00', timezone=120, config=Config(thresholds=None, measurement_period=None, action_on_major_leakage=None, action_on_minor_leakage=None, action_on_micro_leakage=None, monitor_frost_alert=None, monitor_lower_flow_limit=None, monitor_upper_flow_limit=None, monitor_lower_pressure_limit=None, monitor_upper_pressure_limit=None, monitor_lower_temperature_limit=None, monitor_upper_temperature_limit=None, monitor_major_leakage=None, monitor_minor_leakage=None, monitor_micro_leakage=None, monitor_system_error=None, monitor_btw_0_1_and_0_8_leakage=None, monitor_withdrawel_amount_limit_breach=None, detection_interval=None, impulse_ignore=None, time_ignore=None, pressure_tolerance_band=None, pressure_drop=None, detection_time=None, action_on_btw_0_1_and_0_8_leakage=None, action_on_withdrawel_amount_limit_breach=None, withdrawel_amount_limit=None, sprinkler_mode_active_monday=None, sprinkler_mode_active_tuesday=None, sprinkler_mode_active_wednesday=None, sprinkler_mode_active_thursday=None, sprinkler_mode_active_friday=None, sprinkler_mode_active_saturday=None, sprinkler_mode_active_sunday=None, sprinkler_mode_start_time=None, sprinkler_mode_stop_time=None, measurement_transmission_intervall=None, measurement_transmission_intervall_offset=None, co2_type=2, hose_length=270, co2_consumption_medium=48, co2_consumption_carbonated=65, guest_mode_active=False, auto_flush_active=False, flush_confirmed=False, f_parameter=1, l_parameter=3, flow_rate_still=19, flow_rate_medium=34, flow_rate_carbonated=17), role='owner', registration_complete=True, presharedkey='thisIsMykey', params=Params(water_hardness=0, carbon_hardness=15, filter_type=6, variant=4, auto_flush_reminder_notif=True, consumables_low_notif=True, product_information_notif=True), error=Errors(errors_1=False, errors_2=False, errors_3=False, errors_4=False, errors_5=False, errors_6=False, errors_7=False, errors_8=False, errors_9=False, errors_10=False, errors_11=False, errors_12=False, errors_13=False, errors_14=False, errors_15=False, errors_16=False, error1_counter=2, error2_counter=1, error3_counter=13, error4_counter=0, error5_counter=0, error6_counter=0, error7_counter=0, error8_counter=0, error9_counter=0, error10_counter=0, error11_counter=0, error12_counter=39, error13_counter=0, error14_counter=0, error15_counter=0, error16_counter=0), state=State(start_time=1721333834, APPLIANCE_SUCCESSFUL_CONFIGURED=False, co2_empty=False, co2_20l_reached=False, filter_empty=False, filter_20l_reached=False, cleaning_mode_active=False, cleaning_needed=False, flush_confirmation_required=False, System_error_bitfield=0), calculate_average_since=None, pressure_notification=None, snooze_status=None, last_pressure_measurement=None, installer=None, command=None, notifications=None, status=None, data_latest=None)
2024-07-18 22:17:20.513 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Adding sensor entities from config entry <ConfigEntry entry_id=01J32DECJJS2YAFFNJ1BGZKMCV version=1 domain=grohe_sense title=Grohe Sense state=ConfigEntryState.SETUP_IN_PROGRESS unique_id=GroheSense>
2024-07-18 22:17:20.514 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.NOTIFICATION to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.514 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.CLEANING_COUNT to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.514 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.DATE_OF_CLEANING to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.514 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.DATE_OF_CO2_REPLACEMENT to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.514 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.DATE_OF_FILTER_REPLACEMENT to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.514 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.FILTER_CHANGE_COUNT to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.514 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.MAX_IDLE_TIME to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.514 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.OPEN_CLOSE_CYCLES_CARBONATED to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.514 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.OPEN_CLOSE_CYCLES_STILL to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.514 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.OPERATING_TIME to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.515 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.POWER_CUT_COUNT to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.515 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.PUMP_COUNT to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.515 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.PUMP_RUNNING_TIME to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.515 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.REMAINING_CO2 to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.515 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.REMAINING_FILTER to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.515 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.TIME_SINCE_LAST_WITHDRAWAL to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.515 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.TIME_SINCE_RESTART to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.515 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.WATER_RUNNING_TIME_CARBONATED to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.515 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.WATER_RUNNING_TIME_MEDIUM to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.515 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.WATER_RUNNING_TIME_STILL to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.515 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.REMAINING_FILTER_LITERS to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.515 DEBUG (MainThread) [custom_components.grohe_sense.sensor] Attaching sensor SensorTypes.REMAINING_CO2_LITERS to device <custom_components.grohe_sense.dto.grohe_device.GroheDevice object at 0xffff51451f70>
2024-07-18 22:17:20.516 DEBUG (MainThread) [custom_components.grohe_sense.api.ondus_api] Get appliance details for appliance ThisIsMyId
2024-07-18 22:17:20.519 DEBUG (MainThread) [custom_components.grohe_sense.valve] Adding sensor entities from config entry <ConfigEntry entry_id=01J32DECJJS2YAFFNJ1BGZKMCV version=1 domain=grohe_sense title=Grohe Sense state=ConfigEntryState.SETUP_IN_PROGRESS unique_id=GroheSense>
2024-07-18 22:17:21.506 DEBUG (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Got the following details for appliance ThisIsMyId: Appliance(id='ThisIsMyId', installation_date='2022-07-16T14:47:22.000+02:00', name='My GROHE Blue Pro', serial_number='thisIsMySerial', type=105, version='01.04.Z10.0300.0104', tdt='2024-07-18T20:54:03.000+02:00', timezone=120, config=Config(thresholds=None, measurement_period=None, action_on_major_leakage=None, action_on_minor_leakage=None, action_on_micro_leakage=None, monitor_frost_alert=None, monitor_lower_flow_limit=None, monitor_upper_flow_limit=None, monitor_lower_pressure_limit=None, monitor_upper_pressure_limit=None, monitor_lower_temperature_limit=None, monitor_upper_temperature_limit=None, monitor_major_leakage=None, monitor_minor_leakage=None, monitor_micro_leakage=None, monitor_system_error=None, monitor_btw_0_1_and_0_8_leakage=None, monitor_withdrawel_amount_limit_breach=None, detection_interval=None, impulse_ignore=None, time_ignore=None, pressure_tolerance_band=None, pressure_drop=None, detection_time=None, action_on_btw_0_1_and_0_8_leakage=None, action_on_withdrawel_amount_limit_breach=None, withdrawel_amount_limit=None, sprinkler_mode_active_monday=None, sprinkler_mode_active_tuesday=None, sprinkler_mode_active_wednesday=None, sprinkler_mode_active_thursday=None, sprinkler_mode_active_friday=None, sprinkler_mode_active_saturday=None, sprinkler_mode_active_sunday=None, sprinkler_mode_start_time=None, sprinkler_mode_stop_time=None, measurement_transmission_intervall=None, measurement_transmission_intervall_offset=None, co2_type=2, hose_length=270, co2_consumption_medium=48, co2_consumption_carbonated=65, guest_mode_active=False, auto_flush_active=False, flush_confirmed=False, f_parameter=1, l_parameter=3, flow_rate_still=19, flow_rate_medium=34, flow_rate_carbonated=17), role='owner', registration_complete=True, presharedkey='thisIsMykey', params=Params(water_hardness=0, carbon_hardness=15, filter_type=6, variant=4, auto_flush_reminder_notif=True, consumables_low_notif=True, product_information_notif=True), error=Errors(errors_1=False, errors_2=False, errors_3=False, errors_4=False, errors_5=False, errors_6=False, errors_7=False, errors_8=False, errors_9=False, errors_10=False, errors_11=False, errors_12=False, errors_13=False, errors_14=False, errors_15=False, errors_16=False, error1_counter=2, error2_counter=1, error3_counter=13, error4_counter=0, error5_counter=0, error6_counter=0, error7_counter=0, error8_counter=0, error9_counter=0, error10_counter=0, error11_counter=0, error12_counter=39, error13_counter=0, error14_counter=0, error15_counter=0, error16_counter=0), state=State(start_time=1721333840, APPLIANCE_SUCCESSFUL_CONFIGURED=False, co2_empty=False, co2_20l_reached=False, filter_empty=False, filter_20l_reached=False, cleaning_mode_active=False, cleaning_needed=False, flush_confirmation_required=False, System_error_bitfield=0), calculate_average_since=None, pressure_notification=None, snooze_status=None, last_pressure_measurement=None, installer=None, command=None, notifications=[], status=[Status(type='connection', value=1), Status(type='update_available', value=0)], data_latest=DataLatest(measurement=MeasurementDto(timestamp='2024-07-18T20:54:03.000+02:00', temperature=None, humidity=None, flow_rate=None, pressure=None, temperature_guard=None, battery=None, cleaning_count=2, date_of_cleaning='2024-06-30T21:13:21.000+02:00', date_of_co2_replacement='2024-07-18T20:54:03.000+02:00', date_of_filter_replacement='2024-06-30T21:41:22.000+02:00', filter_change_count=3, max_idle_time=10875, open_close_cycles_carbonated=2360, open_close_cycles_still=2488, operating_time=14873, power_cut_count=73, pump_count=2495, pump_running_time=351, remaining_co2=90, remaining_filter=99, time_since_last_withdrawal=3, time_since_restart=536887329, time_offset=120, water_running_time_carbonated=494, water_running_time_medium=10, water_running_time_still=221, remaining_filter_liters=3154, remaining_co2_liters=238), average_measurements=None))
2024-07-18 22:17:21.509 DEBUG (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Finished fetching Grohe Blue data in 0.994 seconds (success: True)
2024-07-18 22:17:31.634 DEBUG (MainThread) [custom_components.grohe_sense.api.ondus_api] Get appliance details for appliance ThisIsMyId
2024-07-18 22:17:32.341 DEBUG (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Got the following details for appliance ThisIsMyId: Appliance(id='ThisIsMyId', installation_date='2022-07-16T14:47:22.000+02:00', name='My GROHE Blue Pro', serial_number='thisIsMySerial', type=105, version='01.04.Z10.0300.0104', tdt='2024-07-18T20:54:03.000+02:00', timezone=120, config=Config(thresholds=None, measurement_period=None, action_on_major_leakage=None, action_on_minor_leakage=None, action_on_micro_leakage=None, monitor_frost_alert=None, monitor_lower_flow_limit=None, monitor_upper_flow_limit=None, monitor_lower_pressure_limit=None, monitor_upper_pressure_limit=None, monitor_lower_temperature_limit=None, monitor_upper_temperature_limit=None, monitor_major_leakage=None, monitor_minor_leakage=None, monitor_micro_leakage=None, monitor_system_error=None, monitor_btw_0_1_and_0_8_leakage=None, monitor_withdrawel_amount_limit_breach=None, detection_interval=None, impulse_ignore=None, time_ignore=None, pressure_tolerance_band=None, pressure_drop=None, detection_time=None, action_on_btw_0_1_and_0_8_leakage=None, action_on_withdrawel_amount_limit_breach=None, withdrawel_amount_limit=None, sprinkler_mode_active_monday=None, sprinkler_mode_active_tuesday=None, sprinkler_mode_active_wednesday=None, sprinkler_mode_active_thursday=None, sprinkler_mode_active_friday=None, sprinkler_mode_active_saturday=None, sprinkler_mode_active_sunday=None, sprinkler_mode_start_time=None, sprinkler_mode_stop_time=None, measurement_transmission_intervall=None, measurement_transmission_intervall_offset=None, co2_type=2, hose_length=270, co2_consumption_medium=48, co2_consumption_carbonated=65, guest_mode_active=False, auto_flush_active=False, flush_confirmed=False, f_parameter=1, l_parameter=3, flow_rate_still=19, flow_rate_medium=34, flow_rate_carbonated=17), role='owner', registration_complete=True, presharedkey='thisIsMykey', params=Params(water_hardness=0, carbon_hardness=15, filter_type=6, variant=4, auto_flush_reminder_notif=True, consumables_low_notif=True, product_information_notif=True), error=Errors(errors_1=False, errors_2=False, errors_3=False, errors_4=False, errors_5=False, errors_6=False, errors_7=False, errors_8=False, errors_9=False, errors_10=False, errors_11=False, errors_12=False, errors_13=False, errors_14=False, errors_15=False, errors_16=False, error1_counter=2, error2_counter=1, error3_counter=13, error4_counter=0, error5_counter=0, error6_counter=0, error7_counter=0, error8_counter=0, error9_counter=0, error10_counter=0, error11_counter=0, error12_counter=39, error13_counter=0, error14_counter=0, error15_counter=0, error16_counter=0), state=State(start_time=1721333851, APPLIANCE_SUCCESSFUL_CONFIGURED=False, co2_empty=False, co2_20l_reached=False, filter_empty=False, filter_20l_reached=False, cleaning_mode_active=False, cleaning_needed=False, flush_confirmation_required=False, System_error_bitfield=0), calculate_average_since=None, pressure_notification=None, snooze_status=None, last_pressure_measurement=None, installer=None, command=None, notifications=[], status=[Status(type='update_available', value=0), Status(type='connection', value=1)], data_latest=DataLatest(measurement=MeasurementDto(timestamp='2024-07-18T20:54:03.000+02:00', temperature=None, humidity=None, flow_rate=None, pressure=None, temperature_guard=None, battery=None, cleaning_count=2, date_of_cleaning='2024-06-30T21:13:21.000+02:00', date_of_co2_replacement='2024-07-18T20:54:03.000+02:00', date_of_filter_replacement='2024-06-30T21:41:22.000+02:00', filter_change_count=3, max_idle_time=10875, open_close_cycles_carbonated=2360, open_close_cycles_still=2488, operating_time=14873, power_cut_count=73, pump_count=2495, pump_running_time=351, remaining_co2=90, remaining_filter=99, time_since_last_withdrawal=3, time_since_restart=536887329, time_offset=120, water_running_time_carbonated=494, water_running_time_medium=10, water_running_time_still=221, remaining_filter_liters=3154, remaining_co2_liters=238), average_measurements=None))
2024-07-18 22:17:32.343 DEBUG (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Finished fetching Grohe Blue data in 0.708 seconds (success: True)
2024-07-18 22:17:32.343 ERROR (MainThread) [custom_components.grohe_sense.entities.grohe_blue_update_coordinator] Unexpected exception from <bound method DataUpdateCoordinator.async_refresh of <custom_components.grohe_sense.entities.grohe_blue_update_coordinator.GroheBlueUpdateCoordinator object at 0xffff4b7d8b90>>
File "/config/custom_components/grohe_sense/entities/grohe_sensor.py", line 52, in _handle_coordinator_update
ValueError: Invalid datetime: sensor.my_grohe_blue_pro_date_of_cleaning has timestamp device class but provides state 2024-06-30T21:13:21.000+02:00:<class 'str'> resulting in ''str' object has no attribute
Can you please give it another try :-)
works like a charm. Amazing, thank you very much. Herzlichen Dank!
Great to hear that it's now working like a charm :-) I'm gonna merge it into the main branch tomorrow morning so that you can take files from there.
Have a great evening
oh, it´s so beautiful, it takes a little while, that i had find your fork, and your clean up about the code. And aside from that i needed strenght to feel free to ask you if you could help me. It´s really impressive, how you did the trial and error and coding. Thank you very much. Have a great evening as well.
if you need a picture as well for the integration, maybe you can use this one. https://play-lh.googleusercontent.com/WkGcCB5W8AWvbLPmY8mDAWvcn-NUIXYd8aBaZjKlfS_n1NSj4vZCvqMYifeJRAcncyhx
@rama1981 it's now on main and you should be able to take that branch now as source for your home assistant integration. Also thanks for reaching out and taking the time to go with me through the trail and error and helping to implement a new device type into the integration. Also a big thanks for the picture. I was planing on integrating this already but haven't found the time. But will do it in the future :)
@Flo-Schilli got the last branch and did a restart. Everything fine, thank you very much. I wish you a very nice weekend.
Good day,
I tried a lot with your beautiful code - I´m not a programmer, so it´s much more trial and error. After maybe 40 hours of trial and error, I would like to ask, if you can implement the Grohe Blue Professional with Type = 105, please.
I tried to add at grohe_device.py:
and at enum/ondus_types.py
but the response is:
I´m on home assistant Core 2024.7.2 and home assistant Operating System 12.4
my dashboard looks like: _ { "locations": [ { "id": 5X1XXX6, "name": "XXX", "type": 1, "role": "owner", "timezone": "Europe/Vienna", "water_cost": -1, "energy_cost": -1, "heating_type": -1, "currency": "EUR", "default_water_cost": 0.003337, "default_energy_cost": 0.004376, "default_heating_type": 2, "emergency_shutdown_enable": true, "address": { "street": "XXXXXX", "city": "XXXXXX", "zipcode": "XXXX", "housenumber": "", "country": "Österreich", "country_code": "AT", "additionalInfo": "", "state": "" }, "rooms": [ { "id": 4XX48XX, "name": "Küche", "type": 1, "room_type": 15, "role": "owner", "appliances": [ { "appliance_id": "XXXXX", "installation_date": "2022-07-16T14:47:22.000+02:00", "name": "My GROHE Blue Pro", "serial_number": "XXXXX", "type": 105, "version": "01.04.Z10.0300.0104", "tdt": "2024-07-16T21:11:17.000+02:00", "timezone": 120, "config": { "co2_type": 2, "hose_length": 270, "co2_consumption_medium": 48, "co2_consumption_carbonated": 65, "guest_mode_active": false, "auto_flush_active": false, "flush_confirmed": false, "f_parameter": 1, "l_parameter": 3, "flow_rate_still": 19, "flow_rate_medium": 34, "flow_rate_carbonated": 17 }, "role": "owner", "registration_complete": true, "presharedkey": "XXXXX", "params": { "water_hardness": 0, "carbon_hardness": 15, "filter_type": 6, "variant": 4, "auto_flush_reminder_notif": true, "consumables_low_notif": true, "product_information_notif": true }, "error": { "errors_1": false, "errors_2": false, "errors_3": false, "errors_4": false, "errors_5": false, "errors_6": false, "errors_7": false, "errors_8": false, "errors_9": false, "errors_10": false, "errors_11": false, "errors_12": false, "errors_13": false, "errors_14": false, "errors_15": false, "errors_16": false, "error1_counter": 2, "error2_counter": 1, "error3_counter": 13, "error4_counter": 0, "error5_counter": 0, "error6_counter": 0, "error7_counter": 0, "error8_counter": 0, "error9_counter": 0, "error10_counter": 0, "error11_counter": 0, "error12_counter": 39, "error13_counter": 0, "error14_counter": 0, "error15_counter": 0, "error16_counter": 0 }, "state": { "start_time": 1721159338, "APPLIANCE_SUCCESSFUL_CONFIGURED": false, "co2_empty": false, "co2_20l_reached": false, "filter_empty": false, "filter_20l_reached": false, "cleaning_mode_active": false, "cleaning_needed": false, "flush_confirmation_required": false, "System_error_bitfield": 0 }, "status": [ { "type": "update_available", "value": 0 }, { "type": "connection", "value": 1 } ], "notifications": [], "data_latest": { "measurement": { "cleaning_count": 2, "date_of_cleaning": "2024-06-30T21:13:21.000+02:00", "date_of_co2_replacement": "2024-07-16T21:11:17.000+02:00", "date_of_filter_replacement": "2024-06-30T21:41:22.000+02:00", "filter_change_count": 3, "max_idle_time": 10875, "open_close_cycles_carbonated": 2351, "open_close_cycles_still": 2479, "operating_time": 14826, "power_cut_count": 73, "pump_count": 2486, "pump_running_time": 350, "remaining_co2": 92, "remaining_filter": 99, "time_since_last_withdrawal": 6, "time_since_restart": 536887329, "timeoffset": 120, "timestamp": "2024-07-16T21:11:17.000+02:00", "water_running_time_carbonated": 492, "water_running_time_medium": 10, "water_running_time_still": 221, "remaining_filter_liters": 3159, "remaining_co2_liters": 242 } } } ] } ], "emergencycontacts": [] } ] }
Thank you for reading.