找回密码
 立即注册

微信扫码登录

搜索
查看: 60|回复: 1

[技术探讨] 能帮我看看 这段代码正确吗? 我加入后面的ptx 代码后,前面的方舟鱼灯都不能用了?

[复制链接]
20 金钱 回复本帖可获得 20 金钱奖励! 每人限 1 次(中奖概率 50%)

6

主题

357

回帖

2202

积分

金牌会员

积分
2202
金钱
1839
HASS币
0
发表于 5 小时前 | 显示全部楼层 |阅读模式
from custom_components.xiaomi_gateway3.core.devices import *

DEVICES = [{
    23527: ["FZY", "Flat Panel Light With Occupancy-Sensor", "line.light.frcpbd"],
    "spec": [
        BaseConv("Switch", "switch", mi="2.p.1"),
        MathConv("Brightness", "number", mi="2.p.2", multiply=1, min=0, max=100, entity=ENTITY_CONFIG),
        MapConv("occupancy_status", "sensor", mi="4.p.1", map={0: "No_One", 1: "Has_One", 2: "No_Sensor"}),
        BaseConv("illuminance", "sensor", mi="4.p.5"),
        ],
        
        
        
    26686: ["PTXPRO", "K1 Pro Smart Panel", "090615.switch.ptxpro"],
    "spec": [
        # --- 0. 动作传感器 (汇总所有事件) ---
        BaseConv("action", "sensor"),
        # 物理按键事件
        ConstConv("action", mi="5.e.1", value="button_1_single"),
        ConstConv("action", mi="6.e.1", value="button_2_single"),
        ConstConv("action", mi="7.e.1", value="button_3_single"),
        # 灯光事件 (Toggle, Brightness Up/Down, ColorTemp Up/Down)
        ConstConv("action", mi="10.e.1", value="light_1_toggle"),
        ConstConv("action", mi="10.e.7", value="light_1_br_up"),
        ConstConv("action", mi="10.e.8", value="light_1_br_down"),
        ConstConv("action", mi="10.e.12", value="light_1_ct_down"),
        ConstConv("action", mi="10.e.13", value="light_1_ct_up"),
        
        ConstConv("action", mi="11.e.1", value="light_2_toggle"),
        ConstConv("action", mi="12.e.1", value="light_3_toggle"),
        
        # 窗帘事件 (Motion Toggle)
        ConstConv("action", mi="14.e.2", value="curtain_1_toggle"),
        ConstConv("action", mi="15.e.2", value="curtain_2_toggle"),
        ConstConv("action", mi="16.e.2", value="curtain_3_toggle"),
        ConstConv("action", mi="17.e.2", value="curtain_4_toggle"),

        # --- 1. 三路基础开关 (Relay) ---
        BaseConv("switch_1", "switch", mi="2.1"),
        BaseConv("switch_2", "switch", mi="3.1"),
        BaseConv("switch_3", "switch", mi="4.1"),
        MapConv("mode_1", "select", mi="2.2", map={0: "Wired", 1: "Wireless"}),
        MapConv("mode_2", "select", mi="3.2", map={0: "Wired", 1: "Wireless"}),
        MapConv("mode_3", "select", mi="4.2", map={0: "Wired", 1: "Wireless"}),

        # --- 2. 四路灯光通道 (SIID 10-13) ---
        # Light 1
        BaseConv("light_1", "light", mi="10.1"),
        BrightnessConv("brightness_1", parent="light_1", mi="10.3"),
        ColorTempConv("color_temp_1", parent="light_1", mi="10.5", min=2700, max=6500),

        # Light 2
        BaseConv("light_2", "light", mi="11.1"),
        BrightnessConv("brightness_2", parent="light_2", mi="11.3"),
        ColorTempConv("color_temp_2", parent="light_2", mi="11.5", min=2700, max=6500),

        # Light 3
        BaseConv("light_3", "light", mi="12.1"),
        BrightnessConv("brightness_3", parent="light_3", mi="12.3"),
        ColorTempConv("color_temp_3", parent="light_3", mi="12.5", min=2700, max=6500),

        # Light 4 (彩色)
        BaseConv("light_4", "light", mi="13.1"),
        BrightnessConv("brightness_4", parent="light_4", mi="13.3"),

        # --- 3. 四路窗帘通道 (SIID 14-17) ---
        # Curtain 1
        MapConv("curtain_1", "cover", mi="14.1", map={0: "stop", 1: "open", 2: "close"}),
        BaseConv("curtain_1_pos", "number", parent="curtain_1", mi="14.6", min=0, max=100),
        MapConv("curtain_1_status", "sensor", parent="curtain_1", mi="14.3", map={0: "stopped", 1: "opening", 2: "closing"}),

        # Curtain 2
        MapConv("curtain_2", "cover", mi="15.1", map={0: "stop", 1: "open", 2: "close"}),
        BaseConv("curtain_2_pos", "number", parent="curtain_2", mi="15.6", min=0, max=100),

        # Curtain 3
        MapConv("curtain_3", "cover", mi="16.1", map={0: "stop", 1: "open", 2: "close"}),
        BaseConv("curtain_3_pos", "number", parent="curtain_3", mi="16.6", min=0, max=100),

        # Curtain 4
        MapConv("curtain_4", "cover", mi="17.1", map={0: "stop", 1: "open", 2: "close"}),
        BaseConv("curtain_4_pos", "number", parent="curtain_4", mi="17.6", min=0, max=100),
    ],
}] + DEVICES

回复

使用道具 举报

41

主题

280

回帖

2473

积分

论坛UI达人

积分
2473
金钱
2147
HASS币
60
发表于 2 小时前 | 显示全部楼层
格式不对,要么中间加}, { 分开,要么每个id独立DEVICES = [{

from custom_components.xiaomi_gateway3.core.devices import *

DEVICES = [{
    23527: ["FZY", "Flat Panel Light With Occupancy-Sensor", "line.light.frcpbd"],
    "spec": [
        BaseConv("Switch", "switch", mi="2.p.1"),
        MathConv("Brightness", "number", mi="2.p.2", multiply=1, min=0, max=100, entity=ENTITY_CONFIG),
        MapConv("occupancy_status", "sensor", mi="4.p.1", map={0: "No_One", 1: "Has_One", 2: "No_Sensor"}),
        BaseConv("illuminance", "sensor", mi="4.p.5"),
        ],       
}, {              
    26686: ["PTXPRO", "K1 Pro Smart Panel", "090615.switch.ptxpro"],
    "spec": [
        # --- 0. 动作传感器 (汇总所有事件) ---
        BaseConv("action", "sensor"),
        # 物理按键事件
        ConstConv("action", mi="5.e.1", value="button_1_single"),
        ConstConv("action", mi="6.e.1", value="button_2_single"),
        ConstConv("action", mi="7.e.1", value="button_3_single"),
        # 灯光事件 (Toggle, Brightness Up/Down, ColorTemp Up/Down)
        ConstConv("action", mi="10.e.1", value="light_1_toggle"),
        ConstConv("action", mi="10.e.7", value="light_1_br_up"),
        ConstConv("action", mi="10.e.8", value="light_1_br_down"),
        ConstConv("action", mi="10.e.12", value="light_1_ct_down"),
        ConstConv("action", mi="10.e.13", value="light_1_ct_up"),
        
        ConstConv("action", mi="11.e.1", value="light_2_toggle"),
        ConstConv("action", mi="12.e.1", value="light_3_toggle"),
        
        # 窗帘事件 (Motion Toggle)
        ConstConv("action", mi="14.e.2", value="curtain_1_toggle"),
        ConstConv("action", mi="15.e.2", value="curtain_2_toggle"),
        ConstConv("action", mi="16.e.2", value="curtain_3_toggle"),
        ConstConv("action", mi="17.e.2", value="curtain_4_toggle"),

        # --- 1. 三路基础开关 (Relay) ---
        BaseConv("switch_1", "switch", mi="2.1"),
        BaseConv("switch_2", "switch", mi="3.1"),
        BaseConv("switch_3", "switch", mi="4.1"),
        MapConv("mode_1", "select", mi="2.2", map={0: "Wired", 1: "Wireless"}),
        MapConv("mode_2", "select", mi="3.2", map={0: "Wired", 1: "Wireless"}),
        MapConv("mode_3", "select", mi="4.2", map={0: "Wired", 1: "Wireless"}),

        # --- 2. 四路灯光通道 (SIID 10-13) ---
        # Light 1
        BaseConv("light_1", "light", mi="10.1"),
        BrightnessConv("brightness_1", parent="light_1", mi="10.3"),
        ColorTempConv("color_temp_1", parent="light_1", mi="10.5", min=2700, max=6500),

        # Light 2
        BaseConv("light_2", "light", mi="11.1"),
        BrightnessConv("brightness_2", parent="light_2", mi="11.3"),
        ColorTempConv("color_temp_2", parent="light_2", mi="11.5", min=2700, max=6500),

        # Light 3
        BaseConv("light_3", "light", mi="12.1"),
        BrightnessConv("brightness_3", parent="light_3", mi="12.3"),
        ColorTempConv("color_temp_3", parent="light_3", mi="12.5", min=2700, max=6500),

        # Light 4 (彩色)
        BaseConv("light_4", "light", mi="13.1"),
        BrightnessConv("brightness_4", parent="light_4", mi="13.3"),

        # --- 3. 四路窗帘通道 (SIID 14-17) ---
        # Curtain 1
        MapConv("curtain_1", "cover", mi="14.1", map={0: "stop", 1: "open", 2: "close"}),
        BaseConv("curtain_1_pos", "number", parent="curtain_1", mi="14.6", min=0, max=100),
        MapConv("curtain_1_status", "sensor", parent="curtain_1", mi="14.3", map={0: "stopped", 1: "opening", 2: "closing"}),

        # Curtain 2
        MapConv("curtain_2", "cover", mi="15.1", map={0: "stop", 1: "open", 2: "close"}),
        BaseConv("curtain_2_pos", "number", parent="curtain_2", mi="15.6", min=0, max=100),

        # Curtain 3
        MapConv("curtain_3", "cover", mi="16.1", map={0: "stop", 1: "open", 2: "close"}),
        BaseConv("curtain_3_pos", "number", parent="curtain_3", mi="16.6", min=0, max=100),

        # Curtain 4
        MapConv("curtain_4", "cover", mi="17.1", map={0: "stop", 1: "open", 2: "close"}),
        BaseConv("curtain_4_pos", "number", parent="curtain_4", mi="17.6", min=0, max=100),
    ],
}] + DEVICES
from custom_components.xiaomi_gateway3.core.devices import *

DEVICES = [{
    12135: ["Linptech", "Double Wall Switch QE1", "linp.switch.wq4db2"],
    "spec": [
        BaseConv("Switch", "switch", mi="2.p.1"),
        MathConv("Brightness", "number", mi="2.p.2", multiply=1, min=0, max=100, entity=ENTITY_CONFIG),
        MapConv("occupancy_status", "sensor", mi="4.p.1", map={0: "No_One", 1: "Has_One", 2: "No_Sensor"}),
        BaseConv("illuminance", "sensor", mi="4.p.5"),
    ],
}] + DEVICES     

DEVICES = [{
    26686: ["PTXPRO", "K1 Pro Smart Panel", "090615.switch.ptxpro"],
    "spec": [
        # --- 0. 动作传感器 (汇总所有事件) ---
        BaseConv("action", "sensor"),
        # 物理按键事件
        ConstConv("action", mi="5.e.1", value="button_1_single"),
        ConstConv("action", mi="6.e.1", value="button_2_single"),
        ConstConv("action", mi="7.e.1", value="button_3_single"),
        # 灯光事件 (Toggle, Brightness Up/Down, ColorTemp Up/Down)
        ConstConv("action", mi="10.e.1", value="light_1_toggle"),
        ConstConv("action", mi="10.e.7", value="light_1_br_up"),
        ConstConv("action", mi="10.e.8", value="light_1_br_down"),
        ConstConv("action", mi="10.e.12", value="light_1_ct_down"),
        ConstConv("action", mi="10.e.13", value="light_1_ct_up"),
        
        ConstConv("action", mi="11.e.1", value="light_2_toggle"),
        ConstConv("action", mi="12.e.1", value="light_3_toggle"),
        
        # 窗帘事件 (Motion Toggle)
        ConstConv("action", mi="14.e.2", value="curtain_1_toggle"),
        ConstConv("action", mi="15.e.2", value="curtain_2_toggle"),
        ConstConv("action", mi="16.e.2", value="curtain_3_toggle"),
        ConstConv("action", mi="17.e.2", value="curtain_4_toggle"),

        # --- 1. 三路基础开关 (Relay) ---
        BaseConv("switch_1", "switch", mi="2.1"),
        BaseConv("switch_2", "switch", mi="3.1"),
        BaseConv("switch_3", "switch", mi="4.1"),
        MapConv("mode_1", "select", mi="2.2", map={0: "Wired", 1: "Wireless"}),
        MapConv("mode_2", "select", mi="3.2", map={0: "Wired", 1: "Wireless"}),
        MapConv("mode_3", "select", mi="4.2", map={0: "Wired", 1: "Wireless"}),

        # --- 2. 四路灯光通道 (SIID 10-13) ---
        # Light 1
        BaseConv("light_1", "light", mi="10.1"),
        BrightnessConv("brightness_1", parent="light_1", mi="10.3"),
        ColorTempConv("color_temp_1", parent="light_1", mi="10.5", min=2700, max=6500),

        # Light 2
        BaseConv("light_2", "light", mi="11.1"),
        BrightnessConv("brightness_2", parent="light_2", mi="11.3"),
        ColorTempConv("color_temp_2", parent="light_2", mi="11.5", min=2700, max=6500),

        # Light 3
        BaseConv("light_3", "light", mi="12.1"),
        BrightnessConv("brightness_3", parent="light_3", mi="12.3"),
        ColorTempConv("color_temp_3", parent="light_3", mi="12.5", min=2700, max=6500),

        # Light 4 (彩色)
        BaseConv("light_4", "light", mi="13.1"),
        BrightnessConv("brightness_4", parent="light_4", mi="13.3"),

        # --- 3. 四路窗帘通道 (SIID 14-17) ---
        # Curtain 1
        MapConv("curtain_1", "cover", mi="14.1", map={0: "stop", 1: "open", 2: "close"}),
        BaseConv("curtain_1_pos", "number", parent="curtain_1", mi="14.6", min=0, max=100),
        MapConv("curtain_1_status", "sensor", parent="curtain_1", mi="14.3", map={0: "stopped", 1: "opening", 2: "closing"}),

        # Curtain 2
        MapConv("curtain_2", "cover", mi="15.1", map={0: "stop", 1: "open", 2: "close"}),
        BaseConv("curtain_2_pos", "number", parent="curtain_2", mi="15.6", min=0, max=100),

        # Curtain 3
        MapConv("curtain_3", "cover", mi="16.1", map={0: "stop", 1: "open", 2: "close"}),
        BaseConv("curtain_3_pos", "number", parent="curtain_3", mi="16.6", min=0, max=100),

        # Curtain 4
        MapConv("curtain_4", "cover", mi="17.1", map={0: "stop", 1: "open", 2: "close"}),
        BaseConv("curtain_4_pos", "number", parent="curtain_4", mi="17.6", min=0, max=100),
    ],
}] + DEVICES


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian ( 晋ICP备17001384号-1 )

GMT+8, 2025-12-22 16:40 , Processed in 1.289769 second(s), 6 queries , MemCached On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表