Uno controlling 12v addressable LED strips, I got it kinda working...

I am working on a project using 12v LED strips., and running into a problem… This is my first post here, and from all of my lurking and reading - this seems like an awesome community. Happy to be part of it!
Here is the LED strip Im using ( http://www.jaycar.com.au/productView.asp?ID=SL3954 )

After 5 minutes playing with the included controller, I cut it off and attached the 12v 5amp power supply directly to the strand of LED’s, and popped my uno on the data line. I ran Adafruits Neopixels example, and lo and behold they started flashing! After hours of trouble shooting and playing around I have solved a few problems (common ground and whatnot) But I am stuck now.

I am trying to make a block of LED’s chase down the strand, but when I run my program it doesnt work, the LED’s just kinda randomly light up until the whole strand is lit. I can make it do what I want by rapidly disconnecting and reconnecting the 12v power from the strand, then it works like a charm and the block of light moves down like a treat. This strand has no clock, the 4 pins are

VCC (12)
GND
GND
DIN

Im pretty sure its not code related, but who knows. Here is my code, and some pictures. The code is a hardly modified slimmed down example from AF, I have tried changing to 400mhz - then nothing happens at all.

#include <Adafruit_NeoPixel.h>
 
#define PIN      6
#define N_LEDS 50
 
Adafruit_NeoPixel strip = Adafruit_NeoPixel(N_LEDS, PIN, NEO_GRB + NEO_KHZ800);
 
void setup() {
  strip.begin();
  strip.show();
  
}
 
void loop() {
chase(strip.Color(255, 0, 0)); // blue
  //chase(strip.Color(0, 255, 0)); // Green
  //chase(strip.Color(0, 0, 255)); // red?
  
}
 
static void chase(uint32_t c) {
  for(uint16_t i=0; i<strip.numPixels()+4; i++) {
      strip.setPixelColor(i  , c); // Draw new pixel
      strip.setPixelColor(i-4, 0); // Erase pixel a few steps back
      delay(50);
      strip.show();
      delay(20);
  }
}

Here are some pics of my very basic setup.

Any idea why it wont chase unless I pulse the power to the strip?

Thanks so much!

Yes those connectors into the arduino are very poor. Use a proper header pin for both signals and ground and solder them up. I fixed someone's set up exactly like this only two weeks ago.

Grumpy_Mike:
Yes those connectors into the arduino are very poor. Use a proper header pin for both signals and ground and solder them up. I fixed someone's set up exactly like this only two weeks ago.

Is it really that sensitive? I had a few issues when my ground wire was running against the data line, but I lenthened my leads and figured that fixed it. I guess not!
So you reckon I should solder my data line to a header pin, and plug it in? Instead if just plugging the data line wire into the arduino? Or solder direct to the board...
Thanks for the quick reply!

I cleaned up the wiring, soldered it all to an empty shield! And no difference. If I pulse ground to the LED strip it works... but other than that its stuck. Anyone? :~

Looking at that picture I can’t see any ground connected to the arduino.
Can you take a picture of your new layout please.

I bought some Alarmpore 12v strings from Amazon, only to find out the LEDs are not individually addressable, but addressable in blocks of 3. This means turning on LED #24 in a string 75 pixels long turns on the last 3 pixels in the string. Conversely, turning on pixel #0 turns on the first three.

R. Brewer

Post a clear, close up picture of one of the sections so we can see what you're dealing with
Make sure the control chip is readable.

rbrewer:
I bought some Alarmpore 12v strings from Amazon, only to find out the LEDs are not individually addressable, but addressable in blocks of 3. This means turning on LED #24 in a string 75 pixels long turns on the last 3 pixels in the string. Conversely, turning on pixel #0 turns on the first three.

R. Brewer

Is their a question here? That is how they will behave. This was a three year old dead thread you resurrected, why?

rbrewer:
I bought some Alarmpore 12v strings from Amazon, only to find out the LEDs are not individually addressable, but addressable in blocks of 3. This means turning on LED #24 in a string 75 pixels long turns on the last 3 pixels in the string. Conversely, turning on pixel #0 turns on the first three.

You get what you pay for.
12volt addressable strips use one driver per three LEDs.
5volt addressable strips use one driver chip per LED.
Leo..