Issue with LPD8806, Teensy 3.2, Software SPI,

Issue with LPD8806, Teensy 3.2, Software SPI, and a code pull from a few days ago. The problem I’m seeing I think was reported back in versions 2.x where the LEDs on the strip are washed out and the examples don’t seem to work.

If I keep the hardware exactly the same but switch to an Adafruit LPD8806 library the strip performs correctly (well my color order is RBG, not RGB). With there code I can see the colors move down the entire strip and I see red, blue, and green but with FastLED all I see is kind of a pale washed out color and only occasional movement.

I thought I would post here first before adding an issue on the repo.

George, are you using a level shifter?

No, these are wired directly into the Teensy. Exact same hardware setup works with this library, https://github.com/adafruit/LPD8806 but you’re right, I should be using a level shifter. I just got in a bunch of different strips and panels though and so far everything has worked except for these old LPD8806 strips

I have a 32 pixel LPD8806 strip (with a Teensy 3.2) I use all the time for testing and I had to add a level shifter. Give it a try.


I’ll dig one up and try but if it was a level problem I wonder why the Adafruit library works?

Not sure. Slight differences in the timings each library uses maybe?
Are you using the same pins for data and clock in both cases?

Yes, in fact I don’t change anything but reprogram the Teensy

I added the level shifter and that didn’t work. On a whim I decided to try using the hardware SPI pins and that did the trick. So in case anyone comes across this connect to pins 11 & 13 on your Teensy 3.2 and then just use

FastLED.addLeds<LPD8806, RGB>(leds, NUM_LEDS);

when you define your strip and it will use the hardware SPI pins.

Not sure why bit banging the signals didn’t work as the timing didn’t seem too tough but at least it now works.

Now to figure out the WS2815!

Cool, glad you sorted it out. You should be able to use other pins with software SPI though. Which pins were you using?

I’ve got that computer off now but it was either 2/3 or 3/4

Teensy 3.2 pins 3 and 4 is TX and RX so perhaps there could have been some sort of interference there?

I might revisit this tomorrow and test with some different pins. I’ll report back and post if I find anything