Siboor
Siboor Web Store
  • ※Welcome to Siboor
    • How to get help?
    • Agreement & Support
    • Friendly Links
    • Tool Guide
  • ※SIBOOR TRIDENT [JUNE]
    • Bill of Materials
    • The Build
      • Printed Parts(Oct/17)
      • Assembly manual
      • Initial Startup(Dec/05)
      • Initial Startup Checks[Nov/28]
      • Slicer Setup[Nov/28]
      • First Print
      • Ssh Quick Guide
    • Tuning Guides
      • Temperature calibration
      • Calibration Belt
      • Measuring Resonances
      • Filament Tuning
      • Pressure advance
      • Print Tuning
    • ⑤Maintenance Guide
    • FAQ(Oct/17)
      • Unused Ports Overview
      • Product specs
      • Cartographer to Survey Touch mode[Nov/26]
      • [New]Klipper LEDHelper Error Fix Tutorial
      • [New]Phaetus Rapido2 Heatblock Replacement Guide
      • [New] CB2 Timer too close
    • CNC Trident AWD
  • ※SIBOOR 2.4 R2 [AUG]
    • Bill of Materials
    • The Build
      • Printed Parts
      • Assembly manual
        • ① SIBOOR 2.4 R2 Aug
        • ② Stealthburner
        • ③ Nevermore V6
        • ※ CHAOTICLAD CNC KIT
        • ※ Tap Probe
      • Initial Startup[Dec/05]
      • Initial Startup Checks[Nov/26]
      • Slicer Setup[Nov/26]
      • First Print
      • Ssh Quick Guide
    • Tuning Guides
      • Temperature calibration
      • Calibration Belt
      • Measuring Resonances
      • Filament Tuning
      • Pressure advance
      • Print Tuning
    • Maintenance Guide
    • FAQ
      • Product specs
      • Cartographer to Survey Touch mode[Nov/26]
      • Octopus Pro PIN
  • ※SIBOOR 0.2 R1 [AUG]
    • Bill of Materials
    • The Build
      • Printed Parts
      • Assembly manual
        • Wiring Supplementary
        • Metal Version Supplementary
      • Initial Startup
      • Initial Startup Checks
      • Slicer Setup
      • First Print
      • Ssh Quick Guide
    • Tuning Guides
      • Calibration Belt
      • Measuring Resonances
      • Filament Tuning
      • Pressure advance
      • Temperature calibration
      • Print Tuning
    • Maintenance Guide
    • FAQ(Oct/3)
      • Product specs
      • FLY Gemini V3 Pin
  • ※E3-SW CONVERSION
    • Bill of Materials
    • The Build
      • Preparations
        • Printed Parts
        • Heat Set Inserts
        • Extrusion Tapping
      • Assembly manual
      • 接线说明
        • Creality 4.2.2 board
        • SKR Mini E3 V2 board
        • SKR Mini E3 V3 board
        • SKR Pico board
      • 首次启动
      • 首次启动检查
      • 切片器设置
      • Ssh Quick Guide
    • Tuning Guides
      • Calibration Belt
      • Measuring Resonances
      • Filament Tuning
      • Pressure advance
      • Temperature calibration
      • Print Tuning
    • Maintenance Guide
    • FAQ
      • Product specs
  • ※SIBOOR ERCF V2
    • Build of Materials
    • The Build
      • ①Print necessary parts
      • ②Assembly manual
      • ③Connect ERCF to the printer
      • ④Install Happy Hare
      • ⑤ Install KlipperScreen - Happy Hare
      • ⑥Validate you hardware configuration
      • ⑦Calibration Steps
      • ⑧Basic Operation
      • 切片设置
    • Tuning Guides
    • Maintenance Guide
    • FAQ
      • Product specs
      • EBB MMB V1.1 PIN
  • ※Other Products
    • CNC Trident AWD
      • Bill of Materials
      • FAQ
    • V0 Display Screen
    • V0 Krigami Bed
    • Klipper Expander
      • Overview of Features
      • Configuration Tutorial
      • Flashing Instructions
      • FAQ
    • RGB PCB LIGHT
    • LED Effect Notes
      • Wiring Guide
      • Installing LED Effects Software
      • Configuring the strips
      • Configuring the effects
      • [Advanced]Effect Layer Blending
      • FAQ
Powered by GitBook
On this page
  • Sample Configurations
  • das Blinkenlights
  • Bed Idle with Temperature
  • Brightness Controlled By Potentiometer
  • Progress Bar
  1. ※Other Products
  2. LED Effect Notes

[Advanced]Effect Layer Blending

Effect Layer Blending

If you have ever used image editing software you may be familiar with color blending between image layers. Several common color blending techniques have been added to blend LED layers together. Layers defined in the configuration are ordered top to bottom.

If there are 3 layers defined, the bottom layer is first blended with the middle layer. The resultant layer is then blended with the top. The bottom layer will never be blended with anything even if a blending mode is specified.

Layer blending is always evaluated from the bottom up.

Since values cannot exceed 100% brightness and 0% darkness, they are clamped to this range as a floating-point number ( 0.0 - 1.0 )

Blending Mode
Description
Formula

bottom

bottom:No blending; uses the color from the bottom layer.

—

top

top:No blending; uses the color from the top layer.

—

add

add:Color channels (Red, Green, and Blue) are added together, resulting in brighter channels.

top + bottom

subtract

subtract:The top layer is subtracted from the bottom layer, darkening similar colors.

bottom - top

subtract_b

subtract_b:The bottom layer is subtracted from the top layer, darkening similar colors.

top - bottom

difference

difference:The darker of the layers is subtracted from the brighter one.

average

average:The average of the color channels is taken.

(top + bottom) / 2

multiply

multiply:The channels are multiplied together, useful for darkening colors.

top * bottom

divide

divide:The channels are divided, often brightening colors toward white.

top / bottom

divide_inv

divide_inv:Similar to divide, but the bottom layer is divided by the top.

bottom / top

screen

screen:Values are inverted, multiplied, and inverted again, resulting in brighter colors.

1 - (1 - top) * (1 - bottom)

lighten

lighten:The brighter of the color channels is used.

brighter of (top, bottom)

darken

darken:The darker of the color channels is used.

darker of (top, bottom)

overlay

overlay:Overlay combines multiply and screen, enhancing contrast.

2 * top * bottom if top > 0.5, else 1 - 2 * (1 - top) * (1 - bottom)

Sample Configurations

das Blinkenlights

In the event of critical error, all LED strips breath red in unison to provide a visible indicator of an error condition with the printer. This effect is disabled during normal operation and only starts when the MCU enters a shutdown state (currently not supported).

[led_effect critical_error]
leds:
    neopixel:tool_lights
    neopixel:bed_lights
layers:
    strobe         1  1.5   add        (1.0,  1.0, 1.0)
    breathing      2  0     difference (0.95, 0.0, 0.0)
    static         1  0     top        (1.0,  0.0, 0.0)
autostart:                             false
frame_rate:                            24
run_on_error:                          true

Bed Idle with Temperature

[led_effect bed_effects]
leds:
    neopixel:bed_lights
autostart:                          true
frame_rate:                         24
heater:                             heater_bed
layers:
    heater  50 0 add    (1,1,0),(1,0,0)
    static  0  0 top    (1,0,0)

Brightness Controlled By Potentiometer

This is an example of how to combine the Analog Pin effect with layer blending so it controls the brightness of the lights. One could connect a potentiometer to a thermistor port and use the voltage reading from that pin to determine the amount of color to subtract from the base layers. The potentiometer would need to be wired so that when it is turned "down" the voltage on the analog pin is on full output and when it is turned up it is on minimum output. This way, when the potentiometer is "down", the color (1.0, 1.0, 1.0) (Full white) is being subtracted from the colors of the layer, resulting in (0.0, 0.0, 0.0) (Full Black). The effect rate and cutoff would need to be tuned to the specific potentiometer and board combination.

[led_effect bed_effects]
leds:
    neopixel:bed_lights
autostart:                          true
frame_rate:                         24
analog_pin:                         ar52
layers:
    analogpin 10 0 subtract    (1,1,1)
    static    0  0 top         (1,1,1)

Progress Bar

Using a single strip of LEDs, print progress is displayed as a light blue line over a dark blue background

[led_effect progress_bar]
leds:
    neopixel:progress_lights
autostart:                          true
frame_rate:                         24
layers:
    progress  -1  0 add         ( 0, 0,   1),( 0, 0.1, 0.6)
    static     0  0 top         ( 0, 0, 0.1)
PreviousConfiguring the effectsNextFAQ

Last updated 6 months ago