ESP8266 works fine when powered via FTDI but not when powered externally

I have my ESP8266 hooked up to SparkFun's FTDI basic board and I can talk to it directly connecting to it via picocom. I ran a python test script I found on github to make a server with the ESP and works wonderfully.

The problem arises when I try to power the ESP with my benchtop power supply. What I did was unhook the 3V3 cable from the FTDI board and attach it to the red alligator on the bench top supply (same goes for GND). The minute I do this, the ESP just starts transmitting garbage. Googling around, people mentioned that the external power supply's GND should be hooked up to the FTDI's supply but this doesn't help the situation.

The external power supply reads 3V and 0.04A when connected to the ESP. Other external power supplies I tried were two 3.3V breadboard power adapters connected to a wall wart. Each with same results as above.

My currently WORKING setup is:
FTDI 3V3 ---> ESP VCC
FTDI 3V3 ---> ESP CH_PD
FTDI GND ---> ESP GND
FTDI RX ---> ESP RX
FTDI TX ---> ESP TX

Note: I also have a 100uF, 10uF, and 100nF capacitors between 3V3 and GND. If I remove these, the ESP gets stuck in a continuously rebooting loop.

My NON WORKING setup is:
Ext supply 3V3 ---> ESP VCC
Ext supply 3V3 ---> ESP CH_PD
Ext supply GND ---> ESP GND
FTDI RX ---> ESP RX
FTDI TX ---> ESP TX

What am I doing wrong?

You have to connect all GNDs.

So in your setup it is missing:

Ext supply GND ---> FTDI GND

or

ESP GND ---> FTDI GND

Edit: And you need a stable power supply. The ESP needs up to 250 mA when transmitting. I have used several ESPs with "external power" without problems.

btw: I always connected ESP RX with FTDI TX and ESP TX with FTDI RX but this might be a labeling issue :)

usxomm, thanks for the prompt reply.

I tried tying all the GNDs together and while that stops the garbage, the ESP goes into a weird state where the power LED goes really dim and does nothing else. The blue LED just goes dark.

Power supply: I'm using my benchtop power supply that, while small, it can handle up to 1.5A without breaking a sweat. I'm not sure how to measure how stable it is though. I'll hook up a battery holder, try with a new battery and see if that changes anything.

RX-TX: I thought it was weird too but it doesn't work the other way around. I'm sure it's a mislabeling in the silk screen as I've seen other people online who need to connect them this way too.

RX-TX: I thought it was weird too but it doesn’t work the other way around. I’m sure it’s a mislabeling in the silk screen

No mistake at all. On some equipment TX is an output and on others it is an input. The same goes for RX.
You must always wire an input to an output, never two outputs together.

What make a TX an input or an output is how the communication equipment is defined as a DTE or a DCE.
See:-

Ah, thanks Grumpy_Mike for clearing that up!

In the meantime... still can't get this damned thing to work :(

which module do you have (there are many)

take out your meter and make sure gpio0 reads 3.3v, gprio15 reads 0v and gpio2 reads3.3v. If not you need some pull up/pull down resistors.

also, don't hook anything up to gpio16 if that is broken out.

if by transmitting you mean from the esp8266 with external power to the ftdi chip to the PC, then the grounds 100% no matter what even if your mum says no, your not allowed, have to be connected.