As of January 2017, the ESP-WROVER-KIT is a brand new addition to the chain of ESP32 development tools provided by Espressif Systems. In this article, we will go over how to setup the hardware and get started with the ESP-WROVER-KIT - including hardware configuration and setting up for basic programming and execution.
We will also address some concerns with the initial versions of the boards which may fail to respond to EN button press or the BOOT button press. The solution is also presented in this article if you happen to have one of the initial boards.
What You Need to Know
Shown above is a view of the ESP-WROVER-KIT ESP32 development board. Features to notice here are:
- The kit can be powered by either the microUSB port or the external DC power jack. The desired power source must be selected by shorting the proper jumper (shown in the following images).
- The FT2323 chip will appear as 2 separate serial interfaces when the board is plugged in to your computer. Only one will be usable as the UART for programming the ESP32 on board.
- When using the IO extender ports, make sure to return the IO signal to ground by using the nearest available ground pin.
- To use a feature, be it the in-built LDO, the UART for programming or even the JTAG interface, they must be enabled by shorting the required jumpers. None is enabled by default without using jumpers.
- The EN and IO0 lines on the board are automatically controlled and thus there is no need to set the board to boot mode before using the flashing tool. However, the board may need to be reset by using the EN button after programming.
Connect Required Jumpers
To power on the board, you need to set the power jumper. In this case, we plan to use the USB power only for now, so we short the power jumper.
The jumper might not fit all that well over the connector, in which case you should directly solder a wire over if you do not use the DC power jack. This eliminates issues due to loose power jumper (such as random reset or flickering display).
Next, make sure the UART RX and TX jumpers are connected. Without these, the board will not be able to communicate on the terminal. The programming interface will also no longer work. The Gnd and 3V3 pins are internally connected and do not need shorting by jumpers as shown here:
You are now good to go.
The board can be set to programming mode by holding down the BOOT button and pressing the EN button once. However, you do not need to do this as the board will switch to program mode automatically when the programming tool is used.
Known Issues and Workarounds
- The EN button press has no effect: This happens because pressing the EN button does not pull the EN button to ground if it is forced and held high by the auto-program circuit. This can be solved by lowering the resistance connected in series with the EN button. As this is an 0402 resistor, replacing it may be difficult. A simple workaround is to momentarily short the EN pin to ground using external dupont jumper wire.
- IO0 button does not work: The IO0 button suffers from the same issue on initial board revisions. We believe Espressif will fix the issue in subsequent versions. The simple solution is to reduce the series resistance or just short the IO0 pin externally to ground using a dupont wire.
Note: Do not short any GPIO directly to Vdd, which may draw excess current and overheat the chip. Directly shorting to ground is usually acceptable as pull-up current is internally limited.
- LCD Display flickers and RGB LED behaves weird: This may happen during programming, which is fine. However, if this happens at runtime, solder the power jumper instead of using a removable jumper, which creates possibility of loose connections.
How is it Going?
Up and running with your ESP-WROVER-KIT? Let us know what you are making!
Facing issues? Leave your input in the comments below!
Want to stay updated with more articles like this? Don't forget to SUBSCRIBE to our blog!