@@ -162,3 +162,52 @@ ESPxx Hardware
162162
163163### Improved Stability
164164![ ESP improved stability] ( ESP_improved_stability.png )
165+
166+ ### Boot Messages and Modes
167+
168+ The ESP module checks at every boot the Pins 0, 2 and 15.
169+ based on them its boots in different modes:
170+
171+ | GPIO15 | GPIO0 | GPIO2 | Mode |
172+ | ------ | ----- | ----- | -------------------------------- |
173+ | 0V | 0V | 3.3V | Uart Bootloader |
174+ | 0V | 3.3V | 3.3V | Boot sketch (SPI flash) |
175+ | 3.3V | x | x | SDIO mode (not used for Arduino) |
176+
177+
178+ at startup the ESP prints out the current boot mode example:
179+ ```
180+ rst cause:2, boot mode:(3,6)
181+ ```
182+
183+ #### rst cause
184+
185+ | Number | Description |
186+ | ------ | ---------------------- |
187+ | 0 | unknown |
188+ | 1 | normal boot |
189+ | 2 | reset pin |
190+ | 3 | software reset |
191+ | 4 | watchdog reset |
192+
193+
194+ #### boot mode
195+
196+ the first value respects the pin setup of the Pins 0, 2 and 15.
197+
198+ | Number | GPIO15 | GPIO0 | GPIO2 | Mode |
199+ | ------ | ------ | ----- | ----- | ---------- |
200+ | 0 | 0V | 0V | 0V | Not valid |
201+ | 1 | 0V | 0V | 3.3V | Uart |
202+ | 2 | 0V | 3.3V | 0V | Not valid |
203+ | 3 | 0V | 3.3V | 3.3V | Flash |
204+ | 4 | 3.3V | 0V | 0V | SDIO |
205+ | 5 | 3.3V | 0V | 3.3V | SDIO |
206+ | 6 | 3.3V | 3.3V | 0V | SDIO |
207+ | 7 | 3.3V | 3.3V | 3.3V | SDIO |
208+
209+ Note:
210+
211+ number = ((GPIO15 << 2) | (GPIO0 << 1) | GPIO2);
212+
213+
0 commit comments