Skip to content

Commit a189937

Browse files
authored
Merge pull request #1593 from seanyan1994/master
Add Linptech Wall Switch T1, fix linp.remote.k9b11 statement, and improve linp.magnet.m1 behavior
2 parents 136401b + 357dc53 commit a189937

File tree

1 file changed

+58
-2
lines changed

1 file changed

+58
-2
lines changed

custom_components/xiaomi_gateway3/core/devices.py

Lines changed: 58 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1557,7 +1557,7 @@
15571557
5481: ["Linptech", "Wireless Button", "linp.remote.k9b11"],
15581558
"spec": [
15591559
# mibeacon2 spec
1560-
BLEMapConv("action", "sensor", mi=4097, map={"000000": BUTTON_1_SINGLE, "000001": BUTTON_1_DOUBLE, "000002": BUTTON_1_HOLD, "010000": BUTTON_2_SINGLE, "010001": BUTTON_2_DOUBLE, "010002": BUTTON_2_HOLD}),
1560+
BLEMapConv("action", "sensor", mi=4097, map={"000000": BUTTON_1_SINGLE, "000001": BUTTON_1_HOLD, "000002": BUTTON_1_DOUBLE, "010000": BUTTON_2_SINGLE, "010001": BUTTON_2_HOLD, "010002": BUTTON_2_DOUBLE}),
15611561
BLEByteConv("battery", "sensor", mi=18435, entity=ENTITY_LAZY), # uint8
15621562
# miot spec
15631563
ConstConv("action", mi="2.e.1", value=BUTTON_1_SINGLE),
@@ -1817,7 +1817,9 @@
18171817
}, {
18181818
6281: ["Linptech", "Door/Window Sensor", "MS1BB", "linp.magnet.m1"],
18191819
"spec": [
1820-
MapConv("contact", "binary_sensor", mi="2.p.1004", map={1: True, 2: False}),
1820+
MapConv("contact", "binary_sensor", mi="2.e.1018.p.1004", map={1: True, 2: False}),
1821+
BaseConv("action", "sensor"),
1822+
ConstConv("action", mi="2.e.1019.p.1004", value=BUTTON_SINGLE),
18211823
BaseConv("battery", "sensor", mi="3.p.1003"),
18221824
],
18231825
# "ttl": "60m",
@@ -3187,6 +3189,60 @@
31873189
ConstConv("action", mi="7.e.3", value=BUTTON_3_SINGLE),
31883190
BaseConv("led", "switch", mi="5.p.1"),
31893191
],
3192+
}, {
3193+
23308: ["Linptech", "Single Wall Switch T1", "linp.switch.t2dbw1"],
3194+
"spec": [
3195+
BaseConv("switch", "switch", mi="2.p.1"),
3196+
MapConv("mode", "select", mi="2.p.2", map={0: "Wired And Wireless", 1: "Wireless"}),
3197+
BaseConv("action", "sensor"),
3198+
ConstConv("action", mi="5.e.1", value=BUTTON_1_SINGLE),
3199+
ConstConv("action", mi="5.e.2", value=BUTTON_1_DOUBLE),
3200+
ConstConv("action", mi="5.e.3", value=BUTTON_1_HOLD),
3201+
BaseConv("led", "switch", mi="8.p.1"),
3202+
MathConv("brightness_white", "number", mi="10.p.3", min=0, max=100, entity=ENTITY_CONFIG),
3203+
MathConv("brightness_orange", "number", mi="10.p.4", min=0, max=100, entity=ENTITY_CONFIG),
3204+
],
3205+
}, {
3206+
23309: ["Linptech", "Double Wall Switch T1", "linp.switch.t2dbw2"],
3207+
"spec": [
3208+
BaseConv("switch_1", "switch", mi="2.p.1"),
3209+
BaseConv("switch_2", "switch", mi="3.p.1"),
3210+
MapConv("mode_1", "select", mi="2.p.2", map={0: "Wired And Wireless", 1: "Wireless"}),
3211+
MapConv("mode_2", "select", mi="3.p.2", map={0: "Wired And Wireless", 1: "Wireless"}),
3212+
BaseConv("action", "sensor"),
3213+
ConstConv("action", mi="5.e.1", value=BUTTON_1_SINGLE),
3214+
ConstConv("action", mi="5.e.2", value=BUTTON_1_DOUBLE),
3215+
ConstConv("action", mi="5.e.3", value=BUTTON_1_HOLD),
3216+
ConstConv("action", mi="6.e.1", value=BUTTON_2_SINGLE),
3217+
ConstConv("action", mi="6.e.2", value=BUTTON_2_DOUBLE),
3218+
ConstConv("action", mi="6.e.3", value=BUTTON_2_HOLD),
3219+
BaseConv("led", "switch", mi="8.p.1"),
3220+
MathConv("brightness_white", "number", mi="10.p.3", min=0, max=100, entity=ENTITY_CONFIG),
3221+
MathConv("brightness_orange", "number", mi="10.p.4", min=0, max=100, entity=ENTITY_CONFIG),
3222+
],
3223+
}, {
3224+
23310: ["Linptech", "Triple Wall Switch T1", "linp.switch.t2dbw3"],
3225+
"spec": [
3226+
BaseConv("switch_1", "switch", mi="2.p.1"),
3227+
BaseConv("switch_2", "switch", mi="3.p.1"),
3228+
BaseConv("switch_3", "switch", mi="4.p.1"),
3229+
MapConv("mode_1", "select", mi="2.p.2", map={0: "Wired And Wireless", 1: "Wireless"}),
3230+
MapConv("mode_2", "select", mi="3.p.2", map={0: "Wired And Wireless", 1: "Wireless"}),
3231+
MapConv("mode_3", "select", mi="4.p.2", map={0: "Wired And Wireless", 1: "Wireless"}),
3232+
BaseConv("action", "sensor"),
3233+
ConstConv("action", mi="5.e.1", value=BUTTON_1_SINGLE),
3234+
ConstConv("action", mi="5.e.2", value=BUTTON_1_DOUBLE),
3235+
ConstConv("action", mi="5.e.3", value=BUTTON_1_HOLD),
3236+
ConstConv("action", mi="6.e.1", value=BUTTON_2_SINGLE),
3237+
ConstConv("action", mi="6.e.2", value=BUTTON_2_DOUBLE),
3238+
ConstConv("action", mi="6.e.3", value=BUTTON_2_HOLD),
3239+
ConstConv("action", mi="7.e.1", value=BUTTON_3_SINGLE),
3240+
ConstConv("action", mi="7.e.2", value=BUTTON_3_DOUBLE),
3241+
ConstConv("action", mi="7.e.3", value=BUTTON_3_HOLD),
3242+
BaseConv("led", "switch", mi="8.p.1"),
3243+
MathConv("brightness_white", "number", mi="10.p.3", min=0, max=100, entity=ENTITY_CONFIG),
3244+
MathConv("brightness_orange", "number", mi="10.p.4", min=0, max=100, entity=ENTITY_CONFIG),
3245+
],
31903246
}, {
31913247
1350: ["Chuangmi", "Single Wall Switch K1-A (with N)", "chuangmi.switch.mesh"],
31923248
"spec": [

0 commit comments

Comments
 (0)