Browse Source

🧑‍💻 Option allowing > 127 Neopixels (#23322)

vanilla_fb_2.0.x
GHGiampy 3 years ago
committed by Scott Lahteine
parent
commit
22cf9b444e
  1. 4
      Marlin/src/feature/leds/neopixel.cpp
  2. 14
      Marlin/src/feature/leds/neopixel.h
  3. 2
      Marlin/src/gcode/feature/leds/M150.cpp

4
Marlin/src/feature/leds/neopixel.cpp

@ -35,7 +35,7 @@
#endif
Marlin_NeoPixel neo;
int8_t Marlin_NeoPixel::neoindex;
pixel_index_t Marlin_NeoPixel::neoindex;
Adafruit_NeoPixel Marlin_NeoPixel::adaneo1(NEOPIXEL_PIXELS, NEOPIXEL_PIN, NEOPIXEL_TYPE + NEO_KHZ800);
#if CONJOINED_NEOPIXEL
@ -116,7 +116,7 @@ void Marlin_NeoPixel::init() {
Marlin_NeoPixel2 neo2;
int8_t Marlin_NeoPixel2::neoindex;
pixel_index_t Marlin_NeoPixel2::neoindex;
Adafruit_NeoPixel Marlin_NeoPixel2::adaneo(NEOPIXEL2_PIXELS, NEOPIXEL2_PIN, NEOPIXEL2_TYPE);
void Marlin_NeoPixel2::set_color(const uint32_t color) {

14
Marlin/src/feature/leds/neopixel.h

@ -25,6 +25,8 @@
* NeoPixel support
*/
#define MAX_NEOPIXELS 127
#ifndef _NEOPIXEL_INCLUDE_
#error "Always include 'leds.h' and not 'neopixel.h' directly."
#endif
@ -63,7 +65,13 @@
#endif
// ------------------------
// Function prototypes
// Types
// ------------------------
typedef IF<(MAX_NEOPIXELS > 127), int16_t, int8_t>::type pixel_index_t;
// ------------------------
// Classes
// ------------------------
class Marlin_NeoPixel {
@ -74,7 +82,7 @@ private:
#endif
public:
static int8_t neoindex;
static pixel_index_t neoindex;
static void init();
static void set_color_startup(const uint32_t c);
@ -150,7 +158,7 @@ extern Marlin_NeoPixel neo;
static Adafruit_NeoPixel adaneo;
public:
static int8_t neoindex;
static pixel_index_t neoindex;
static void init();
static void set_color_startup(const uint32_t c);

2
Marlin/src/gcode/feature/leds/M150.cpp

@ -54,7 +54,7 @@
*/
void GcodeSuite::M150() {
#if ENABLED(NEOPIXEL_LED)
const int8_t index = parser.intval('I', -1);
const pixel_index_t index = parser.intval('I', -1);
#if ENABLED(NEOPIXEL2_SEPARATE)
int8_t brightness = neo.brightness(), unit = parser.intval('S', -1);
switch (unit) {

Loading…
Cancel
Save