ESP Programmer

1 year ago 1191
  • Description
  • Documents
  • BOM
  • Attachments
  • Members
  • Comments


The ESP Programmer is the successor of ESP8266 Programmer, a board to upload firmware on ESP8266, ESP32, and ESP32-S2. Like the predecessor, it benefits the USB-C connector, but it is improved replacing the CH340 with Silicon Labs CP2104 USB-serial converter (smaller footprint), adding 2 LEDs to show the status of RX and TX line and improving ESD protection. The board is designed to safely power up a ESP at 3.3V, so 5V is not routed out. If another power source is active on your target board, you can disable the output at 3.3V. This will prevent to damage the power circuits of the boards.

It can be attached to your target board through 2 connectors:

  • 1x06 1.27mm-pitched header. This miniaturized pitch was chosen to save as much area as possible. For the traditional 2.54mm pitch, please consider the previous version of ESP8266 Programmer.
  • "standard" Lolin D1 mini shield form factor. If you are not going to use this form factor, you can break the external frame gaining some mm^2 (video).

Main Components

  • Serial-USB converter Silicon Labs CP2104/CP2102N
  • A low dropout voltage regulator ME6211 (max 500mA)
  • 2 NPN digital transistors to control output pins embedded in UMH3N
  • USB-C connector for power supply and data

CP2104 to CP2102N

CP2104 was replaced by CP2102N since now the former is not recommended for new design. Moreover, comparing to CH340C, it provides some interesting features such as LDO, one-time programmable ID, and so on... Ok yeah, I know that they are not really necessary for this specific project, but it is a good excuse to start to play with it 😁. Here the official guide to migrate to CP2102N.


This board is entirely solderable by hand, no need of stencil. You will need the hot air gun for the USB-C connector, CP2104, and UMH3N.


You just need to install the driver for the CP2104/CP2102N.


  • 2.0.0 ✅: this is the first version of this project, to remember that this project derives from ESP8266 Programmer. It is based on Silabs CP2104. Unfortunately today this components is marked as not recommended for new design. The pin-compatible successor is CP2102N, here the official document describing the seamless migration.
  • 2.1.0 ❔: this version is based on CP2102N (28 pins). It provides 3 test pads to detect amount of current available from USB port. This version will never be tested.
  • 3.0.0 : ...

Versioning conventions

Each manufactured board must have a version. Version advancements are ruled accordingly to Semantic Versioning, similarly to what usually happens in software development.

To quickly indentify the status of each version, I use emojis. The following list explains their meaning:

  • A White Heavy Check Mark (✅) means that it is successfully tested;
  • A Negative Squared Cross Mark (❎) means that it was almost successfully tested (the main functionalities are fine), but there are bugs affecting minor funcionalities;
  • A Warning Sign (⚠) means that the board is not usable out of the box but the bugs are fixable in DIY (decent) fashion;
  • A Cross Mark (❌) means that there are some problems that makes it unusable;
  • A White Question Mark Ornament (❔) means not tested.


ESP Programmer

ESP Programmer


ID Name Designator Footprint Quantity
1 LED RED LED4 LED-0603 1
3 Header-2.54 H3 1X06 2.54MM HOLES HEADERS PINS BARE 1
4 Header-1.27 H1 1X06 1.27MM HOLES HEADERS PINS 1
5 100nF C2 C0603 1
6 10uF C4 C0603 1
7 1uF C1,C3 C0603 2
10 1k R4,R6,R7,R5 R0603 4
11 5.1k R2,R3 R0603 2
12 470 R1 R0603 1
13 4.7k R8 R0603 1
14 22k R9 R0603 1
15 47k R10 R0603 1
16 1206L050YR F1 1206 1
17 LED-Red LED1 LED-0603 1
18 ME6211C33R5G U4 SOT-353 1
20 CP2102N-A01-GQFN24 U5 QFN-24_L4.0-W4.0-P0.50-BL-EP2.6 1
21 UMH3NTN U3 SOT-363 1
22 SP0505BAHTG D3 SOT-23-6_L2.9-W1.6-P0.95-LS2.8-BL 1
23 USB-310F USB1 USB-TYPE-S-C8.64X7.25 1


The owner does not allow comments in this project now

Comments (3)

Mark Dyer Reply

Hi. Some parts are discontinued.  Thanks.

FabianoRiccardi Reply

@intelliservenz Hi Mark, could you tell me which parts? I'm aware only about CP2104-F03-GM

FabianoRiccardi Reply

@intelliservenz Switched to CP2102N

如果需要转移工程请在个人中心 - 工程 - 工程高级设置 - 下载工程,下载后在 打开保存即可。
有问题联系QQ 3001956291 不再提醒
svg-battery svg-battery-wifi svg-books svg-more svg-paste svg-pencil svg-plant svg-ruler svg-share svg-user svg-logo-cn svg-double-arrow
We use cookies to offer you a better experience. Detailed information on the use of cookies on this website is provided in our Privacy Policy. By using this site, you consent to the use of our cookies.