Attempt to revert/correct status LED based on old display code

This commit is contained in:
Zach Schimke 2021-08-29 00:24:12 -07:00
parent 2f6b0dd326
commit 6b78219c57
1 changed files with 40 additions and 21 deletions

View File

@ -39,11 +39,11 @@ variable_colors: { 'red': (1.0, 0.0, 0.0, 0.0),
variable_leds: [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]
gcode:
# Grab the color values
{% set tuple = colors.get(COLOR|lower, (0.0, 0.0, 0.0, 0.7)) %}
{% set R = tuple[0] %}
{% set G = tuple[1] %}
{% set B = tuple[2] %}
{% set W = tuple[3] %}
{% set RGBW = colors.get(COLOR|lower, (0.0, 0.0, 0.0, 0.7)) %}
{% set R = RGBW[0] %}
{% set G = RGBW[1] %}
{% set B = RGBW[2] %}
{% set W = RGBW[3] %}
{action_respond_info("LED Tuple: {0}".format(tuple))}
@ -83,34 +83,53 @@ gcode:
[gcode_macro _STATUS_LED]
default_parameter_BLINK: 0
variable_color: 'ORANGE'
variable_color: 'GREEN'
variable_restore: 'GREEN'
variable_index: 17
variable_blink: 0
variable_blinkNext: 0
gcode:
{% set var_color=printer["gcode_macro _STATUS_LED"].color %}
{% set var_color=printer["gcode_macro _STATUS_LED"].color %}
{% set var_restore=printer["gcode_macro _STATUS_LED"].restore %}
SET_GCODE_VARIABLE MACRO=_STATUS_LED VARIABLE=blink VALUE={BLINK}
UPDATE_DELAYED_GCODE ID=_STATUS_LED_BLINK_DELAY DURATION={BLINK|float}
UPDATE_DELAYED_GCODE ID=_BLINK_DELAY DURATION={BLINK|float}
SET_GCODE_VARIABLE MACRO=_STATUS_LED VARIABLE=restore VALUE='"{var_color}"'
{% if params.COLOR %}
#_SET_LEDS color={COLOR} index={var_index}
{% if params.COLOR == 'GREEN'%}
SET_GCODE_VARIABLE MACRO=_STATUS_LED VARIABLE=color VALUE='"GREEN"'
SET_LED LED=neo_leds RED=0 GREEN=0.3 BLUE=0 INDEX=17 TRANSMIT=1
{% elif params.COLOR == 'RED'%}
SET_GCODE_VARIABLE MACRO=_STATUS_LED VARIABLE=color VALUE='"RED"'
SET_LED LED=neo_leds RED=0.5 GREEN=0 BLUE=0 INDEX=17 TRANSMIT=1
{% elif params.COLOR == 'BLUE'%}
SET_GCODE_VARIABLE MACRO=_STATUS_LED VARIABLE=color VALUE='"BLUE"'
SET_LED LED=neo_leds RED=0 GREEN=0 BLUE=0.5 INDEX=17 TRANSMIT=1
{% else %}
#_SET_LEDS color={var_restore} index={var_index}
{% if var_restore == 'GREEN'%}
SET_GCODE_VARIABLE MACRO=_STATUS_LED VARIABLE=color VALUE='"GREEN"'
SET_LED LED=neo_leds RED=0 GREEN=0.3 BLUE=0 INDEX=17 TRANSMIT=1
{% elif var_restore == 'RED'%}
SET_GCODE_VARIABLE MACRO=_STATUS_LED VARIABLE=color VALUE='"RED"'
SET_LED LED=neo_leds RED=0.5 GREEN=0 BLUE=0 INDEX=17 TRANSMIT=1
{% elif var_restore == 'BLUE'%}
SET_GCODE_VARIABLE MACRO=_STATUS_LED VARIABLE=color VALUE='"BLUE"'
SET_LED LED=neo_leds RED=0 GREEN=0 BLUE=0.5 INDEX=17 TRANSMIT=1
{% endif %}
{% endif %}
[delayed_gcode _STATUS_LED_BLINK_DELAY]
variable_blank: 1
gcode:
{% set var_color=printer["gcode_macro _STATUS_LED"].color %}
{% if printer["gcode_macro _STATUS_LED"].blinkNext|int == 0 %}
SET_GCODE_VARIABLE MACRO=_STATUS_LED VARIABLE=blinkNext VALUE=1
STATUS_LED color={COLOR}
{% if printer["gcode_macro _STATUS_LED_BLINK_DELAY"].blank == 1 %}
SET_GCODE_VARIABLE MACRO=_STATUS_LED_BLINK_DELAY VARIABLE=blank VALUE=0
SET_LED LED=neo_leds RED=0.0 GREEN=0.0 BLUE=0.0 INDEX=17 TRANSMIT=1
{% else %}
SET_GCODE_VARIABLE MACRO=_STATUS_LED VARIABLE=blinkNext VALUE=0
_STATUS_LED color='off'
SET_GCODE_VARIABLE MACRO=_STATUS_LED_BLINK_DELAY VARIABLE=blank VALUE=1
{% if var_color == 'GREEN'%}
SET_LED LED=neo_leds RED=0.0 GREEN=0.3 BLUE=0.0 INDEX=17 TRANSMIT=1
{% elif var_color == 'RED'%}
SET_LED LED=neo_leds RED=0.5 GREEN=0.0 BLUE=0.0 INDEX=17 TRANSMIT=1
{% elif var_color == 'BLUE'%}
SET_LED LED=neo_leds RED=0.0 GREEN=0.0 BLUE=0.5 INDEX=17 TRANSMIT=1
{% endif %}
{% endif %}
UPDATE_DELAYED_GCODE ID=_BLINK_DELAY DURATION={printer["gcode_macro _STATUS_LED"].blink|float}
UPDATE_DELAYED_GCODE ID=_STATUS_LED_BLINK_DELAY DURATION={printer["gcode_macro _STATUS_LED"].blink|float}