Close

Boards Built

A project log for ESP-01 & ESP-03 Breakout

Breakout board for ESP8266 ESP-01 & 03 modules

drewrisingerdrewrisinger 06/18/2015 at 02:303 Comments

Well, today I finished testing and building both versions of the board (using both the ESP-01 and ESP-03 chipset). I managed to do both with the default tip on a WESD51. Ugh, that tip is so big when I'm trying to do SMD soldering. Needless to say, a new tip is on the way.

The ESP-01 version works perfectly, no modifications needed. I did make a rookie mistake, however. I was originally trying to blink an LED off of pins 12 and 14. It took me about 15 minutes to realize that those pins aren't available because I'm using an ESP-01, which only breaks out a few pins. To clarify this issue, I'm going to make some changes to the board next time to mark which pins correspond to the ESP-01 variant.

The ESP-03 version needed a bit of work. I initially saw it boot fine, but it seemed impossible to get it to restart. I found online that supposedly the CH_PD pin needed to be connected to Vcc, which I hadn't done. When I tried doing that, I couldn't get the chip to reset using the method used for the ESP-01. After a little experimentation, I found that I could reset the chip (with the fewest amount of changes and maximum compatibility) by tying together the RESET and CH_PD lines. A little bit of soldering work later, and the board now works perfectly.

So after the first trial run, my list of changes for future are:

Random last thought: If you're tinning SMD pads, ONLY TIN 1/2. Otherwise you'll end up with too much solder on, and then you can't melt both pads, and then the package ends up at a funky angle vertically, and not flat to the board. So just tin one.

I'll post pictures later...

Discussions

Blecky wrote 06/23/2015 at 08:00 point

Looks like you sorted it, but here is more info on which pins are required to be set for the appropriate boot mode - https://github.com/esp8266/esp8266-wiki/wiki/Boot-Process

You can use a much larger resistor value there to tie your pins low if you like without affecting the boot process (I use a 1M on GPIO15).

  Are you sure? yes | no

drewrisinger wrote 06/25/2015 at 03:59 point

If you check my schematic, you'll see that I actually have the pull-up/pull-down resistors to implement the default values for the reset states that I need. However, what I needed in addition to those was tying in the CH_PD signal to RESET (MTDO/GPIO15).

Also, if you would care to share about why you used such a large resistor, I would love to hear. My understanding is 10k resistors are relatively common for pull-up/pull-down, because they allow the digital lines to be used as normal with minimal responsiveness lost (a 1M resistor will take significantly longer to pull to default high/low).

  Are you sure? yes | no

Blecky wrote 06/25/2015 at 04:36 point

The pulldown is only required on boot up, and the line will already be low at this point, so you only need a weak pulldown to keep it in this state. After that it's not required and the larger value won't conflict as much if you want to use a pullup on that GPIO pin (e.g. for i2c).

Obviously however, you will need to control the pullup voltage if you wanted to do this.

  Are you sure? yes | no