From a11e6a1022b8f70be237fad82a9b6ba22b2db7b1 Mon Sep 17 00:00:00 2001 From: Slawomir Ciunczyk Date: Thu, 5 Oct 2017 13:45:36 +0200 Subject: [PATCH] Different NEOPIXEL types Same as #7728 but for 2.0.x, Lot of cleanup and remove references in whole code to other "LED files" than leds.h. Now will be much easier to add next drivers/libraries. e.g. FastLED. But bad news, currently FastLED is suporting only RGB devices (no RGBW) --- Marlin/Configuration.h | 21 ++++++++--- Marlin/src/Marlin.cpp | 2 +- Marlin/src/config/default/Configuration.h | 21 ++++++++--- .../AlephObjects/TAZ4/Configuration.h | 21 ++++++++--- .../AliExpress/CL-260/Configuration.h | 21 ++++++++--- .../config/examples/Anet/A6/Configuration.h | 21 ++++++++--- .../config/examples/Anet/A8/Configuration.h | 21 ++++++++--- .../examples/BQ/Hephestos/Configuration.h | 21 ++++++++--- .../examples/BQ/Hephestos_2/Configuration.h | 21 ++++++++--- .../config/examples/BQ/WITBOX/Configuration.h | 21 ++++++++--- .../config/examples/Cartesio/Configuration.h | 21 ++++++++--- .../examples/Creality/CR-10/Configuration.h | 21 ++++++++--- .../src/config/examples/Felix/Configuration.h | 21 ++++++++--- .../examples/Felix/DUAL/Configuration.h | 21 ++++++++--- .../Folger Tech/i3-2020/Configuration.h | 21 ++++++++--- .../examples/Geeetech/GT2560/Configuration.h | 21 ++++++++--- .../Geeetech/I3_Pro_X-GT2560/Configuration.h | 21 ++++++++--- .../examples/Infitary/i3-M508/Configuration.h | 21 ++++++++--- .../examples/Malyan/M150/Configuration.h | 21 ++++++++--- .../RepRapWorld/Megatronics/Configuration.h | 21 ++++++++--- .../config/examples/RigidBot/Configuration.h | 21 ++++++++--- .../src/config/examples/SCARA/Configuration.h | 21 ++++++++--- .../examples/Sanguinololu/Configuration.h | 29 ++++++++++----- .../config/examples/TinyBoy2/Configuration.h | 21 ++++++++--- .../examples/Velleman/K8200/Configuration.h | 21 ++++++++--- .../examples/Velleman/K8400/Configuration.h | 21 ++++++++--- .../Velleman/K8400/Dual-head/Configuration.h | 21 ++++++++--- .../examples/adafruit/ST7565/Configuration.h | 21 ++++++++--- .../FLSUN/auto_calibrate/Configuration.h | 21 ++++++++--- .../delta/FLSUN/kossel_mini/Configuration.h | 21 ++++++++--- .../examples/delta/generic/Configuration.h | 21 ++++++++--- .../delta/kossel_mini/Configuration.h | 21 ++++++++--- .../examples/delta/kossel_pro/Configuration.h | 21 ++++++++--- .../examples/delta/kossel_xl/Configuration.h | 21 ++++++++--- .../examples/gCreate/gMax1.5+/Configuration.h | 21 ++++++++--- .../config/examples/makibox/Configuration.h | 21 ++++++++--- .../examples/stm32f103ret6/Configuration.h | 15 +++++--- .../examples/tvrrug/Round2/Configuration.h | 21 ++++++++--- .../src/config/examples/wt150/Configuration.h | 21 ++++++++--- Marlin/src/feature/leds/leds.cpp | 17 ++++----- Marlin/src/feature/leds/leds.h | 30 +++++++++++---- Marlin/src/feature/leds/neopixel.cpp | 21 ++++++----- Marlin/src/feature/leds/neopixel.h | 2 +- Marlin/src/gcode/feature/leds/M150.cpp | 37 ++++++++++--------- Marlin/src/gcode/gcode.h | 2 +- Marlin/src/gcode/temperature/M104_M109.cpp | 17 ++++----- Marlin/src/gcode/temperature/M140_M190.cpp | 6 +-- Marlin/src/inc/Conditionals_LCD.h | 2 +- Marlin/src/inc/SanityCheck.h | 10 +++-- 49 files changed, 646 insertions(+), 300 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 99b9a05a07..608fbc1393 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -1588,14 +1588,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1606,11 +1612,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1624,7 +1633,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/Marlin.cpp b/Marlin/src/Marlin.cpp index c95758754a..aefa4021eb 100644 --- a/Marlin/src/Marlin.cpp +++ b/Marlin/src/Marlin.cpp @@ -796,7 +796,7 @@ void setup() { OUT_WRITE(STAT_LED_BLUE_PIN, LOW); // turn it off #endif - #if ENABLED(NEOPIXEL_RGBW_LED) + #if ENABLED(NEOPIXEL_LED) SET_OUTPUT(NEOPIXEL_PIN); setup_neopixel(); #endif diff --git a/Marlin/src/config/default/Configuration.h b/Marlin/src/config/default/Configuration.h index 99b9a05a07..608fbc1393 100644 --- a/Marlin/src/config/default/Configuration.h +++ b/Marlin/src/config/default/Configuration.h @@ -1588,14 +1588,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1606,11 +1612,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1624,7 +1633,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/AlephObjects/TAZ4/Configuration.h b/Marlin/src/config/examples/AlephObjects/TAZ4/Configuration.h index feee919080..114494acd3 100644 --- a/Marlin/src/config/examples/AlephObjects/TAZ4/Configuration.h +++ b/Marlin/src/config/examples/AlephObjects/TAZ4/Configuration.h @@ -1608,14 +1608,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1626,11 +1632,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1644,7 +1653,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/AliExpress/CL-260/Configuration.h b/Marlin/src/config/examples/AliExpress/CL-260/Configuration.h index 0910dc4d6b..62464e0bc3 100644 --- a/Marlin/src/config/examples/AliExpress/CL-260/Configuration.h +++ b/Marlin/src/config/examples/AliExpress/CL-260/Configuration.h @@ -1588,14 +1588,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1606,11 +1612,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1624,7 +1633,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/Anet/A6/Configuration.h b/Marlin/src/config/examples/Anet/A6/Configuration.h index ff9aedb3dd..314b153e43 100644 --- a/Marlin/src/config/examples/Anet/A6/Configuration.h +++ b/Marlin/src/config/examples/Anet/A6/Configuration.h @@ -1747,14 +1747,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1765,11 +1771,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1783,7 +1792,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/Anet/A8/Configuration.h b/Marlin/src/config/examples/Anet/A8/Configuration.h index e7c4b162d3..ee4a8bf539 100644 --- a/Marlin/src/config/examples/Anet/A8/Configuration.h +++ b/Marlin/src/config/examples/Anet/A8/Configuration.h @@ -1596,14 +1596,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1614,11 +1620,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1632,7 +1641,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/BQ/Hephestos/Configuration.h b/Marlin/src/config/examples/BQ/Hephestos/Configuration.h index bdd5bfbf66..d9ad572728 100644 --- a/Marlin/src/config/examples/BQ/Hephestos/Configuration.h +++ b/Marlin/src/config/examples/BQ/Hephestos/Configuration.h @@ -1579,14 +1579,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1597,11 +1603,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1615,7 +1624,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/BQ/Hephestos_2/Configuration.h b/Marlin/src/config/examples/BQ/Hephestos_2/Configuration.h index 9349f72ea4..94f1944e08 100644 --- a/Marlin/src/config/examples/BQ/Hephestos_2/Configuration.h +++ b/Marlin/src/config/examples/BQ/Hephestos_2/Configuration.h @@ -1589,14 +1589,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1607,11 +1613,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1625,7 +1634,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/BQ/WITBOX/Configuration.h b/Marlin/src/config/examples/BQ/WITBOX/Configuration.h index 75314c446c..82104c4872 100644 --- a/Marlin/src/config/examples/BQ/WITBOX/Configuration.h +++ b/Marlin/src/config/examples/BQ/WITBOX/Configuration.h @@ -1579,14 +1579,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1597,11 +1603,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1615,7 +1624,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/Cartesio/Configuration.h b/Marlin/src/config/examples/Cartesio/Configuration.h index e4b92fefbd..53d8a8d9a2 100644 --- a/Marlin/src/config/examples/Cartesio/Configuration.h +++ b/Marlin/src/config/examples/Cartesio/Configuration.h @@ -1587,14 +1587,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1605,11 +1611,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1623,7 +1632,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/Creality/CR-10/Configuration.h b/Marlin/src/config/examples/Creality/CR-10/Configuration.h index 811e7c3596..b55e5adb59 100755 --- a/Marlin/src/config/examples/Creality/CR-10/Configuration.h +++ b/Marlin/src/config/examples/Creality/CR-10/Configuration.h @@ -1598,14 +1598,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1616,11 +1622,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1634,7 +1643,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/Felix/Configuration.h b/Marlin/src/config/examples/Felix/Configuration.h index 039529bf26..e33b748eeb 100644 --- a/Marlin/src/config/examples/Felix/Configuration.h +++ b/Marlin/src/config/examples/Felix/Configuration.h @@ -1570,14 +1570,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1588,11 +1594,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1606,7 +1615,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/Felix/DUAL/Configuration.h b/Marlin/src/config/examples/Felix/DUAL/Configuration.h index 29aee2fab5..54d055c339 100644 --- a/Marlin/src/config/examples/Felix/DUAL/Configuration.h +++ b/Marlin/src/config/examples/Felix/DUAL/Configuration.h @@ -1570,14 +1570,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1588,11 +1594,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1606,7 +1615,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/Folger Tech/i3-2020/Configuration.h b/Marlin/src/config/examples/Folger Tech/i3-2020/Configuration.h index 14b177107f..fabbaa7ceb 100644 --- a/Marlin/src/config/examples/Folger Tech/i3-2020/Configuration.h +++ b/Marlin/src/config/examples/Folger Tech/i3-2020/Configuration.h @@ -1593,14 +1593,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1611,11 +1617,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1629,7 +1638,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/Geeetech/GT2560/Configuration.h b/Marlin/src/config/examples/Geeetech/GT2560/Configuration.h index bf360df582..edabf41aba 100644 --- a/Marlin/src/config/examples/Geeetech/GT2560/Configuration.h +++ b/Marlin/src/config/examples/Geeetech/GT2560/Configuration.h @@ -1603,14 +1603,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1621,11 +1627,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1639,7 +1648,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/Geeetech/I3_Pro_X-GT2560/Configuration.h b/Marlin/src/config/examples/Geeetech/I3_Pro_X-GT2560/Configuration.h index dfa027f31c..33051a4a2e 100644 --- a/Marlin/src/config/examples/Geeetech/I3_Pro_X-GT2560/Configuration.h +++ b/Marlin/src/config/examples/Geeetech/I3_Pro_X-GT2560/Configuration.h @@ -1588,14 +1588,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1606,11 +1612,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1624,7 +1633,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/Infitary/i3-M508/Configuration.h b/Marlin/src/config/examples/Infitary/i3-M508/Configuration.h index 388afeca55..bc190462d1 100644 --- a/Marlin/src/config/examples/Infitary/i3-M508/Configuration.h +++ b/Marlin/src/config/examples/Infitary/i3-M508/Configuration.h @@ -1592,14 +1592,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1610,11 +1616,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1628,7 +1637,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/Malyan/M150/Configuration.h b/Marlin/src/config/examples/Malyan/M150/Configuration.h index 4ec1bd9feb..1184ab32b6 100644 --- a/Marlin/src/config/examples/Malyan/M150/Configuration.h +++ b/Marlin/src/config/examples/Malyan/M150/Configuration.h @@ -1616,14 +1616,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1634,11 +1640,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1652,7 +1661,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/RepRapWorld/Megatronics/Configuration.h b/Marlin/src/config/examples/RepRapWorld/Megatronics/Configuration.h index 503b6fe95f..f8d47c211e 100644 --- a/Marlin/src/config/examples/RepRapWorld/Megatronics/Configuration.h +++ b/Marlin/src/config/examples/RepRapWorld/Megatronics/Configuration.h @@ -1588,14 +1588,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1606,11 +1612,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1624,7 +1633,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/RigidBot/Configuration.h b/Marlin/src/config/examples/RigidBot/Configuration.h index 4c82d29d00..b31434b15d 100644 --- a/Marlin/src/config/examples/RigidBot/Configuration.h +++ b/Marlin/src/config/examples/RigidBot/Configuration.h @@ -1588,14 +1588,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1606,11 +1612,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1624,7 +1633,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/SCARA/Configuration.h b/Marlin/src/config/examples/SCARA/Configuration.h index ce84c341ca..25d73d4a86 100644 --- a/Marlin/src/config/examples/SCARA/Configuration.h +++ b/Marlin/src/config/examples/SCARA/Configuration.h @@ -1600,14 +1600,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1618,11 +1624,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1636,7 +1645,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/Sanguinololu/Configuration.h b/Marlin/src/config/examples/Sanguinololu/Configuration.h index f89c16e2d5..fa82a1f694 100644 --- a/Marlin/src/config/examples/Sanguinololu/Configuration.h +++ b/Marlin/src/config/examples/Sanguinololu/Configuration.h @@ -1619,29 +1619,38 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ -#define RGB_LED + +//#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) - #define RGB_LED_R_PIN 11 - #define RGB_LED_G_PIN 10 - #define RGB_LED_B_PIN 17 + #define RGB_LED_R_PIN 34 + #define RGB_LED_G_PIN 43 + #define RGB_LED_B_PIN 35 #define RGB_LED_W_PIN -1 #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1655,7 +1664,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/TinyBoy2/Configuration.h b/Marlin/src/config/examples/TinyBoy2/Configuration.h index e985e517aa..c9035cdb5f 100644 --- a/Marlin/src/config/examples/TinyBoy2/Configuration.h +++ b/Marlin/src/config/examples/TinyBoy2/Configuration.h @@ -1644,14 +1644,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1662,11 +1668,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1680,7 +1689,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/Velleman/K8200/Configuration.h b/Marlin/src/config/examples/Velleman/K8200/Configuration.h index 1766f40f03..af5d864e6f 100644 --- a/Marlin/src/config/examples/Velleman/K8200/Configuration.h +++ b/Marlin/src/config/examples/Velleman/K8200/Configuration.h @@ -1623,14 +1623,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1641,11 +1647,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1659,7 +1668,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/Velleman/K8400/Configuration.h b/Marlin/src/config/examples/Velleman/K8400/Configuration.h index 65082ad40e..fd5435fc9f 100644 --- a/Marlin/src/config/examples/Velleman/K8400/Configuration.h +++ b/Marlin/src/config/examples/Velleman/K8400/Configuration.h @@ -1588,14 +1588,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1606,11 +1612,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1624,7 +1633,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/Velleman/K8400/Dual-head/Configuration.h b/Marlin/src/config/examples/Velleman/K8400/Dual-head/Configuration.h index 09330100f0..2e98e6eb8b 100644 --- a/Marlin/src/config/examples/Velleman/K8400/Dual-head/Configuration.h +++ b/Marlin/src/config/examples/Velleman/K8400/Dual-head/Configuration.h @@ -1588,14 +1588,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1606,11 +1612,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1624,7 +1633,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/adafruit/ST7565/Configuration.h b/Marlin/src/config/examples/adafruit/ST7565/Configuration.h index 52c4140698..c72bb1b5ba 100644 --- a/Marlin/src/config/examples/adafruit/ST7565/Configuration.h +++ b/Marlin/src/config/examples/adafruit/ST7565/Configuration.h @@ -1588,14 +1588,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1606,11 +1612,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1624,7 +1633,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/delta/FLSUN/auto_calibrate/Configuration.h b/Marlin/src/config/examples/delta/FLSUN/auto_calibrate/Configuration.h index 8e64455538..c60caf7b74 100644 --- a/Marlin/src/config/examples/delta/FLSUN/auto_calibrate/Configuration.h +++ b/Marlin/src/config/examples/delta/FLSUN/auto_calibrate/Configuration.h @@ -1716,14 +1716,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1734,11 +1740,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1752,7 +1761,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/delta/FLSUN/kossel_mini/Configuration.h b/Marlin/src/config/examples/delta/FLSUN/kossel_mini/Configuration.h index 4634d74c3e..b8ea78524f 100644 --- a/Marlin/src/config/examples/delta/FLSUN/kossel_mini/Configuration.h +++ b/Marlin/src/config/examples/delta/FLSUN/kossel_mini/Configuration.h @@ -1709,14 +1709,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1727,11 +1733,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1745,7 +1754,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/delta/generic/Configuration.h b/Marlin/src/config/examples/delta/generic/Configuration.h index 0338e220a5..ef7ab6d58e 100644 --- a/Marlin/src/config/examples/delta/generic/Configuration.h +++ b/Marlin/src/config/examples/delta/generic/Configuration.h @@ -1704,14 +1704,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1722,11 +1728,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1740,7 +1749,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/delta/kossel_mini/Configuration.h b/Marlin/src/config/examples/delta/kossel_mini/Configuration.h index 130345a4da..4c0eb3cea9 100644 --- a/Marlin/src/config/examples/delta/kossel_mini/Configuration.h +++ b/Marlin/src/config/examples/delta/kossel_mini/Configuration.h @@ -1707,14 +1707,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1725,11 +1731,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1743,7 +1752,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/delta/kossel_pro/Configuration.h b/Marlin/src/config/examples/delta/kossel_pro/Configuration.h index 8b50cc116f..766fe8616d 100644 --- a/Marlin/src/config/examples/delta/kossel_pro/Configuration.h +++ b/Marlin/src/config/examples/delta/kossel_pro/Configuration.h @@ -1707,14 +1707,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1725,11 +1731,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1743,7 +1752,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/delta/kossel_xl/Configuration.h b/Marlin/src/config/examples/delta/kossel_xl/Configuration.h index e2100a84ca..627dd05e7c 100644 --- a/Marlin/src/config/examples/delta/kossel_xl/Configuration.h +++ b/Marlin/src/config/examples/delta/kossel_xl/Configuration.h @@ -1716,14 +1716,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1734,11 +1740,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1752,7 +1761,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/gCreate/gMax1.5+/Configuration.h b/Marlin/src/config/examples/gCreate/gMax1.5+/Configuration.h index 08496aa603..e3314f761c 100644 --- a/Marlin/src/config/examples/gCreate/gMax1.5+/Configuration.h +++ b/Marlin/src/config/examples/gCreate/gMax1.5+/Configuration.h @@ -1602,14 +1602,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1620,11 +1626,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1638,7 +1647,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/makibox/Configuration.h b/Marlin/src/config/examples/makibox/Configuration.h index 4f40cfb790..a5a88f3c12 100644 --- a/Marlin/src/config/examples/makibox/Configuration.h +++ b/Marlin/src/config/examples/makibox/Configuration.h @@ -1591,14 +1591,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1609,11 +1615,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1627,7 +1636,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/stm32f103ret6/Configuration.h b/Marlin/src/config/examples/stm32f103ret6/Configuration.h index c827b56e0b..b82179a4d5 100644 --- a/Marlin/src/config/examples/stm32f103ret6/Configuration.h +++ b/Marlin/src/config/examples/stm32f103ret6/Configuration.h @@ -1561,11 +1561,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1579,7 +1582,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/tvrrug/Round2/Configuration.h b/Marlin/src/config/examples/tvrrug/Round2/Configuration.h index 7408c536fb..d676e7cd08 100644 --- a/Marlin/src/config/examples/tvrrug/Round2/Configuration.h +++ b/Marlin/src/config/examples/tvrrug/Round2/Configuration.h @@ -1583,14 +1583,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1601,11 +1607,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1619,7 +1628,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/config/examples/wt150/Configuration.h b/Marlin/src/config/examples/wt150/Configuration.h index 1b7eb57300..b3f98ac2fb 100644 --- a/Marlin/src/config/examples/wt150/Configuration.h +++ b/Marlin/src/config/examples/wt150/Configuration.h @@ -1593,14 +1593,20 @@ * Adds the M150 command to set the LED (or LED strip) color. * If pins are PWM capable (e.g., 4, 5, 6, 11) then a range of * luminance values can be set from 0 to 255. + * For Neopixel LED overall brightness parameters is also available * * *** CAUTION *** * LED Strips require a MOFSET Chip between PWM lines and LEDs, * as the Arduino cannot handle the current the LEDs will require. * Failure to follow this precaution can destroy your Arduino! + * Neopixel LED is 5V powered, but linear 5V regulator on Arduino + * cannot handle the current, separate 5V power supply must be used * *** CAUTION *** * + * LED type. This options are mutualy exclusive. Uncomment only one. + * */ + //#define RGB_LED //#define RGBW_LED #if ENABLED(RGB_LED) || ENABLED(RGBW_LED) @@ -1611,11 +1617,14 @@ #endif // Support for Adafruit Neopixel LED driver -//#define NEOPIXEL_RGBW_LED -#if ENABLED(NEOPIXEL_RGBW_LED) - #define NEOPIXEL_PIN 4 // D4 (EXP2-5 on Printrboard) - #define NEOPIXEL_PIXELS 3 - //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup +//#define NEOPIXEL_LED +#if ENABLED(NEOPIXEL_LED) + #define NEOPIXEL_TYPE NEO_GRB // NEO_GRBW / NEO_GRB - four/three channel driver type (definned in Adafruit_NeoPixel.h) + #define NEOPIXEL_PIN 4 // LED driving pin on motherboard 4 => D4 (EXP2-5 on Printrboard) / 30 => PC7 (EXP3-13 on Rumba) + #define NEOPIXEL_PIXELS 30 // Number of LEDs on strip + #define NEOPIXEL_IS_SEQUENTIAL // Sequential display for temperature change - LED by LED. Comment out for all LEDs to change at once. + #define NEOPIXEL_BRIGHTNESS 255 // Initial brightness 0-255 + //#define NEOPIXEL_STARTUP_TEST // Cycle through colors at startup #endif /** @@ -1629,7 +1638,7 @@ * - Change to green once print has finished * - Turn off after the print has finished and the user has pushed a button */ -#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED) #define PRINTER_EVENT_LEDS #endif diff --git a/Marlin/src/feature/leds/leds.cpp b/Marlin/src/feature/leds/leds.cpp index 1f422657fe..558e2ca8fe 100644 --- a/Marlin/src/feature/leds/leds.cpp +++ b/Marlin/src/feature/leds/leds.cpp @@ -31,18 +31,15 @@ #include "leds.h" void set_led_color( - const uint8_t r, const uint8_t g, const uint8_t b - #if ENABLED(RGBW_LED) || ENABLED(NEOPIXEL_RGBW_LED) - , const uint8_t w - #if ENABLED(NEOPIXEL_RGBW_LED) - , bool isSequence - #endif - #endif + const uint8_t r, const uint8_t g, const uint8_t b , const uint8_t w , const uint8_t p ) { - #if ENABLED(NEOPIXEL_RGBW_LED) - if (neopixel_set_led_color(r, g, b, w, isSequence)) - return; + #if ENABLED(NEOPIXEL_LED) + if (w == 255 || (r == 255 && g == 255 && b == 255)) + neopixel_set_led_color(NEO_WHITE, p); + else + neopixel_set_led_color(r, g, b, w, p); + return; #endif #if ENABLED(BLINKM) diff --git a/Marlin/src/feature/leds/leds.h b/Marlin/src/feature/leds/leds.h index c271744fe2..b67e982a77 100644 --- a/Marlin/src/feature/leds/leds.h +++ b/Marlin/src/feature/leds/leds.h @@ -27,7 +27,7 @@ #ifndef __LEDS_H__ #define __LEDS_H__ -#if ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(NEOPIXEL_LED) #include #include "neopixel.h" #endif @@ -40,14 +40,28 @@ #include "pca9632.h" #endif -void set_led_color( - const uint8_t r, const uint8_t g, const uint8_t b - #if ENABLED(RGBW_LED) || ENABLED(NEOPIXEL_RGBW_LED) - , const uint8_t w = 0 - #if ENABLED(NEOPIXEL_RGBW_LED) - , bool isSequence = false - #endif +#if ENABLED(NEOPIXEL_LED) + #if NEOPIXEL_TYPE == NEO_RGB || NEOPIXEL_TYPE == NEO_RBG || NEOPIXEL_TYPE == NEO_GRB || NEOPIXEL_TYPE == NEO_GBR || NEOPIXEL_TYPE == NEO_BRG || NEOPIXEL_TYPE == NEO_BGR + #define NEO_WHITE 255, 255, 255 + #else + #define NEO_WHITE 0, 0, 0, 255 #endif +#endif + +#if ENABLED(RGB_LED) || ENABLED(BLINKM) || ENABLED(PCA9632) + #define LED_WHITE 255, 255, 255 +#elif ENABLED(RGBW_LED) + #define LED_WHITE 0, 0, 0, 255 +#endif + +#if ENABLED(NEOPIXEL_LED) + #define LED_BRIGHTNESS pixels.getBrightness() +#else + #define LED_BRIGHTNESS 255 +#endif + +void set_led_color( + const uint8_t r, const uint8_t g, const uint8_t b, const uint8_t w = 0, const uint8_t p = 255 ); #endif // __LEDS_H__ diff --git a/Marlin/src/feature/leds/neopixel.cpp b/Marlin/src/feature/leds/neopixel.cpp index d854098c25..d96e431c32 100644 --- a/Marlin/src/feature/leds/neopixel.cpp +++ b/Marlin/src/feature/leds/neopixel.cpp @@ -26,11 +26,11 @@ #include "../../inc/MarlinConfig.h" -#if ENABLED(NEOPIXEL_RGBW_LED) +#if ENABLED(NEOPIXEL_LED) #include "neopixel.h" -Adafruit_NeoPixel pixels(NEOPIXEL_PIXELS, NEOPIXEL_PIN, NEO_GRBW + NEO_KHZ800); +Adafruit_NeoPixel pixels(NEOPIXEL_PIXELS, NEOPIXEL_PIN, NEOPIXEL_TYPE + NEO_KHZ800); void set_neopixel_color(const uint32_t color) { for (uint16_t i = 0; i < pixels.numPixels(); ++i) @@ -39,7 +39,7 @@ void set_neopixel_color(const uint32_t color) { } void setup_neopixel() { - pixels.setBrightness(255); // 0 - 255 range + pixels.setBrightness(NEOPIXEL_BRIGHTNESS); // 0 - 255 range pixels.begin(); pixels.show(); // initialize to all off @@ -55,18 +55,19 @@ void setup_neopixel() { set_neopixel_color(pixels.Color(0, 0, 0, 255)); // white } -bool neopixel_set_led_color(const uint8_t r, const uint8_t g, const uint8_t b, const uint8_t w, const bool isSequence) { +bool neopixel_set_led_color(const uint8_t r, const uint8_t g, const uint8_t b, const uint8_t w, const uint8_t p) { const uint32_t color = pixels.Color(r, g, b, w); - static uint16_t nextLed = 0; - if (!isSequence) + pixels.setBrightness(p); + #if !ENABLED(NEOPIXEL_IS_SEQUENTIAL) set_neopixel_color(color); - else { + return false; + #else + static uint16_t nextLed = 0; pixels.setPixelColor(nextLed, color); pixels.show(); if (++nextLed >= pixels.numPixels()) nextLed = 0; return true; - } - return false; + #endif } -#endif // NEOPIXEL_RGBW_LED +#endif // NEOPIXEL_LED diff --git a/Marlin/src/feature/leds/neopixel.h b/Marlin/src/feature/leds/neopixel.h index 76ca7fabcc..265b93d19d 100644 --- a/Marlin/src/feature/leds/neopixel.h +++ b/Marlin/src/feature/leds/neopixel.h @@ -31,7 +31,7 @@ #include void setup_neopixel(); -bool neopixel_set_led_color(const uint8_t r, const uint8_t g, const uint8_t b, const uint8_t w, const bool isSequence); +bool neopixel_set_led_color(const uint8_t r, const uint8_t g, const uint8_t b, const uint8_t w, const uint8_t p); extern Adafruit_NeoPixel pixels; diff --git a/Marlin/src/gcode/feature/leds/M150.cpp b/Marlin/src/gcode/feature/leds/M150.cpp index 9608e90ee9..91cdd65995 100644 --- a/Marlin/src/gcode/feature/leds/M150.cpp +++ b/Marlin/src/gcode/feature/leds/M150.cpp @@ -28,27 +28,30 @@ #include "../../../feature/leds/leds.h" /** - * M150: Set Status LED Color - Use R-U-B-W for R-G-B-W - * - * Always sets all 3 or 4 components. If a component is left out, set to 0. - * - * Examples: - * - * M150 R255 ; Turn LED red - * M150 R255 U127 ; Turn LED orange (PWM only) - * M150 ; Turn LED off - * M150 R U B ; Turn LED white - * M150 W ; Turn LED white using a white LED - * - */ +* M150: Set Status LED Color - Use R-U-B-W for R-G-B-W +* and Brightness - Use P (for NEOPIXEL only) +* +* Always sets all 3 or 4 components. If a component is left out, set to 0. +* If brightness is left out, no value changed +* +* Examples: +* +* M150 R255 ; Turn LED red +* M150 R255 U127 ; Turn LED orange (PWM only) +* M150 ; Turn LED off +* M150 R U B ; Turn LED white +* M150 W ; Turn LED white using a white LED +* M150 P127 ; Set LED 50% brightness +* M150 P ; Set LED full brightness +*/ + void GcodeSuite::M150() { set_led_color( parser.seen('R') ? (parser.has_value() ? parser.value_byte() : 255) : 0, parser.seen('U') ? (parser.has_value() ? parser.value_byte() : 255) : 0, - parser.seen('B') ? (parser.has_value() ? parser.value_byte() : 255) : 0 - #if ENABLED(RGBW_LED) || ENABLED(NEOPIXEL_RGBW_LED) - , parser.seen('W') ? (parser.has_value() ? parser.value_byte() : 255) : 0 - #endif + parser.seen('B') ? (parser.has_value() ? parser.value_byte() : 255) : 0, + parser.seen('W') ? (parser.has_value() ? parser.value_byte() : 255) : 0, + parser.seen('P') ? (parser.has_value() ? parser.value_byte() : 255) : LED_BRIGHTNESS ); } diff --git a/Marlin/src/gcode/gcode.h b/Marlin/src/gcode/gcode.h index 48f3bff5be..39cc5a79b5 100644 --- a/Marlin/src/gcode/gcode.h +++ b/Marlin/src/gcode/gcode.h @@ -138,7 +138,7 @@ * M140 - Set bed target temp. S * M145 - Set heatup values for materials on the LCD. H B F for S (0=PLA, 1=ABS) * M149 - Set temperature units. (Requires TEMPERATURE_UNITS_SUPPORT) - * M150 - Set Status LED Color as R U B. Values 0-255. (Requires BLINKM, RGB_LED, RGBW_LED, or PCA9632) + * M150 - Set Status LED Color as R U B P. Values 0-255. (Requires BLINKM, RGB_LED, RGBW_LED, NEOPIXEL_LED, or PCA9632). * M155 - Auto-report temperatures with interval of S. (Requires AUTO_REPORT_TEMPERATURES) * M163 - Set a single proportion for a mixing extruder. (Requires MIXING_EXTRUDER) * M164 - Save the mix as a virtual extruder. (Requires MIXING_EXTRUDER and MIXING_VIRTUAL_TOOLS) diff --git a/Marlin/src/gcode/temperature/M104_M109.cpp b/Marlin/src/gcode/temperature/M104_M109.cpp index 44bf51a997..c99d49312a 100644 --- a/Marlin/src/gcode/temperature/M104_M109.cpp +++ b/Marlin/src/gcode/temperature/M104_M109.cpp @@ -31,7 +31,7 @@ #include "../../module/printcounter.h" #endif -#if HAS_COLOR_LEDS +#if ENABLED(PRINTER_EVENT_LEDS) #include "../../feature/leds/leds.h" #endif @@ -190,11 +190,7 @@ void GcodeSuite::M109() { const uint8_t blue = map(constrain(temp, start_temp, target_temp), start_temp, target_temp, 255, 0); if (blue != old_blue) { old_blue = blue; - set_led_color(255, 0, blue - #if ENABLED(NEOPIXEL_RGBW_LED) - , 0, true - #endif - ); + set_led_color(255, 0, blue); } } #endif @@ -230,10 +226,11 @@ void GcodeSuite::M109() { if (wait_for_heatup) { LCD_MESSAGEPGM(MSG_HEATING_COMPLETE); #if ENABLED(PRINTER_EVENT_LEDS) - #if ENABLED(RGBW_LED) || ENABLED(NEOPIXEL_RGBW_LED) - set_led_color(0, 0, 0, 255); // Turn on the WHITE LED - #else - set_led_color(255, 255, 255); // Set LEDs All On + #if ENABLED(RGB_LED) || ENABLED(BLINKM) || ENABLED(PCA9632) || ENABLED(RGBW_LED) + set_led_color(LED_WHITE); + #endif + #if ENABLED(NEOPIXEL_LED) + set_neopixel_color(pixels.Color(NEO_WHITE)); #endif #endif } diff --git a/Marlin/src/gcode/temperature/M140_M190.cpp b/Marlin/src/gcode/temperature/M140_M190.cpp index b48dd44a33..3caec006e4 100644 --- a/Marlin/src/gcode/temperature/M140_M190.cpp +++ b/Marlin/src/gcode/temperature/M140_M190.cpp @@ -132,11 +132,7 @@ void GcodeSuite::M190() { const uint8_t red = map(constrain(temp, start_temp, target_temp), start_temp, target_temp, 0, 255); if (red != old_red) { old_red = red; - set_led_color(red, 0, 255 - #if ENABLED(NEOPIXEL_RGBW_LED) - , 0, true - #endif - ); + set_led_color(red, 0, 255); } } #endif diff --git a/Marlin/src/inc/Conditionals_LCD.h b/Marlin/src/inc/Conditionals_LCD.h index 69ca4363bc..ab7a47b4a6 100644 --- a/Marlin/src/inc/Conditionals_LCD.h +++ b/Marlin/src/inc/Conditionals_LCD.h @@ -483,6 +483,6 @@ #define HAS_SOFTWARE_ENDSTOPS (ENABLED(MIN_SOFTWARE_ENDSTOPS) || ENABLED(MAX_SOFTWARE_ENDSTOPS)) #define HAS_RESUME_CONTINUE (ENABLED(NEWPANEL) || ENABLED(EMERGENCY_PARSER)) - #define HAS_COLOR_LEDS (ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_RGBW_LED)) + #define HAS_COLOR_LEDS (ENABLED(BLINKM) || ENABLED(RGB_LED) || ENABLED(RGBW_LED) || ENABLED(PCA9632) || ENABLED(NEOPIXEL_LED)) #endif // CONDITIONALS_LCD_H diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 0100214ab9..182ac194c5 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -210,6 +210,8 @@ #error "MIN_RETRACT is now MIN_AUTORETRACT and MAX_AUTORETRACT. Please update your Configuration_adv.h." #elif defined(ADVANCE) #error "ADVANCE was removed in Marlin 1.1.6. Please use LIN_ADVANCE." +#elif defined(NEOPIXEL_RGBW_LED) + #error "NEOPIXEL_RGBW_LED is now NEOPIXEL_LED. Please update your configuration." #endif /** @@ -1100,12 +1102,12 @@ static_assert(1 >= 0 #if !(_RGB_TEST && PIN_EXISTS(RGB_LED_W)) #error "RGBW_LED requires RGB_LED_R_PIN, RGB_LED_G_PIN, RGB_LED_B_PIN, and RGB_LED_W_PIN." #endif -#elif ENABLED(NEOPIXEL_RGBW_LED) +#elif ENABLED(NEOPIXEL_LED) #if !(PIN_EXISTS(NEOPIXEL) && NEOPIXEL_PIXELS > 0) - #error "NEOPIXEL_RGBW_LED requires NEOPIXEL_PIN and NEOPIXEL_PIXELS." + #error "NEOPIXEL_LED requires NEOPIXEL_PIN and NEOPIXEL_PIXELS." #endif -#elif ENABLED(PRINTER_EVENT_LEDS) && DISABLED(BLINKM) && DISABLED(PCA9632) && DISABLED(NEOPIXEL_RGBW_LED) - #error "PRINTER_EVENT_LEDS requires BLINKM, PCA9632, RGB_LED, RGBW_LED or NEOPIXEL_RGBW_LED." +#elif ENABLED(PRINTER_EVENT_LEDS) && DISABLED(BLINKM) && DISABLED(PCA9632) && DISABLED(NEOPIXEL_LED) + #error "PRINTER_EVENT_LEDS requires BLINKM, PCA9632, RGB_LED, RGBW_LED or NEOPIXEL_LED." #endif /**