WS2811 LED Strip and WEMOS D1 Flickering

Hey All,

Having a bit of trouble with one of my projects. I have a strip of WS2811 12V LEDS to use a a Strip Stair Light with PIR’s. I had the project working as a prototype, and all i have done is move all the components closer together and implemented a secondary 12v to 5v power supply for the Wemos.

Bascially, i get flickering as per this video: Link to Video

Wiring Diagram:

Other Photos of the Board Layout:

I have tried:

  • Checking Grounds
  • Checking Voltages
  • Powered Wemos from just USB 5V
  • Reterminated Data Cable to LED Strip

Open to ideas?

Depending on what ESPHome comonent you’re using to control D6, the PWM frequency may need to be changed to be compatible with the LED strip’s input.
Can you post your YAML file here? That would answer my guess here, and could help us all think of more suggestions.

Thanks - The code was working before i combined all the modules together. I’m thinking it must be some sort of capacitance issue or something.

esphome:
  name: top-floor-stairlights
  platform: ESP8266
  board: d1_mini

# Enable logging
logger:

# Enable Home Assistant API
api:

ota:
  password: "*******************"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_passphrase

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Top-Floor-Stairlights"
    password: "**********"

captive_portal:

binary_sensor:
  - platform: gpio
    pin: 
      number: GPIO13 #D7
#      mode: INPUT_PULLDOWN
    name: "Stairlight Top Motion"
    device_class: motion
  - platform: gpio
    pin: 
      number: GPIO15 #D8
#      mode: INPUT_PULLDOWN
    name: "Stairlight Bottom Motion"
    device_class: motion
light:
  - platform: fastled_clockless
    chipset: WS2811
    #pin: GPIO2 #D4
    pin: GPIO12 #D6
    num_leds: 45
    rgb_order: BRG
    name: "Top Floor Stair Lights"
    effects:
      - random:
          name: "Fast Random Effect"
          transition_length: 4s
          update_interval: 5s
      - addressable_color_wipe:
          name: "Colour Order Test"
          colors:
            - red: 100%
              green: 0%
              blue: 0%
              num_leds: 3
            - red: 0%
              green: 100%
              blue: 0%
              num_leds: 3
            - red: 0%
              green: 0%
              blue: 100%
              num_leds: 3
      - addressable_color_wipe:
          name: "Wipe Up"
          colors:
            - red: 100%
              green: 0%
              blue: 0%
              num_leds: 1
      - addressable_color_wipe:
          name: "Wipe Off Up"
          colors:
            - red: 0%
              green: 0%
              blue: 0%
              num_leds: 1
      - addressable_twinkle:
          name: Twinkle Effect With Custom Values
          twinkle_probability: 5%
          progress_interval: 4ms

It’s most likely switching noise from that 12V to 5V buck converter.

Things to try:

Add a 0.1uF capacitor in parallel with +12V and GND as close as possible to the LED strip. One of the unused set of strip cutting pads would be ideal.

A ferrite choke around the LED data, +12V and Ground cables as close to the strip as possible. A clip on one like this:

rugged-radios-clamp-on-rf-noise-reducing-filter-choke-clip-176422_grande

Thanks. I’ll have a look at that. But the same thing occurs when i power the Wemos directly off the USBPort

Is that with the DC-DC converter powered down?

I had similar situation with esp32, powered from dc/dc. What helped to me was 470uF electrolite and 100nF ceramic capacitors on 5V side of dc/dc, near as possible to esp32.

Thanks All,

I did some more investigation and experimentation last night. I ended up using a shielded cable for the Data line from the Wemos to as close to the strip as possible. I then grounded one end.

Seems to be working ok now.

2 Likes