灯光分区
partition 灯光平台允许您将多个可寻址灯光段(如 Fastled 或 Neopixelbus)和/或单个灯(如 Rgb)组合成一个单独的可寻址灯光。此平台还允许将一个可寻址灯光拆分为多个段,以便可以单独控制各个段。
拆分单个 LED 灯带
Section titled “拆分单个 LED 灯带”如果您想拆分灯带,可能会遇到奇怪的行为,例如原始灯光实体(例如 fastled_clockless)可能与分区冲突。为了更好地控制灯带的哪些段会相互重叠,请将原始 light 标记为 internal: true。
# 配置示例light: - platform: partition name: "Partition Light 1" segments: # 使用 ID 为 light1 的灯的前 10 个 LED - id: light1 from: 0 to: 9
- platform: partition name: "Partition Light 2" segments: # 使用 ID 为 light1 的灯的第 11-20 个 LED - id: light1 from: 10 to: 19
# 灯段来源示例 - platform: fastled_clockless id: light1 # 您可能需要(但不需要)这个 internal: true # 其他设置将多个 LED 灯合并为一个
Section titled “将多个 LED 灯合并为一个”# 配置示例light: - platform: partition name: "Partition Light" segments: # 使用 ID 为 light1 的灯的前 10 个 LED - id: light1 from: 0 to: 9 # 使用 ID 为 light2 的灯的前 10 个 LED # 它们成为合并分区中的第 11-20 个 LED - id: light2 from: 0 to: 9 # 使用 light3 作为分区中的第 21 个灯 - single_light_id: light3
# 灯段来源示例 - platform: fastled_clockless id: light1 # 您可能需要(但不需要)这个 internal: true # 其他设置
# 灯段来源示例 - platform: fastled_clockless id: light2 # 您可能需要(但不需要)这个 internal: true # 其他设置
# 非可寻址灯源示例 - platform: rgb id: light3 # 您可能需要(但不需要)这个 internal: true # 其他设置-
segments (必需, 列表): 包含在此分区中的段列表。
对于可寻址段:
-
id (必需, ID): 要由此段控制的可寻址灯光的 ID。
-
from (必需, 整数): 段中要寻址的第一个 LED 的索引。计数从 0 开始,所以第一个 LED 是 0。
-
to (必需, 整数): 此段中要寻址的最后一个 LED 的索引。
-
reversed (可选, 布尔值): 是否反转此段中 LED 的顺序。默认为
false。
对于单灯段:
- single_light_id (必需, ID): 单个可寻址或不可寻址灯光的 ID。如果指定了可寻址灯光,它将在分区中作为单个灯光处理。
-
-
所有其他选项来自灯光组件。
NOTE
不要使用此平台来控制可寻址灯光上的每个 LED —— 灯光对象有一定的开销,如果您尝试创建许多灯光,很快就会耗尽内存。
有关此用途,请参见 light.addressable_set 动作。