Environment
- gehomesdk version: 2026.2.0 (via pip, installed by ha_gehome)
- ha_gehome version: 2026.2.0
- Home Assistant Core: 2026.3.4
- Python: 3.14
- Appliance: GE Profile Advantium microwave/oven
Problem
The AdvantiumCookAction and AdvantiumWarmStatus enums raise ValueError for values that the appliance regularly sends. The converter catches the exception and falls back to a default, so there's no functional impact — but the error logs every ~30 seconds, filling the HA log with noise.
AdvantiumCookAction — value 38 not handled
2026-04-01 23:12:34.878 ERROR (MainThread) [gehomesdk.erd.converters.advantium.erd_advantium_cook_setting_converter]
Could not construct cook setting (value: 9026FA02540000399669E185CB0C7A109126FA), using default.
Traceback (most recent call last):
File ".../gehomesdk/erd/converters/advantium/erd_advantium_cook_setting_converter.py", line 24, in erd_decode
cook_action = AdvantiumCookAction(int_values[1]),
ValueError: 38 is not a valid AdvantiumCookAction
AdvantiumWarmStatus — value 250 not handled
ValueError: 250 is not a valid AdvantiumWarmStatus
Root Cause
In gehomesdk/erd/values/advantium/advantium_enums.py, both enums have _missing_ methods that only handle a few specific fallback values and raise ValueError for everything else:
class AdvantiumCookAction(enum.IntEnum):
STOP = 0
START = 1
UPDATED = 2
PAUSE = 3
RESUME = 4
UNKNOWN = 255
@classmethod
def _missing_(cls, value):
if value in (20, 178):
return cls.STOP
return super()._missing_(value) # <-- raises ValueError for 38
class AdvantiumWarmStatus(enum.IntEnum):
OFF = 0
CRISP = 1
MOIST = 2
UNKNOWN = 255
@classmethod
def _missing_(cls, value):
if value == 223:
return cls.OFF
return super()._missing_(value) # <-- raises ValueError for 250
Suggested Fix
Return the UNKNOWN/OFF fallback for any unrecognized value instead of raising:
class AdvantiumCookAction(enum.IntEnum):
# ... existing values ...
@classmethod
def _missing_(cls, value):
if value in (20, 178):
return cls.STOP
return cls.UNKNOWN # graceful fallback instead of ValueError
class AdvantiumWarmStatus(enum.IntEnum):
# ... existing values ...
@classmethod
def _missing_(cls, value):
if value == 223:
return cls.OFF
return cls.OFF # graceful fallback instead of ValueError
This matches the pattern already used by AdvantiumCookMode._missing_ which returns cls.NO_MODE for unrecognized values (153, 223, 253).
The converter already has a try/except that catches the ValueError and uses a default ErdAdvantiumCookSetting, so the fix just eliminates unnecessary exception logging while preserving the same behavior.
Environment
Problem
The
AdvantiumCookActionandAdvantiumWarmStatusenums raiseValueErrorfor values that the appliance regularly sends. The converter catches the exception and falls back to a default, so there's no functional impact — but the error logs every ~30 seconds, filling the HA log with noise.AdvantiumCookAction — value 38 not handled
AdvantiumWarmStatus — value 250 not handled
Root Cause
In
gehomesdk/erd/values/advantium/advantium_enums.py, both enums have_missing_methods that only handle a few specific fallback values and raiseValueErrorfor everything else:Suggested Fix
Return the
UNKNOWN/OFFfallback for any unrecognized value instead of raising:This matches the pattern already used by
AdvantiumCookMode._missing_which returnscls.NO_MODEfor unrecognized values (153, 223, 253).The converter already has a try/except that catches the ValueError and uses a default
ErdAdvantiumCookSetting, so the fix just eliminates unnecessary exception logging while preserving the same behavior.