Introduction: DIY Development Board for ESP8266 ESP-12E

So I was trying to learn IoT using Arduino and decided to purchase a WiFi module on eBay. I ordered an ESP8266 module since it is the most popular on most tutorials. Without doing some initial research, I chose the ESP-12E model (for $ 2.50) since I thought that the newest is always better (which I later on regretted since I have not included an adapter board). Looking online I've found out that this model has only a few documentation, tutorials, and reference designs for making it as a stand-alone board or as a shield. Also adding to the confusion is the "E" in the model which stands for "extended" (extension of the ESP-12). Until now I'm not even sure if they are the same with the ESP-12 but only with 6 added pins at the bottom for an SPI interface and two additional I/O pins. I could have bought myself a working shield instead but anyways there is nothing that I could do anymore so I decided to just make my own.

Step 1: Schematic Capture and PCB Layout

Ok... Now I just have to design a PCB layout so that I could easily connect this one to a breadboard or to the header pins of the Arduino. But wait... Remember that I mentioned that there are only a few documentation that can be found online? Well I had to dig deep just to make sure that I'm doing the right thing. I found a mistake also on the silkscreen label of the actual board. GPIO4 and GPIO5 have been interchanged. Please take note of this and follow the design guide.

The design is fairly simple. There's nothing really special about it since this is just to be used for testing and I am constrained with the size of the single-sided PCB that I have. I've put a 2-row header pins just in case I would need to hook up more than one wire to a single pin. Majority of the components here are SMD. The pins for the USB-to-serial adapter have been arranged accordingly to make it compatible with what I have. Some FTDI, CP2102, or CH340G boards might not have the same configurations though.

I'll be posting my own schematics and layout below plus the resource files using EAGLE CAD. If you want the Gerber files, just process it on your own. If by some chances you have found a mistake, leaving a comment would greatly help everyone to improve the design.

Step 2: Fabricating the Printed Circuit Board

I have printed the artwork on a bondpaper. I don't have a laser printer so I can't use a transparency sheet or a glossy paper. I'll just apply mineral oil to the paper to reveal the design (making it more transparent) without having the ink smeared. By now I guess you already know that I'll be using the exposure method. This is what I do most of the time since I only have an inkjet printer. You could also use the heatless/cold toner transfer method. You could find many of it online. I've also added the printout for the bottom solder mask pattern just in case if you wan't to add.

After exposing the PCB and etching it, you could add a silkscreen print on top for the labels. In my case, I'll just print it on a sticker paper or plain paper and place it on the component side (I messed up on this). Better protect it with a spray of lacquer or nail polish after. I would advise to drill the holes first before removing the toner/photoresist to prevent pre-oxidation and greasing on the copper making it hard for solder to adhere to the joint.

After placing the parts and soldering everything, it is important to check for continuity and shorts especially on the power and GPIOs.

Step 3: Uploading a Sketch and Testing It

To see if it really works, I've uploaded a simple "Hello World" program for the microcontrollers aka the Blink code. I am using the Arduino IDE which has an added board support from the ESP8266 community. You can get this on GitHub. Now open the example Blink.ino on Arduino and change the pin from 13 to 2 (connected to the on-board LED of the ESP8266). Make sure to have the correct board and port settings. In the schematic, I've included a guide on which pins to pull to VCC or ground during uploading of a program.

Uploading a simple sketch like this surprisingly takes quite some time. Just wait for a message to appear telling that your program was already uploaded.

After a while, I got this on-and-off blinking. Yehey! I have survived the smoke test :-)


WannaDuino (author)2016-10-27

1 word.


super wel done.

what wil it cost to send only the pcb to holland? NO JOKE. i wil solder the components and the ESP i got it al.

karloacha (author)WannaDuino2016-10-27

Thanks man. I can't really assess the expense of the shipment fee plus the customs clearing charge. For sure it would be too high. Why not just DIY too... I could help you all throughout the process until you could have your own. If there is something that needs to be modified with the design so that it would be compatible with the components that you have, I would gladly help too :-)

WannaDuino (author)karloacha2016-10-27

thank you
if i could i would done it, but i can not.
i must find first a laserscanner or so to make the layout
and also i NEVER have done making a board or so
only ready made board, where you trow a copple of pcs on and solder it. hahahaha
i was amazed by your IBLE
i really want to learn this. just so i can say I MADE THIS and also that i then have MY OWN BUILD BOARD thats soooo coooool
only we as electronic people can understand that feeling. i love that feeling man. of a project gone good. and works. and i know you also.
i have ( favorite ) you in my boxy. so i probably will need some day your experience. thanx bro

karloacha (author)WannaDuino2016-10-27

Thanks for the support man. I appreciate it. You really have to start learning how to do PCBs. dont let the unavailability of the equipment hinder you. there are lot of other methods. try googling heatless toner transfer or inkjet photoresist PCB. There are also adapter boards that are sold on ebay. also, development boards exist.. it already has a usb-serial in it.