ESP32-C3 GPIO21 always High

I’m trying to use WLED with GPIO21 on an ESP32-C3 (specifically the Adafruit QT Py). However, it appears that the pin is always being pulled high. If I use a different pin the LEDs are controlled correctly and there’s an 800KHz signal on that pin. If I select GPIO21 I only measure a ~50Hz signal (likely coupling from the mains). If I select a different pin for the LEDs I can still measure 3.3V on GPIO21.

GPIO21 happens to be the debug TX pin if compiled with -DWLED_DEBUG, but I’m not compiling with that option.

I’m driving three LED strings in total, and if I change the order in the settings so GPIO21 is output 1 it works fine, but the 3rd strip doesn’t work (GPIO21 was the 3rd strip originally).

So I don’t think the issue is with GPIO21, but rather the use of 3 strings (irrespective of whether one string is on GPIO21 or not)

You realize that all of the new ESP32 devices are early alpha, right? :wink:

Yes, that’s why I’m testing it out and reporting bugs I find.

1 Like

I ran into the same problem. According to some documentation i ran across, It seems that GPIO21 can only be an output. GPIO20 can be input or output.

Please check schematics of your dev boards. It may become obvious why.

:thinking: mmmm