Correct pins for APA102 LEDs on ESP8266

Please let me share some insights on how to configure WLED on an ESP8266 with APA102 LEDs connected.

I am not an expert, but thanks to awawa-dev (developer of HyperHDR) I was able to dramatically improve the frame rate with which HyperHDR/Hyperion is sending information to WLED and from there to my Ambilight-LED stripes.

Background was, that I could not increase the frequency inside HyperHDR higher than 20 fps. I am steering 302 APA LEDs and higher rates made WLED completely unresponsive. I was using GPIO2 for data and GPIO04 for CLK. It turned out, that with this set-up WLED was running in a “software SPI mode” which was limiting performance and the frame rate to 20.

For “hardware SPI” on the ESP8266 you need to connect GPIO14: SCLK for the CLK and GPIO13: MOSI for data. I can easily go up to 50 fps in HyperHDR now, even I understood that WLED is limiting to 42 Hz maximum.

Hope that may help others with their configuration.

2 Likes

Use GPIO2 for data and GPIO1 for clock. Ignore the rest.

1 Like

Hello blazoncek
thanks for your feedback!

Actually, I tested several combination of GPIOs, but not the one you are mentioning. I will give it a try.
I also recognized that it is documented like this in the “getting started” .

https://kno.wled.ge/basics/getting-started/

I might get old, but I could swear it looked different in the past.

It was GPIO2 and GPIO0 in the past.

I just spent a lot of time trying to figure this out too. I needed to connect 98 APA102s AND WS2812Bs at the same time.

I tried every GPIO pin and mapped it accordingly
I tried different boards/strips/wires
No matter what, those frigging APA102s would not do ANYTHING

I kept digging through what other people have tried.
I then found THIS fork - WLED_0.11.1_ESP8266_APA102.bin
Then it struck me… I hadn’t tried to flash any other builds of WLED onto any of these boards.
I WAS using - soundReactive_WLED_0.12.0_ESP8266.bin

I then flashed the APA102.bin version to my board and it was as easy as selecting the type of LED and which pins they were connected to. FINALLY!

SO then I said F it - I downloaded the newest version of WLED 13.0 B5 ESP8266
Flashed to my D1 Mini and guess what… that one works too!

2 Things to Remember:
1. Don’t ever use pin D2 on a WeMos D1 Mini for anything (for it is reserved for FLASH)
2. If all else fails, TRY ANOTHER BUILD :wink:

1 Like