having to find an old version of Fastled_spi cause the current installation uses 12v

having to find an old version of Fastled_spi cause the current installation uses 12v pixels that were sourced by the client, who “guarantees” that the leds are ws2812…

…happen to be LPD6803.

Maybe here:
https://github.com/FastLED/FastLED/archive/archive/FastSPI_LED2.zip

yeah, i’ve got the library. v1…
thanks!
anyone remember how to use this one?
the lpd has a clock and data (or eloquently named DI- DI+ DO- DO+ which looks to be clock and data in and out…

and would be, if they were wired logically…

time to cable split and see what happens.

Hi Kelvin, I dug out some old LPD6803 code, my strip was labelled Din, Cin, Gnd, +12v, don’t think it had Dout, but it might have at the other end?.

Wiring that I did was +12v and Gnd to external 12v power supply, Din to pin 11 of Arduiono UNO, Cin to pin 13 of Arduino UNO for use with Fastspi_led (v1 I think). Also, there was some information at LPD6803 RGB LED Strip with an Arduino - Electrical Engineering Stack Exchange

Mine was one of the strips where you could only control blocks of 3 leds…

Not sure if any of that will help, but hopefully it will. Here’s the top of the code I had which has the correct order of the CRGB etc.:

// Sometimes chipsets wire in a backwards sort of way
struct CRGB {
unsigned char b;
unsigned char r;
unsigned char g;
};
// For normal lights it would be thus:-
// struct CRGB { unsigned char r; unsigned char g; unsigned char b; };

struct CRGB *leds;

#define PIN 4

void setup()
{
FastSPI_LED.setLeds(NUM_LEDS);
FastSPI_LED.setChipset(CFastSPI_LED::SPI_LPD6803);
FastSPI_LED.setPin(PIN);
//FastSPI_LED.setDataRate(6); // Don’t need this for my LPD6803 strip.
FastSPI_LED.init();
FastSPI_LED.start();

leds = (struct CRGB*)FastSPI_LED.getRGBData();
}

hi, and thanks! that kinda makes me feel better about what i’ve been doing!

i realise that the spi is hardcoded in the UNO to 11 and 13. in my nano its linked to 3 and 4.

the pin definition #define PIN 4 doesn’t seem to do anything!

ive spent some time attaching to the di+/- and the do+/-… i think ive come to a conclusion that its configured for dmx.

#defin PIN 4 was used later in the code in FastSPI_LED.setPin(PIN) line. No idea why though, it’s a long time since I copy-pasted that code with limited understanding :slight_smile:

heh! after the complete destruction of one of the plastic and resin covered pixels, i found that there was no driving chip, on the board, or directly attached to the led… but there was a serial chip.
this happens to be the setup for dmx, and aren’t independently controllable!

again, thanks though!

Ah, good that you worked it out in the end, and now if you ever have a need for some LPD6803 driving code and wiring help in the future (as if :)) it’s here for you.