Anyone successfully running FastLED with ESP32 using parallel or multipin output?

fastled-support
gplus
(Ray Bellantoni) #1

Anyone successfully running FastLED with ESP32 using parallel or multipin output? I have tried RMT, core changes and more, but not able to suppress flicking with minimal WiFi and MQTT traffic. Single pin works fine. Any references suggested?

(Jeremy Spencer) #2

I’ve got an ESP32 project running with parallel output (12 way). I used @Yves_BAZIN 's fork. I had to add null pixels but other than that it’s great. I do only use @Jason_Coon 's webserver on the WiFi, no MQTT yet.

(Marc MERLIN) #3

I use 16 way output on esp32 but I had to use level shifters to kill flickering

(Ray Bellantoni) #4

I’m using a 74HCT245 for level shifting. All works fine when programmed for single pin, flickering occurs when I enable multiple pins

(Marc MERLIN) #5

If you are doing parallel output with Yves’ fork, you are using software generated waveforms done by the CPU, which indeed didn’t work reliably for me until I put a level shifter, but you’re already doing that.
I also found that if I use the RMT driver from https://github.com/samguyer/FastLED.git it didn’t flicker even without level shifters.
So you may want to try switching drivers.

(Marc MERLIN) #6

Made a new post showing how to use both drivers if you want to switch http://marc.merlins.org/perso/arduino/post_2018-07-30_Building-a-64x64-Neopixel-Neomatrix-4096-pixels-running-NeoMatrix-FastLED-IR.html#esp32driver

(Ray Bellantoni) #7

@Marc_MERLIN Is Sam’s RMT different from the FastLED 3.2 version? I thought that was included (trying to avoid branch releases where possible)

(Marc MERLIN) #8

@Ray_Bellantoni they should be close enough, if not identical. I haven’t checked recently. @Sam_Guyer can say more or you can diff the trees.

(Ray Bellantoni) #9

@Marc_MERLIN and @Jeremy_Spencer , wanted to thank you for your feedback. Problem was a coding error, defining rmt after FastLED include instead of before. No special fork of FastLED needed. Though with MQTT and wifi, I needed to move show () to core 1. Now on to the creative part!