Neopixel Ring x24

EL Wire/Tape/Panels, LEDs, pixels and strips, LCDs and TFTs, etc products from Adafruit

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
theguitarman
 
Posts: 19
Joined: Wed Feb 14, 2018 6:31 pm

Neopixel Ring x24

Post by theguitarman »

I am working with the Neopixel Ring x24 5050 RGB LED with Integrated Drivers. There are two odd behaviors.

I powered it with 5V from a 5V 10A switching power supply, with a 2200uF 25V capacitor across the leads. I connected ground from the power supply to the Ring, as well as to the GND input of an Arduino. The Arduino is powered from my laptop USB. The Data In pin of the Ring is connected to pin 6 of an Arduino Mega with a short wire and a 330 Ohm resistor.

I loaded up the Neopixel library example called strandtest, changed the number of LED_COUNT to 24, and uploaded the to the Mega. First thing I noticed was that only 18 of the 24 LEDs were lighting up and doing anything. There was a block of 6 that stayed dark.

I modified the code to set all LEDs to a dim white (shown below). The same 18 LEDs lit up dim white.

for(int i=0; i<strip.numPixels(); i++) { // For each pixel in strip...
strip.setPixelColor(i, strip.Color(12, 12, 12)); // Set pixel's color (in RAM)
strip.show(); // Update strip to match
}

I next tried to get all 24 to light up bright white. I increased LED_COUNT to 29. 4 more LED's lit up dim white (which is odd). I changed LED_COUNT to 30, and I get 22 dim white LEDs, one LED that is still off, and one LED that is green.

I changed the code to just turn off all LEDs (shown below), and the original 18 turned off, but other 6 stayed on/white.
strip.begin(); // INITIALIZE NeoPixel strip object (REQUIRED)
strip.show(); // Turn OFF all pixels ASAP

One last test, with the LED_COUNT set back to 24, I tried to make all of the RGB LEDs turn red with the code below, but they all just turn Red, Green, or Blue.

for(int i=0; i<strip.numPixels(); i++) { // For each pixel in strip...
strip.setPixelColor(i, strip.Color(255, 0, 0)); // Set pixel's color (in RAM)
strip.show(); // Update strip to match
}

Please help me figure out what I am missing! Thank you

User avatar
dastels
 
Posts: 15670
Joined: Tue Oct 20, 2015 3:22 pm

Re: Neopixel Ring x24

Post by dastels »

Is the ring RGBW by any chance?

Dave

User avatar
theguitarman
 
Posts: 19
Joined: Wed Feb 14, 2018 6:31 pm

Re: Neopixel Ring x24

Post by theguitarman »

Yes, it is RGBW.

After you asked that question, I finally saw in the example that I need to define the Adafruit_Neopixel as:

Adafruit_NeoPixel strip(LED_COUNT, LED_PIN, NEO_GRBW + NEO_KHZ800);

as opposed to NEO_GRB, which is set by default.

Thank you for the help.

User avatar
dastels
 
Posts: 15670
Joined: Tue Oct 20, 2015 3:22 pm

Re: Neopixel Ring x24

Post by dastels »

Good. The wrong number of pixels lighting up and/or seemingly random colors can often mean the wrong "order" parameter... either the wrong RGB order, or not being rgbW when it should be (or being when it shouldn't).

Dave

Locked
Please be positive and constructive with your questions and comments.

Return to “Glowy things (LCD, LED, TFT, EL) purchased at Adafruit”