Use this forum to chat about hardware specific topics for the ESP8266 (peripherals, memory, clocks, JTAG, programming)

User avatar
By sej7278
#74665
rudy wrote:
sej7278 wrote:
stern0m1 wrote:if GPIO-0 is pulled high by the new pullup resistors, how to you get the board into bootloader mode?


The same way as always, force the input low by connecting it to ground. The ESP-12S is functionally the same as the other ESP12 module. It has a larger capacitor across the supply (one of the best changes) and it has pull up resistors added on the pins that require it. With other modules these would have to be added externally.

The input resistors are about 10K. I think I measured 12K when I first got some.


but wouldn't that cause a short? i mean you've got gpio0 connected permanently to 3.3v via a resistor, then you're connecting the same pin to gnd? or is the pullup internal to the chip and not actually routed to the pin?

i tried to simulate that same setup with an esp12e ("s" hasn't been delivered yet) and the board didn't boot into either mode. only way i can boot is to move the resistor from gpio0 between 3.3v and gnd, not both at the same time (or even momentary via a button)

edit: ah no, i was simluating it wrong - i had gpio0 to 10k resistor to both vcc and gnd, if i do gpio0 to 10k to vcc, and then a cable from gpio0 to gnd (not via the resistor) it boots into flash mode.

so i assume the esp12s only has the resistor from gpio0 on the chip itself to vcc, not exposed to the external pin.
User avatar
By rudy
#74666
so i assume the esp12s only has the resistor from gpio0 on the chip itself to vcc, not exposed to the external pin.

The resistors are in the module, on the circuit board, not inside the ESP8266 chip itself. The resistors can be measured with an Ohm meter. I just measured a ESP12F and get a reading of about 3M Ohms on the F part but 12K on the S part.


ESP-12S.jpg

Click on the image to get the full size (but still not enough resolution)

There external pads are shown on the middle left. All the parts on this schematic are internal. Now look below at the schematic for a ESP12E.

Esp8266_esp_12e_schematics.jpg


The ESP8266S has 12K pull up resistors on GPIO0, Chip_EN, and a pull down resistor on GPIO15. The other ESP12 series do not have these parts. They are required to be added externally.
You do not have the required permissions to view the files attached to this post.
User avatar
By sej7278
#74671 sparkfun explains the situation well here: https://learn.sparkfun.com/tutorials/pull-up-resistors

so basically the pullup to vcc is causing the gpio0 pin to read high by default, but when its connected to gnd (e.g. via a button press) the current flows straight from vcc through the resistor to gnd not the pin, and so the pin reads low.