led: Support automated LED updates based on display_template results

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
Kevin O'Connor
2022-03-23 18:06:09 -04:00
parent a6ab56c0a6
commit 1ab3ac39e4
3 changed files with 126 additions and 10 deletions

View File

@@ -714,6 +714,23 @@ timeout. If careful timing is not needed, the optional SYNC=0
parameter can be specified to apply the changes without resetting the
idle timeout.
#### SET_LED_TEMPLATE
`SET_LED_TEMPLATE LED=<led_name> TEMPLATE=<template_name>
[INDEX=<index>]`: Assign a
[display_template](Config_Reference.md#display_template) to a given
[LED](Config_Reference.md#leds). For example, if one defined a
`[display_template my_led_template]` config section then one could
assign `TEMPLATE=my_led_template` here. The display_template should
produce a comma separated string containing four floating point
numbers corresponding to red, green, blue, and white color settings.
The template will be continuously evaluated and the LED will be
automatically set to the resulting colors. If INDEX is not specified
then all chips in the LED's daisy-chain will be set to the template,
otherwise only the chip with the given index will be updated. If
TEMPLATE is an empty string then this command will clear any previous
template assigned to the LED (one can then use `SET_LED` commands to
manage the LED's color settings).
### [output_pin]
The following command is available when an