NodeMCU like DTR / RTS auto programming circuit not booting 8266 into flashing mode

Thread Starter

bmbouter

Joined May 29, 2021
75
I made the following schematic, which uses a auto programming circuit similar to the node MCU 0.9 design (see VT1 and VT2 here). Mine is designed to be identical since my board also uses S8050 transistors and 12K resistors. My FTDI is a FT232RL which has both DTR and RTS output on it.

The same FTDI and wires can successfully flash the 8266 if I manually boot it into flash mode, so that narrows down the issue to my implementation of the auto flashing circuit. When I go to flash it using my flashing circuit I get the infamous "Connecting........_____....._____....._____....._____....._____....._____.....____".

What is wrong with my hardware design? I *think* it's related to a missing capacitor C2 in the nodemcu design which mine does not have. I suspect this from reading posts like this and this. What do you think?

Screenshot from 2022-09-26 22-13-52.png
 
Last edited:

Thread Starter

bmbouter

Joined May 29, 2021
75
After doing some testing, the primary issue is the collectors for nRST and GPIO0 are not dropping enough voltage. During programming (driven by Q1 and Q2 with inputs from DTR and RTS) the drop is only to 2.84V not 0V as expected. This causes the 8266 to not reset so it never boots into flash mode.

I ran an LTSpice simulation on this and it expects a full voltage drop to 0V.

I've confirmed that DTR and RTS both start at 3.44 V and while programming are dropped to 0V. First RTS drops to 0V for 100ms, then DTR drops to 0V for 50 ms immediately afterwards. So the inputs to the network involving Q1 and Q2 are experiencing the full voltage drop.

What would cause nRST to drop to 2.8V and not 0?
 

Thread Starter

bmbouter

Joined May 29, 2021
75
The issue here was in PCB layout not the schematic. The footprint I used had the base and emitter pins swapped, which produced the drop in voltages equivalent to the voltage drop of one transistor instead of the transistor pulling a pin entirely to ground.
 
Top