Skip to content

SK6812 / RGBW strips flicker on dense frames #79

Description

@ewowi

Summary

Flickering reported on SK6812 / RGBW strips driven by ParallelLedDriver. Two independent reports:

  • @limpkin (maker of the SE16 and LightCrafter boards): flickering with RGBW strips, present even on wires under 5 cm.
  • @ewowi: flickering reproduced on a LightCrafter 16, initially only on a long (400 cm) data wire.

The question this issue tracks: is this inherent to the hardware, or can the LED driver timings be adjusted to fix it?

Symptoms

  • Worse on dense frames (many lit lights); much less visible, sometimes absent, on sparse frames.
  • Corruption appears as wrong colors, notably white pixels in a frame containing no white, which means mis-decoded bits rather than a brightness or refresh artifact.
  • Affects one lane at a time while other lanes of the same parallel driver render perfectly.

Setup under test

Board LightCrafter 16 (ESP32-S3, esp32s3-n8r8)
Driver ParallelLedDriver, direct I80 path (pinExpander=false, peripheral=0)
Strips SK6812 RGBW, 144 lights per tube, whiteMode=1, preset GRBW
Timing T0H 375 ns / T1H 750 ns (pixel clock 2.67 MHz, 3 bus slots per bit)

Why this is not obviously a timing problem

All lanes of the parallel driver are bits inside a single shared bus word: one encoder, one peripheral, one DMA transfer, one pixel clock. A timing or encoding fault would therefore corrupt every lane equally. A symptom that appears on one lane while its neighbors are clean cannot originate upstream of the GPIO pin.

That constraint is what the investigation in the comment below is built around.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions