neopixel / w2812 and wipy 3.0
Holidays are coming so I thought I through a fun project into the pipeline which of course resulted more frustration :D
So, I suprised myself a this light strip. And would like to controll it with one of my trusty wipy 3.0 board. Right now I am using this library, but I tried out all of what I found so far.
The issue is that that leds do nothing. I am powering them externaly, with 5V. I measured, 5V appear on the led strip. So thez getting power for sure.
I have common ground with all of the 3 components (power, led, wipy3.0)
The pin what I am using is the MOSI pin, P11 on the extension board.
What am I missing? Why are the led-s are dark?
Help me save Christmas :D
@tttadam We all have these kind of findings over and over again.
I found the issue, it was the third reasons. I tried to feed the light strip from the other end. My bad. :(
@tttadam There are at least two possible reasons: Signal level or timing:
- Signal Level: You could try to use a level shifter, to sort out 3.3v/5V level issues. If you have a silicon diode at hand, you can also try to reduce the 5V supply a little bit, bringing the signal levels together.
- Timing: Besides that there are versions with a different timing on the market. You could try to change that. In the line:
b'\x08\x04' if byte & mask else b'\x04\x08'
the timing is set to 800/400ns. 08 means 800ns, 04 400ns. Someone made a list of various timings by mode:
https://forum.micropython.org/viewtopic.php?f=15&t=7276&hilit=WS2812&start=10. So you can try the other values. Generally, the timing is not too critical.
Well, the issue is the same. The code is running, but the leds are staying blank
@tttadam The RMt module of the Pycom MP is excellent for WS2812 support. I made a tiniy class around that, to be found here: https://github.com/robert-hh/WS2812