roborock.const

 1# Total time in seconds consumables have before Roborock recommends replacing
 2MAIN_BRUSH_REPLACE_TIME = 1080000
 3SIDE_BRUSH_REPLACE_TIME = 720000
 4FILTER_REPLACE_TIME = 540000
 5SENSOR_DIRTY_REPLACE_TIME = 108000
 6MOP_ROLLER_REPLACE_TIME = 1080000
 7STRAINER_REPLACE_TIME = 150
 8CLEANING_BRUSH_REPLACE_TIME = 300
 9DUST_COLLECTION_REPLACE_TIME = 90
10FLOOR_CLEANER_REPLACE_TIME = 300
11
12
13ROBOROCK_V1 = "ROBOROCK.vacuum.v1"
14ROBOROCK_S4 = "roborock.vacuum.s4"
15ROBOROCK_S4_MAX = "roborock.vacuum.a19"
16ROBOROCK_S5 = "roborock.vacuum.s5"
17ROBOROCK_S5_MAX = "roborock.vacuum.s5e"
18ROBOROCK_S6 = "roborock.vacuum.s6"
19ROBOROCK_T6 = "roborock.vacuum.t6"  # cn s6
20ROBOROCK_E4 = "roborock.vacuum.a01"
21ROBOROCK_S6_PURE = "roborock.vacuum.a08"
22ROBOROCK_T7 = "roborock.vacuum.a11"  # cn s7
23ROBOROCK_T7S = "roborock.vacuum.a14"
24ROBOROCK_T7SPLUS = "roborock.vacuum.a23"
25ROBOROCK_S7_MAXV = "roborock.vacuum.a27"
26ROBOROCK_S7_MAXV_ULTRA = "roborock.vacuum.a65"
27ROBOROCK_S7_PRO_ULTRA = "roborock.vacuum.a62"
28ROBOROCK_Q5 = "roborock.vacuum.a34"
29ROBOROCK_Q5_PRO = "roborock.vacuum.a72"
30ROBOROCK_Q7 = "roborock.vacuum.a40"
31ROBOROCK_Q7_MAX = "roborock.vacuum.a38"
32ROBOROCK_Q7PLUS = "roborock.vacuum.a40"
33ROBOROCK_QREVO_MASTER = "roborock.vacuum.a117"
34ROBOROCK_QREVO_CURV = "roborock.vacuum.a135"
35ROBOROCK_Q8_MAX = "roborock.vacuum.a73"
36ROBOROCK_G10S_PRO = "roborock.vacuum.a26"
37ROBOROCK_G20S_Ultra = "roborock.vacuum.a143"  # cn saros_r10
38ROBOROCK_G10S = "roborock.vacuum.a46"
39ROBOROCK_G10 = "roborock.vacuum.a29"
40ROCKROBO_G10_SG = "roborock.vacuum.a30"  # Variant of the G10, has similar features as S7
41ROBOROCK_S7 = "roborock.vacuum.a15"
42ROBOROCK_S6_MAXV = "roborock.vacuum.a10"
43ROBOROCK_E2 = "roborock.vacuum.e2"
44ROBOROCK_1S = "roborock.vacuum.m1s"
45ROBOROCK_C1 = "roborock.vacuum.c1"
46ROBOROCK_S8_PRO_ULTRA = "roborock.vacuum.a70"
47ROBOROCK_S8 = "roborock.vacuum.a51"
48ROBOROCK_P10 = "roborock.vacuum.a75"  # also known as q_revo
49ROBOROCK_S8_MAXV_ULTRA = "roborock.vacuum.a97"
50ROBOROCK_QREVO_S = "roborock.vacuum.a104"
51ROBOROCK_QREVO_PRO = "roborock.vacuum.a101"
52ROBOROCK_QREVO_MAXV = "roborock.vacuum.a87"
53ROBOROCK_SAROS_10R = "roborock.vacuum.a144"
54ROBOROCK_SAROS_10 = "roborock.vacuum.a147"
55
56ROBOROCK_DYAD_AIR = "roborock.wetdryvac.a107"
57ROBOROCK_DYAD_PRO_COMBO = "roborock.wetdryvac.a83"
58ROBOROCK_DYAD_PRO = "roborock.wetdryvac.a56"
59
60# These are the devices that show up when you add a device - more could be supported and just not show up
61SUPPORTED_VACUUMS = [
62    ROBOROCK_G10,
63    ROBOROCK_G10S_PRO,
64    ROBOROCK_G20S_Ultra,
65    ROBOROCK_Q5,
66    ROBOROCK_Q7,
67    ROBOROCK_Q7_MAX,
68    ROBOROCK_S4,
69    ROBOROCK_S5_MAX,
70    ROBOROCK_S6,
71    ROBOROCK_S6_MAXV,
72    ROBOROCK_S6_PURE,
73    ROBOROCK_S7_MAXV,
74    ROBOROCK_S8_PRO_ULTRA,
75    ROBOROCK_S8,
76    ROBOROCK_S4_MAX,
77    ROBOROCK_S7,
78    ROBOROCK_P10,
79    ROCKROBO_G10_SG,
80]
81
82NO_MAP = 63
MAIN_BRUSH_REPLACE_TIME = 1080000
SIDE_BRUSH_REPLACE_TIME = 720000
FILTER_REPLACE_TIME = 540000
SENSOR_DIRTY_REPLACE_TIME = 108000
MOP_ROLLER_REPLACE_TIME = 1080000
STRAINER_REPLACE_TIME = 150
CLEANING_BRUSH_REPLACE_TIME = 300
DUST_COLLECTION_REPLACE_TIME = 90
FLOOR_CLEANER_REPLACE_TIME = 300
ROBOROCK_V1 = 'ROBOROCK.vacuum.v1'
ROBOROCK_S4 = 'roborock.vacuum.s4'
ROBOROCK_S4_MAX = 'roborock.vacuum.a19'
ROBOROCK_S5 = 'roborock.vacuum.s5'
ROBOROCK_S5_MAX = 'roborock.vacuum.s5e'
ROBOROCK_S6 = 'roborock.vacuum.s6'
ROBOROCK_T6 = 'roborock.vacuum.t6'
ROBOROCK_E4 = 'roborock.vacuum.a01'
ROBOROCK_S6_PURE = 'roborock.vacuum.a08'
ROBOROCK_T7 = 'roborock.vacuum.a11'
ROBOROCK_T7S = 'roborock.vacuum.a14'
ROBOROCK_T7SPLUS = 'roborock.vacuum.a23'
ROBOROCK_S7_MAXV = 'roborock.vacuum.a27'
ROBOROCK_S7_MAXV_ULTRA = 'roborock.vacuum.a65'
ROBOROCK_S7_PRO_ULTRA = 'roborock.vacuum.a62'
ROBOROCK_Q5 = 'roborock.vacuum.a34'
ROBOROCK_Q5_PRO = 'roborock.vacuum.a72'
ROBOROCK_Q7 = 'roborock.vacuum.a40'
ROBOROCK_Q7_MAX = 'roborock.vacuum.a38'
ROBOROCK_Q7PLUS = 'roborock.vacuum.a40'
ROBOROCK_QREVO_MASTER = 'roborock.vacuum.a117'
ROBOROCK_QREVO_CURV = 'roborock.vacuum.a135'
ROBOROCK_Q8_MAX = 'roborock.vacuum.a73'
ROBOROCK_G10S_PRO = 'roborock.vacuum.a26'
ROBOROCK_G20S_Ultra = 'roborock.vacuum.a143'
ROBOROCK_G10S = 'roborock.vacuum.a46'
ROBOROCK_G10 = 'roborock.vacuum.a29'
ROCKROBO_G10_SG = 'roborock.vacuum.a30'
ROBOROCK_S7 = 'roborock.vacuum.a15'
ROBOROCK_S6_MAXV = 'roborock.vacuum.a10'
ROBOROCK_E2 = 'roborock.vacuum.e2'
ROBOROCK_1S = 'roborock.vacuum.m1s'
ROBOROCK_C1 = 'roborock.vacuum.c1'
ROBOROCK_S8_PRO_ULTRA = 'roborock.vacuum.a70'
ROBOROCK_S8 = 'roborock.vacuum.a51'
ROBOROCK_P10 = 'roborock.vacuum.a75'
ROBOROCK_S8_MAXV_ULTRA = 'roborock.vacuum.a97'
ROBOROCK_QREVO_S = 'roborock.vacuum.a104'
ROBOROCK_QREVO_PRO = 'roborock.vacuum.a101'
ROBOROCK_QREVO_MAXV = 'roborock.vacuum.a87'
ROBOROCK_SAROS_10R = 'roborock.vacuum.a144'
ROBOROCK_SAROS_10 = 'roborock.vacuum.a147'
ROBOROCK_DYAD_AIR = 'roborock.wetdryvac.a107'
ROBOROCK_DYAD_PRO_COMBO = 'roborock.wetdryvac.a83'
ROBOROCK_DYAD_PRO = 'roborock.wetdryvac.a56'
SUPPORTED_VACUUMS = ['roborock.vacuum.a29', 'roborock.vacuum.a26', 'roborock.vacuum.a143', 'roborock.vacuum.a34', 'roborock.vacuum.a40', 'roborock.vacuum.a38', 'roborock.vacuum.s4', 'roborock.vacuum.s5e', 'roborock.vacuum.s6', 'roborock.vacuum.a10', 'roborock.vacuum.a08', 'roborock.vacuum.a27', 'roborock.vacuum.a70', 'roborock.vacuum.a51', 'roborock.vacuum.a19', 'roborock.vacuum.a15', 'roborock.vacuum.a75', 'roborock.vacuum.a30']
NO_MAP = 63