ESP32 with DMX Output TypeError when LED count changed

Using version 0.13.2-a0 with DMX output enabled and custom compiled. As soon as I change the LED count on the config page to 600 I get an error: "TypeError : Cannot read properties of undefined (reading’shift’) and the main control page and the LED config page will not load.

The only settings I have modified for the custom compile are adding my wifi info in my_config.h and enabling DMX by uncommenting per the instructions. I am compiling with the esp32dev option (interestingly if I set this to d1_mini and upload to a ESP8266 everything functions as expected, I just need more processing for this project and I need it on one processor hence the ESP32).

Performing a factory reset on the Security and Update setup page clears the error until I try again.

I have tried setting the DMX pin in the SparkFunDMX.cpp file to 17 instead of 2 (this is what they have on their GIT page as the default pin) and the error persists. I thought I’d ask and see if anyone has experienced a similar error before diving into a deeper rabbit hole of my own troubleshooting.

How did you flash it?

Flashed with pio from VS Code

I think I found my issue. If I change the DMX start address to 600 and then add 606 LED’s in the LED config page (2 different GPIO’s, 600 for one and 6 for the other) I no longer get the error. My guess is there is an issue with more than 512 DMX channels.

Isn’t that a Universe thing?

Thank you @jakepeery for the update, I had the same problem and fixed it by doing the same thing as you. I only have 120 leds however, so I don’t think the issue is exceeding 512.

I would also add that it’s better to change DMX proxy universe to 1 before configuring LED and DMX settings, and changing it back to 0 when you’re finished. I figured out that if you don’t do that and you configure those menus with incompatible data (or even correct data but in the wrong order, very weird) the WLED firmware crashes and you have to flash your board all over again…
So I strongly recommend to do this extra step, just to be safe.