Add missing dryer cycle labels for DV90DG6845LHU5 (issue #244)
Codes 51 (Eco Cotton), 53 (AI Dry+), and 4e (Self Dry) were confirmed by the reporter selecting each program on the physical appliance and reading back the resulting raw course code, same table (Table_03) as the existing issue #80 confirmations. Also fixes an import-sort lint error left over in by_type/dehumidifier.py and a stale comment in dryer.py claiming codes 21/4c were still unidentified when the catalog already had them.
This commit is contained in:
1 parent
e6d7dcddc8
commit
0cc9486ad5
8 files changed
+39
-12
No files matched your search
@@ -8,7 +8,7 @@ air_purifier.py's screen-on/off resource on the identical href/shape, so
|
||||
that's reused too rather than re-defined.
|
||||
"""
|
||||
|
||||
from ..capabilities import airconditioner, air_purifier, common, dehumidifier, ignored
|
||||
from ..capabilities import air_purifier, airconditioner, common, dehumidifier, ignored
|
||||
from ._base import DeviceRegistry, _build
|
||||
|
||||
REGISTRY = DeviceRegistry(
|
||||
|
||||
@@ -41,14 +41,14 @@ DRYER_SETTINGS = Capability(
|
||||
# laundry.cycle_select (options read live from /wm/editcourse/vs/0, written as
|
||||
# an RMW on the options array). Course display names live in translations
|
||||
# under entity.select.dryer_cycle (Table_03, DV5000-class, captured
|
||||
# 2026-05-29). Codes 0x21 and 0x4C appear in the issue #14 DV90BB5245AES1
|
||||
# editCourseList but aren't identified yet -- they render as the raw code
|
||||
# until named. Codes '01' Normal and '06' Time dry were confirmed on a
|
||||
# 2026-05-29). Codes '01' Normal and '06' Time dry were confirmed on a
|
||||
# DVE50A8600V/A3 (also Table_03) by selecting each cycle on the physical
|
||||
# appliance and reading back the raw code from the entity's state (issue
|
||||
# #80). The /st/dryercourse/vs/0 resource re-encodes the same selected
|
||||
# course and is ignored (ignored.py) -- the mirror of how /st/washercourse/vs/0
|
||||
# is ignored for washers.
|
||||
# #80). Codes '51' Eco Cotton, '53' AI Dry+, and '4e' Self Dry were
|
||||
# confirmed the same way on a DV90DG6845LHU5 (issue #244). The
|
||||
# /st/dryercourse/vs/0 resource re-encodes the same selected course and is
|
||||
# ignored (ignored.py) -- the mirror of how /st/washercourse/vs/0 is ignored
|
||||
# for washers.
|
||||
#
|
||||
# Drum Clean+ maintenance tracking (issue #258) reuses washer.py's
|
||||
# DrumCleanProposal_/WashingTimes_/DrumCleanLog_ tokens on this same
|
||||
|
||||
@@ -325,7 +325,10 @@
|
||||
"1e": "Outdoor",
|
||||
"1f": "Smíšená náplň",
|
||||
"2b": "Sušení bubnu",
|
||||
"4c": "Osvěžení vzduchem"
|
||||
"4c": "Osvěžení vzduchem",
|
||||
"51": "Eko bavlna",
|
||||
"53": "AI sušení+",
|
||||
"4e": "Automatické sušení"
|
||||
}
|
||||
},
|
||||
"favorite_capacity": {
|
||||
|
||||
@@ -325,7 +325,10 @@
|
||||
"1e": "Outdoor",
|
||||
"1f": "Mixed load",
|
||||
"2b": "Self Tub Dry",
|
||||
"4c": "Air Refresh"
|
||||
"4c": "Air Refresh",
|
||||
"51": "Eco Cotton",
|
||||
"53": "AI Dry+",
|
||||
"4e": "Self Dry"
|
||||
}
|
||||
},
|
||||
"favorite_capacity": {
|
||||
|
||||
@@ -439,7 +439,10 @@
|
||||
"1e": "Exterior",
|
||||
"1f": "Carga mixta",
|
||||
"2b": "Secado de tambor",
|
||||
"4c": "Renovación de aire"
|
||||
"4c": "Renovación de aire",
|
||||
"51": "Eco algodón",
|
||||
"53": "Secado IA+",
|
||||
"4e": "Autosecado"
|
||||
}
|
||||
},
|
||||
"favorite_capacity": {
|
||||
|
||||
@@ -325,7 +325,10 @@
|
||||
"1e": "Capi outdoor",
|
||||
"1f": "Carico misto",
|
||||
"2b": "Asciugatura cestello",
|
||||
"4c": "Rinfresca"
|
||||
"4c": "Rinfresca",
|
||||
"51": "Eco cotone",
|
||||
"53": "Asciugatura AI+",
|
||||
"4e": "Autoasciugatura"
|
||||
}
|
||||
},
|
||||
"favorite_capacity": {
|
||||
|
||||
@@ -325,7 +325,10 @@
|
||||
"1e": "Outdoor",
|
||||
"1f": "Gemengde was",
|
||||
"2b": "Zelf trommel drogen",
|
||||
"4c": "Opfrissen"
|
||||
"4c": "Opfrissen",
|
||||
"51": "Eco katoen",
|
||||
"53": "AI drogen+",
|
||||
"4e": "Zelf drogen"
|
||||
}
|
||||
},
|
||||
"favorite_capacity": {
|
||||
|
||||
@@ -94,3 +94,15 @@ def test_st_dryercourse_is_ignored():
|
||||
ignored_hrefs = {c.href for c in ignored.IGNORED}
|
||||
assert "/st/dryercourse/vs/0" in ignored_hrefs
|
||||
assert "/st/washercourse/vs/0" in ignored_hrefs
|
||||
|
||||
|
||||
def test_table_03_labels_confirmed_on_dv90dg6845lhu5():
|
||||
"""Issue #244: codes 51/53/4e were confirmed by selecting each program
|
||||
directly on the physical DV90DG6845LHU5 and reading back the resulting
|
||||
raw course code -- same verification method as issue #80's '52'/'54'/'60'
|
||||
on the washer's own course table."""
|
||||
from custom_components.localthings.catalog import translated_states
|
||||
|
||||
known = translated_states("select", "dryer_cycle_table_03")
|
||||
for code in ("51", "53", "4e", "17", "21", "4c"):
|
||||
assert code in known, code
|
||||
Reference in new issue
Block a user