0

NeoPixel Stick Stuck on White
Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.

NeoPixel Stick Stuck on White

by wbix on Sun Sep 21, 2014 5:28 pm

Hello!

I have an interesting predicament. I am using a Trinket with a NeoPixel stick and no matter what I do, the strip will light up completely white and not respond to any code on the trinket. I have tried all of the example sketches I could find, and changed the pin number and strip length to fit. I know the trinket is working because I can change the on board LED. I am powering it from a PowerBoost 500+ running off a 2000 mAh Li-Po battery (I connected the power output of the PowerBoost to the batt connections on the back of the trinket). Here are my connections on the Trinket:

Trinket NeoPixel Stick
---------------------------------
Bat+-----------5v
Gnd------------Gnd
#0-------------Din

Thanks!

wbix
 
Posts: 3
Joined: Sun Sep 21, 2014 5:11 pm

Re: NeoPixel Stick Stuck on White

by adafruit_support_bill on Sun Sep 21, 2014 5:49 pm

Post photos showing all your soldering and connections. Also post the code you are using and we'll take a look.

adafruit_support_bill
 
Posts: 67844
Joined: Sat Feb 07, 2009 10:11 am

Re: NeoPixel Stick Stuck on White

by wbix on Sun Sep 21, 2014 6:25 pm

IMG_0426.JPG
IMG_0426.JPG (431.48 KiB) Viewed 3151 times
IMG_0424.JPG
IMG_0424.JPG (499.88 KiB) Viewed 3151 times
IMG_0425.JPG
IMG_0425.JPG (557.31 KiB) Viewed 3151 times

Code: Select all | TOGGLE FULL SIZE
// NeoPixel Ring simple sketch (c) 2013 Shae Erisson
// released under the GPLv3 license to match the rest of the AdaFruit NeoPixel library
#include <Adafruit_NeoPixel.h>

// Which pin on the Arduino is connected to the NeoPixels?
#define PIN            0

// How many NeoPixels are attached to the Arduino?
#define NUMPIXELS      8

// When we setup the NeoPixel library, we tell it how many pixels, and which pin to use to send signals.
// Note that for older NeoPixel strips you might need to change the third parameter--see the strandtest
// example for more information on possible values.
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN);

int delayval = 1000; // delay for half a second

void setup() {
  pixels.begin(); // This initializes the NeoPixel library.
  pinMode(1, OUTPUT);
  digitalWrite(1, HIGH);
}

void loop() {
  // For a set of NeoPixels the first NeoPixel is 0, second is 1, all the way up to the count of pixels minus one.
  for(int i=0;i<NUMPIXELS;i++){
    // pixels.Color takes RGB values, from 0,0,0 up to 255,255,255
    pixels.setPixelColor(i, pixels.Color(0,150,0)); // Moderately bright green color.
    pixels.show(); // This sends the updated pixel color to the hardware.
    delay(delayval); // Delay for a period of time (in milliseconds).
  }
}

wbix
 
Posts: 3
Joined: Sun Sep 21, 2014 5:11 pm

Re: NeoPixel Stick Stuck on White

by davidl13 on Mon Sep 22, 2014 8:31 am

From what I've seen, "whiteouts" are generally the result of a strip's (or ring's) Din peak voltage being too close to the strip's (or ring's) primary power voltage. You can't see the issue with a normal DMM - it requires a scope.

First, always make sure there's a common ground between the strip/ring and the driving device. Try powering the driving device at a slightly reduced voltage relative to the strip/ring. At 5V I usually power the driving device through a couple of 1N4001's. (And always follow the recommendations in the NeoPixel UberGuide.)

I've also noticed that if I power the strip/ring at 3.6V or so (which still gets plenty bright) I no longer need the diodes for the driving device's power.

Note that when you're experimenting with this kind of stuff a full power cycle of the strip/ring and the driving device may be required: I've seen strips/rings appear to get stuck in a whiteout state and ignore the reduced-voltage bitstream. When the strip/ring itself was power cycled it all suddenly "just worked".

I hope this helps. "works for me..."

davidl13
 
Posts: 186
Joined: Fri Oct 25, 2013 10:51 pm

Re: NeoPixel Stick Stuck on White

by jamesmcintoshjr on Mon Sep 22, 2014 9:50 am

having the same problem with a neopixel ring stuck on white, not responding to code, etc. I'm using basically the kit from the photo ring light project (except my 3.7v li-poly was sent out in a different shipment so I have yet to use that battery). I'm running off usb power and have the same thing. 24 pixel ring with a 5v trinket, won't respond to code leveling out the brightness or changing the colour, I guess I'll have to see how it reacts when I get the proper battery.

jamesmcintoshjr
 
Posts: 3
Joined: Mon Sep 22, 2014 9:47 am

Re: NeoPixel Stick Stuck on White

by davidl13 on Mon Sep 22, 2014 10:19 am

Just as a test can you code in a cap to the brightness levels (say, maybe 17) and power everything from 3 1.5V D cells with a 1N4001 to drop the voltage to 3.9 V. Just sayin'...

"Gollum hates the stinky USB power!" ;-)

davidl13
 
Posts: 186
Joined: Fri Oct 25, 2013 10:51 pm

Re: NeoPixel Stick Stuck on White

by wbix on Mon Sep 22, 2014 5:24 pm

I could only find 2 of those diodes lying around. Do you think that will be enough? Also, I am curious to know how that drops the voltage (being somewhat of a beginner).

Just to confirm, I should connect the diodes in series on the power running to the control device, right?

Thanks

wbix
 
Posts: 3
Joined: Sun Sep 21, 2014 5:11 pm

Re: NeoPixel Stick Stuck on White

by adafruit_support_bill on Mon Sep 22, 2014 6:13 pm

When using a single supply like that, we generally we recommend running power and ground directly to the pixels and then run wires from there back to the microcontroller. That will ensure that the Neopixel power voltage is at least as high as the signal voltage.

With the power daisy-chained from the processor to the Neopixels as you have it, there will be a voltage drop on the power wires from the microcontroller to the pixels proportional to the current being drawn. Since there is negligible current on the signal wire, the voltage drop on that will be negligible as well.

adafruit_support_bill
 
Posts: 67844
Joined: Sat Feb 07, 2009 10:11 am

Re: NeoPixel Stick Stuck on White

by davidl13 on Mon Sep 22, 2014 6:57 pm

In this case you can think of a diode as a "one-way resistor". It allows current flow in only one direction with some voltage drop (~0.6 V here). Two in series is perfect for this experiment, just be aware of the diodes' orientation/polarity. If they aren't right you'll get no voltage.

davidl13
 
Posts: 186
Joined: Fri Oct 25, 2013 10:51 pm

Re: NeoPixel Stick Stuck on White

by ElectronicOz on Fri Sep 26, 2014 4:03 am

Don't want to but in, but Do you have the resistor on the data line?

Also the setup string doesn't look right.

The line I use is like this:
Adafruit_NeoPixel strip = Adafruit_NeoPixel(LED_Loop, PIN, NEO_GRB + NEO_KHZ800);

And be sure that last part is right. I had/used the "OLD" KHZ400 and the ring went nuts.

ElectronicOz
 
Posts: 71
Joined: Fri Jun 20, 2014 7:13 pm

Re: NeoPixel Stick Stuck on White

by adafruit_support_bill on Fri Sep 26, 2014 6:05 am

If not specified, the third parameter of the constructor defaults to NEO_GRB + NEO_KHZ800.
https://github.com/adafruit/Adafruit_Ne ... NeoPixel.h

Code: Select all | TOGGLE FULL SIZE
  Adafruit_NeoPixel(uint16_t n, uint8_t p=6, uint8_t t=NEO_GRB + NEO_KHZ800);

adafruit_support_bill
 
Posts: 67844
Joined: Sat Feb 07, 2009 10:11 am

Re: NeoPixel Stick Stuck on White

by davidl13 on Fri Sep 26, 2014 3:01 pm

Don't want to but in...


Not at all, that's an important point that definitely should be checked. I was trying to describe to them what I'd been seeing recently and was assuming (!) they each had the resistor in place.

I do wish they'd report back with success or not...if only for the benefit of future readers.

davidl13
 
Posts: 186
Joined: Fri Oct 25, 2013 10:51 pm

Re: NeoPixel Stick Stuck on White

by jamesmcintoshjr on Fri Sep 26, 2014 6:11 pm

so, received the 3.7v lipo battery, so now I have all the parts from the camera ring light kit, everything is wired up correctly, I've gotten the trinket to respond to the blink sketch, and I've loaded the code from the learnign project tutorial. I get my neopixel to light up no problem same as before. I've even changed the pin out to 1, and changed the data input wire to 1 on the trinket and it works fine, so the trinket is seeing some of the code. I modified the code to this to get a different colour out of the neopixel-

Code: Select all | TOGGLE FULL SIZE
#include <Adafruit_NeoPixel.h>


#define N_PIXELS  24  // Number of pixels you are using
#define LED_PIN     1 // NeoPixel LED strand is connected to GPIO #0 / D0

Adafruit_NeoPixel  strip = Adafruit_NeoPixel(N_PIXELS, LED_PIN, NEO_GRB + NEO_KHZ800);

void setup() {
  strip.begin();

  //  you can change the brightness to lower if its too bright!
  strip.setBrightness(255);                // Set LED brightness 0-255
  colorWipe(strip.Color(0, 125, 180),0); // fill the strip with all white
  strip.show();                            // Update strip
}

void loop() {
}

// Fill the dots one after the other with a color
void colorWipe(uint32_t c, uint8_t wait) {
  for(uint16_t i=0; i<strip.numPixels(); i++) {
      strip.setPixelColor(i, c);
      strip.show();
  }
}

and still nothing, can't unstick the neopixel from white. Tried a few other things like lighting up select pixels, nothing. Do I have a bad neopixel ring?
Last edited by adafruit_support_bill on Sat Sep 27, 2014 5:42 am, edited 1 time in total.
Reason: please use the </> button when submitting code. press </>, then paste your code between the [code] [/code] tags.

jamesmcintoshjr
 
Posts: 3
Joined: Mon Sep 22, 2014 9:47 am

Re: NeoPixel Stick Stuck on White

by ElectronicOz on Fri Sep 26, 2014 6:31 pm

I'm not a rocket scientist, but here's what I see:

Code: Select all | TOGGLE FULL SIZE
void loop() {
}

// Fill the dots one after the other with a color
void colorWipe(uint32_t c, uint8_t wait) {
for(uint16_t i=0; i<strip.numPixels(); i++) {
strip.setPixelColor(i, c);
strip.show();
}
}





void loop() {
}
That is wrong.
Why have an open { and the close } straight after each other?


void colorWipe(uint32_t c, uint8_t wait) {
for(uint16_t i=0; i<strip.numPixels(); i++) {
strip.setPixelColor(i, c);


Where is C defined/declared/what ever?



Try this one:

(MODIFY the required pins)

Code: Select all | TOGGLE FULL SIZE
/*

Test of NeoPixel Ring
This code should show one White LED stepping around the ring

*/

#include <Adafruit_NeoPixel.h>

#define LED_Loop 16

#define PIN 6    // This is defining which Arduino pin is driving the Pixel ring

// Parameter 1 = number of pixels in strip
// Parameter 2 = Arduino pin number (most are valid)
// Parameter 3 = pixel type flags, add together as needed:
//   NEO_KHZ800  800 KHz bitstream (most NeoPixel products w/WS2812 LEDs)
//   NEO_KHZ400  400 KHz (classic 'v1' (not v2) FLORA pixels, WS2811 drivers)
//   NEO_GRB     Pixels are wired for GRB bitstream (most NeoPixel products)
//   NEO_RGB     Pixels are wired for RGB bitstream (v1 FLORA pixels, not v2)
Adafruit_NeoPixel strip = Adafruit_NeoPixel(LED_Loop, PIN, NEO_GRB + NEO_KHZ800);

//==================================================================
void setup()
{
  // put your setup code here, to run once:
  Serial.begin(9600);
  strip.begin();
  strip.setBrightness(128);
//  strip.show(); // Initialize all pixels to 'off'
  delay(2000);
  // 
}

//==================================================================
void loop()
{
  for (byte i=0;i<LED_Loop;i++)
  {
    Serial.println(i);
    strip.setPixelColor(i, 0x0AAAA0);
    strip.setPixelColor(i-1, 0x000000);
    if (i == 0)
    {
      strip.setPixelColor(Loop, 0x000000);
    }
     
    strip.show();
    delay(1850);
  }
}
Last edited by adafruit_support_bill on Sat Sep 27, 2014 5:44 am, edited 1 time in total.
Reason: please use the </> button when submitting code. press </>, then paste your code between the [code] [/code] tags.

ElectronicOz
 
Posts: 71
Joined: Fri Jun 20, 2014 7:13 pm

Re: NeoPixel Stick Stuck on White

by davidl13 on Fri Sep 26, 2014 8:32 pm

@jamesmcintoshjr: did you try what I suggested above and if so, what were the results?

davidl13
 
Posts: 186
Joined: Fri Oct 25, 2013 10:51 pm

Please be positive and constructive with your questions and comments.