ESP8266 Support WIKI

User Tools

Site Tools



This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
mode_changes [2015/06/21 21:56]
mode_changes [2015/08/08 16:39] (current)
Line 1: Line 1:
-==== Mode Change ====+====== Mode Change ​======
 before boot the following wires can be set to give one of 3 modes of operation. before boot the following wires can be set to give one of 3 modes of operation.
-^  MODE              ^GPIO15 ​(MTDO) ​  ^GPIO0 ​       ^GPIO2 ​ |+^  MODE              ^GPIO15 ​        ​^GPIO0 ​       ^GPIO2 ​ |
 ^SDIO            | 1            | x              | x       | ^SDIO            | 1            | x              | x       |
-^UART            | 0            | 0              | 1       ​+^UART            | 0            | 0              | x or  
-^FLASH (DEFAULT) | 0            |              | x       ​|+^FLASH (DEFAULT) | 0            |              | x or 1  ​|
  ​1=High ,​0=Low,​x=floating  ​  ​1=High ,​0=Low,​x=floating  ​
----- +Once you have flashed your program on in Flash mode, take the low off the GPIO0 and reboot ,to run your program properly ​\\ ​
-Olimex jumpers are set a little differently as the table is their Jumper position. +
-Below are the notes from Olimex boards ​and the different modes the ESP8266 chip operates in . Usually its default mode is FLASH and holding pin GPIO15 (MTDO)low ensures you get this boot mode.+
-OLIMEX© 2014 +UART mode is where the code it uploaded ​to the chip and GPIO0 must be low on boot to enter this mode . \\ 
-MOD-WIFI-ESP8266-DEV reference +
-ESP8266 has three modes of operation: SDIO mode, UART mode and FLASH +
-mode. By default the board is configured for FLASH mode operation. The +
-jumpers for the default FLASH mode were set during production as follows: +
-TD0JP(MTD0) is set to position 0;\\ IO0JP(GPIO0) is set to position 1;\\ +
-IO2JP(GPIO2) is set to position 1.\\ +
-To access the other modes you would need to manipulate the on-board SMT +
-jumpers called TD0JP(MTDO),​ IO0JP(GPIO0),​ and IO2JP(GPIO2). They are +
-located at the top of the board near the UEXT pads. Each of the jumpers +
-can be set to either position 0 or position 1. The jumpers are +
-highlighted on the picture below:+
-The positions for the all the modes are printed ​on the board itselfThe +FLASH mode is when running ​the program. Take GPIO0 high after UART boot or it will stall on first reset\\  ​
-table looks like this: +
-^  MODE/​Jumper ​    ​^TD0JP(MTDO) ^IO0JP(GPIO0) ^IO2JP(GPIO2)| +SDIO mode is where the chip boots from an SD card. I dont think this is available yet. \\      ​ 
-^SDIO            | 1            | x              | x       | + 
-^UART            | 0            | 0              | 1       | +For the two modes we care about, the processor expects GPIO15 to low and GPIO2 to be high on boot. GPIO0 selects between ​the two modes we are going to discuss hereDuring normal operation, we would want to use a resistor ​to pull GPIO0 high.5 That will cause the bootloader inside ​the ESP8266 ​to read data from the EEPROM chip into the ESP8266’s IRAM and boot our program. If we set GPIO0 low, however, ​the boot ROM inside ​the ESP8266 takes over and it begins communicating over the UARTUsing this boot ROM we can push our programs ​to the flash memoryA good way to make use of this is to connect ​a switch ​from GPIO0 to ground so you can put it into program mode at will by holding ​the button at power on
-^FLASH (DEFAULT) | 0            | 1              | 1       | +
-   ​ +
-For example: +
-Initiallyyou can't update ​the firmware of MOD-WIFI-ESP8266-DEV since by +
-the board starts in the default FLASH modeIn order to update the +
-firmware of the board you would need to change the starting mode to UART. +
-This is done by changing ​the position of the jumper named IO0JP(GPIO0) ​to +
-0. After the update is done – change ​the position of IO0JP(GPIO0) back to +
-1 again. +
-In order to change ​the position of an SMT jumper like that you would need +
-basic soldering skills. There are two things that you would need to do: +
-1. Remove ​the original connection between the pads. If it was made using +
-soldering – unsolder it and remove ​the soldering residueIf it was a +
-hardware PCB connection – make sure to cut between ​the pads with a sharp +
-tool (like a safety cutter). +
-2. Connect the pads of the desired position by soldering. Do not use +
-large amount ​of soldering residue. Do not keep the soldering iron pressed +
-to the board longer than 10 seconds. Make sure that there is no left-over +
-soldering residue which might lead to accidental short-circuits. +
-If you want, you can add wires and a PTH jumper or slide switch to the +
-pads of the jumpers. This would allow easier change of the jumpers in +
-future. +
-More details about the three different modes might be found in the +
-ESP8266 datasheet.+
mode_changes.1434923787.txt.gz · Last modified: 2015/06/21 21:56 by tytower