ha_gehome
ha_gehome copied to clipboard
F&P Dual Dishwasher, ValueError in UserDryOptionSetting at end of cycle
Thanks for the help on #172! Had time today to get things set up and the integration works as expected but I figured I should report this anyway since unexpected values for enums could potentially cause problems elsewhere. :)
This looks like a similar unexpected value issue. The error logging happened toward the end of a cycle while the dishwasher was in the drying part of the cycle.
During the wash cycle it reported the "Setting Dry Option" as "Power Dry", which seems to be accurate. After the cycle finished and the error was triggered there wasn't any kind of catastrophic failure thanks to the error being caught effectively in erd_user_setting_converter
.
In the SmartHQ iOS app the dishwasher reports itself as being "off" although I can hear the dishwasher's internal dryer fan running, so it might be some kind of post-cycle air circulation standby or something?
Here's the error info from the HA logs:
2023-09-24 10:53:23.308 ERROR (MainThread) [gehomesdk.erd.converters.dishwasher.erd_user_setting_converter] Could not construct user setting, using default.
Traceback (most recent call last):
File "/usr/local/lib/python3.11/site-packages/gehomesdk/erd/converters/dishwasher/erd_user_setting_converter.py", line 32, in erd_decode
dry_option = UserDryOptionSetting((i & 3072) >> 10),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/enum.py", line 712, in __call__
return cls.__new__(cls, value)
^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/enum.py", line 1128, in __new__
raise ve_exc
ValueError: 3 is not a valid UserDryOptionSetting
2023-09-24 10:53:23.309 ERROR (MainThread) [gehomesdk.erd.converters.dishwasher.erd_user_setting_converter] Could not construct user setting, using default.
Traceback (most recent call last):
File "/usr/local/lib/python3.11/site-packages/gehomesdk/erd/converters/dishwasher/erd_user_setting_converter.py", line 32, in erd_decode
dry_option = UserDryOptionSetting((i & 3072) >> 10),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/enum.py", line 712, in __call__
return cls.__new__(cls, value)
^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/enum.py", line 1128, in __new__
raise ve_exc
ValueError: 3 is not a valid UserDryOptionSetting
I'm running another cycle now to see if the same error pops up at the end and I'll update this issue if anything unexpected happens.