How do I know if I need a level shifter?

The wiki says:

If this wire cannot be kept short, use a level shifter/translator. Optionally connect a normally open pushbutton to GPIO0 (NodeMCU/Wemos pin D3 ) and ground.

How do I know how “short” it needs to be?
I am planning on using a separate 12V 30A power supply to run my 500 WS2811 12V LEDs and I’ll power a ESP32 D1 mini using a 5V USB Micro cable and brick.

I am interested to hear how “connecting a normally open pushbutton to GPIO0 (NodeMCU/Wemos pin D3 ) and ground.” helps here vs. using a level shifter. Also if I just hook it up without a level shifter do I still need to use a 470Ohm resistor as described in the diagram here:

Thanks for your help,

Short is under a few inches (8cm).

The button is not related to the level-shifter. :wink:

There are too many unique GND’s in your posted image.
The 12V and 5V supply GND lines need to be interconnected. Otherwise, things will make you unhappy immediately, or eventually (within a short period of time after starting an effect).
Once the difference in voltage between the 2 GNDs is significant, the data signal will appear weaker to the LED strip, or too strong. Too strong may burn out the first LED. Too weak and the first LED may never accept any of the data signals.

Hi Huggy,

I grabbed that image from the wiki:

Can I use a buck converter (such as to go from my 12V power supply to my 5V ESP32 w/o needing to use a level shifter/translator and have them use the same ground from the 12V PSU?

The simple solution is to run a wire from the GND wires of the 2 power supplies.

Less simple but equally useful is to use a WAGO style connector to jumper all the GND wires together. Something similar to this:

5V supply GND, 12V GND, ESP32 D1 Mini GND, Level Shifter GND, LED Strip GND (5 wires)

And in an ideal world, the wall outlet GND wire to the 0V/GND of both supplies should be connected together as well. Otherwise, the 0V / GND of the entire system could develop a voltage to ground, and when anyone touches anything grounded in the system, ESD could cause damage.

Look at this project

A quick 15 min diode level shifter hack for the Peace Penguin Alpha mod. It worked great while I was waiting for a QuinLED-Dig-Quad setup. A 330R resister can be added to the
pixel data output for more stability. I was able to achieve non flicker runs of over 5m.