Use WS2801 with PIN4 and Neo800KbpsMethod

Hello,

I am trying to get one LED working with WLED.

My config:

#define LEDPIN 4
#define DATAPIN 4
IR_PIN -1
#define USE_WS2801

But it does not work. This simple script here works fine:

any help is highly appreciated:

const uint16_t PixelCount = 1;
const uint8_t PixelPin = 4;
#define colorSaturation 255 // saturation of color constants
#include <NeoPixelBrightnessBus.h>
RgbColor red(255, 0, 0);
RgbColor green(0, 255, 0);
RgbColor blue(0, 0, 255);
NeoPixelBrightnessBus<NeoRgbFeature, Neo800KbpsMethod> strip(PixelCount, PixelPin);
void setup(void) {
Serial.begin(115200);
strip.Begin();
strip.Show();
}
void loop(void) {
strip.SetPixelColor(0, red);
strip.Show();
delay(2000);
strip.SetPixelColor(0, green);
strip.Show();
delay(2000);
}

You have to use VScode with PlatformIO. In this case you can chage type of LED strip and pinout easy.

so you mean the changes in the file “npbWrapper.h” inside Arduino IDE are not working, I have to use VScode with PlatformIO to make config changes?

it might work or not but using PlatformIO is much easier. You have to config one file platformio.ini and everything should work just fine. At least it’s tested.
[env:custom_WS2801]
board = d1_mini
platform = {common.platform_latest} board_build.ldscript = {common.ldscript_4m1m}
build_flags = ${common.build_flags_esp8266} -D USE_WS2801 -D CLKPIN=13 -D DATAPIN=4

1 Like