Skip to content

Commit 136401b

Browse files
authored
Merge pull request #1587 from Johnnybyzhang/master
Support for Scene Mesh one/two/three key V2S version
2 parents a1542b4 + db493e7 commit 136401b

File tree

1 file changed

+66
-0
lines changed

1 file changed

+66
-0
lines changed

custom_components/xiaomi_gateway3/core/devices.py

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4294,6 +4294,72 @@
42944294
MathConv("voltage", "sensor", mi="3.p.3", multiply=0.1),
42954295
MathConv("power", "sensor", mi="3.p.6", multiply=1),
42964296
],
4297+
}, {
4298+
# https://home.miot-spec.com/spec/lemesh.switch.sw3g03
4299+
19093: ["LeMesh", "Scene Mesh three key V2S version", "lemesh.switch.sw3g03"],
4300+
"spec": [
4301+
BaseConv("channel_1", "switch", mi="2.p.1"),
4302+
BaseConv("channel_2", "switch", mi="3.p.1"),
4303+
BaseConv("channel_3", "switch", mi="4.p.1"),
4304+
# MapConv("wireless_1", "select", mi="2.p.2", map={0: "Wired And Wireless", 1: "Wireless"}), # config
4305+
# MapConv("wireless_2", "select", mi="3.p.2", map={0: "Wired And Wireless", 1: "Wireless"}), # config
4306+
# MapConv("wireless_3", "select", mi="4.p.2", map={0: "Wired And Wireless", 1: "Wireless"}), # config
4307+
MapConv("power_on_state_1", "select", mi="2.p.5", map={1: "On", 2: "Off", 3: "Default"}), # config
4308+
MapConv("power_on_state_2", "select", mi="3.p.5", map={1: "On", 2: "Off", 3: "Default"}), # config
4309+
MapConv("power_on_state_3", "select", mi="4.p.5", map={1: "On", 2: "Off", 3: "Default"}), # config
4310+
# MapConv("wireless_2_1", "select", mi="2.p.6", map={0: "default", 1: "Wireless", 2: "Wireless", 3: "Wireless"}), # config
4311+
# MapConv("wireless_2_2", "select", mi="3.p.6", map={0: "default", 1: "Wireless", 2: "Wireless", 3: "Wireless"}), # config
4312+
# MapConv("wireless_2_3", "select", mi="4.p.6", map={0: "default", 1: "Wireless", 2: "Wireless", 3: "Wireless"}), # config
4313+
MapConv("scene_speed", "select", mi="12.p.1", map={1: "Top Speed", 2:"Standard"}), #config
4314+
BaseConv("led", "switch", mi="11.p.1"), # config
4315+
BaseConv("action", "sensor", entity=ENTITY_DISABLED),
4316+
ConstConv("action", mi="5.e.1", value=BUTTON_1_SINGLE),
4317+
ConstConv("action", mi="5.e.2", value=BUTTON_1_DOUBLE),
4318+
ConstConv("action", mi="5.e.3", value=BUTTON_1_HOLD),
4319+
ConstConv("action", mi="6.e.1", value=BUTTON_2_SINGLE),
4320+
ConstConv("action", mi="6.e.2", value=BUTTON_2_DOUBLE),
4321+
ConstConv("action", mi="6.e.3", value=BUTTON_2_HOLD),
4322+
ConstConv("action", mi="7.e.1", value=BUTTON_3_SINGLE),
4323+
ConstConv("action", mi="7.e.2", value=BUTTON_3_DOUBLE),
4324+
ConstConv("action", mi="7.e.3", value=BUTTON_3_HOLD),
4325+
],
4326+
}, {
4327+
# https://home.miot-spec.com/spec/lemesh.switch.sw3g02
4328+
19815: ["LeMesh", "Scene Mesh two key V2S version", "lemesh.switch.sw3g02"],
4329+
"spec": [
4330+
BaseConv("channel_1", "switch", mi="2.p.1"),
4331+
BaseConv("channel_2", "switch", mi="3.p.1"),
4332+
# MapConv("wireless_1", "select", mi="2.p.2", map={0: "Wired And Wireless", 1: "Wireless"}), # config
4333+
# MapConv("wireless_2", "select", mi="3.p.2", map={0: "Wired And Wireless", 1: "Wireless"}), # config
4334+
MapConv("power_on_state_1", "select", mi="2.p.5", map={1: "On", 2: "Off", 3: "Default"}), # config
4335+
MapConv("power_on_state_2", "select", mi="3.p.5", map={1: "On", 2: "Off", 3: "Default"}), # config
4336+
# MapConv("wireless_2_1", "select", mi="2.p.6", map={0: "default", 1: "Wireless", 2: "Wireless", 3: "Wireless"}), # config
4337+
# MapConv("wireless_2_2", "select", mi="3.p.6", map={0: "default", 1: "Wireless", 2: "Wireless", 3: "Wireless"}), # config
4338+
MapConv("scene_speed", "select", mi="12.p.1", map={1: "Top Speed", 2:"Standard"}), #config
4339+
BaseConv("led", "switch", mi="11.p.1"), # config
4340+
BaseConv("action", "sensor", entity=ENTITY_DISABLED),
4341+
ConstConv("action", mi="5.e.1", value=BUTTON_1_SINGLE),
4342+
ConstConv("action", mi="5.e.2", value=BUTTON_1_DOUBLE),
4343+
ConstConv("action", mi="5.e.3", value=BUTTON_1_HOLD),
4344+
ConstConv("action", mi="6.e.1", value=BUTTON_2_SINGLE),
4345+
ConstConv("action", mi="6.e.2", value=BUTTON_2_DOUBLE),
4346+
ConstConv("action", mi="6.e.3", value=BUTTON_2_HOLD),
4347+
],
4348+
}, {
4349+
# https://home.miot-spec.com/spec/lemesh.switch.sw3g01
4350+
19816: ["LeMesh", "Scene Mesh one key V2S version", "lemesh.switch.sw3g01"],
4351+
"spec": [
4352+
BaseConv("channel", "switch", mi="2.p.1"),
4353+
# MapConv("wireless_1", "select", mi="2.p.2", map={0: "Wired And Wireless", 1: "Wireless"}), # config
4354+
MapConv("power_on_state", "select", mi="2.p.5", map={1: "On", 2: "Off", 3: "Default"}), # config
4355+
# MapConv("wireless_2_1", "select", mi="2.p.6", map={0: "default", 1: "Wireless", 2: "Wireless", 3: "Wireless"}), # config
4356+
MapConv("scene_speed", "select", mi="12.p.1", map={1: "Top Speed", 2:"Standard"}), #config
4357+
BaseConv("led", "switch", mi="11.p.1"), # config
4358+
BaseConv("action", "sensor", entity=ENTITY_DISABLED),
4359+
ConstConv("action", mi="5.e.1", value=BUTTON_1_SINGLE),
4360+
ConstConv("action", mi="5.e.2", value=BUTTON_1_DOUBLE),
4361+
ConstConv("action", mi="5.e.3", value=BUTTON_1_HOLD),
4362+
],
42974363
}, {
42984364
"default": "mesh", # default Mesh device
42994365
"spec": [

0 commit comments

Comments
 (0)