[TUTORIAL] WITTY FOX ESP32 DEV BOARD
WittyFox ESP32 Dev Board Features:
- Inbuilt battery protection and charge-discharge module
- Multiple power supply options (microUSB, DC Jack, Battery, Headers)
- Selectable power switch
- 2 x I2C Breakouts
- 2 x SPI Breakouts
- Breakout of all usable GPIO
- 200mA LDO 3.3v regulator for wide operating voltage range
- External reusable programmer
- 1x controllable LED, 1x push button connected to GPIO
Absolute Maximum ratings:
- Power inputs (J2, J3, VAC, M1) - 4.5v - 5.5v for BAT mode and 3.5v to 5v for AC mode
- Maximum current from 3.3v supply pins - 600mA
- ESP32 related pins - according to the datasheet.
The procedure to install ESP32 using the Arduino IDE is given below:
1. Download the Arduino IDE from the following link https://www.arduino.cc/en/Main/Software
2. Install the Arduino IDE.
3. When prompted to install drivers, say yes for all the drivers.
4. Next, you need to find the COM port of your Witty Fox programmer:-
- Plug in the Programmer to your laptop
- Open Device Manager
- Click on Ports
- Note down the Programmer’s COM port number(Usually specified as Silicon Labs CP210x ). This will be useful in the later steps.
5. In the Arduino IDE, go to File -> Preferences
6. Enter https://dl.espressif.com/dl/package_esp32_index.json into the “Additional Board Manager URLs” field as shown in the figure below. Then, click the “OK” button.
Note: Witty Fox programmer can also be used to program the ESP8266, if you want to install both chips on the Arduino IDE, you can separate the URLs with a comma as shown in the image below. The ESP8266 board URL is http://arduino.esp8266.com/stable/package_esp8266com_index.json |
7. Open the Boards Manager. Go to Tools > Board > Boards Manager…
8. Search for ESP32 and press install button for the “ESP32 by Espressif Systems“
9. Select your Board in Tools > Board menu (For the Witty Fox ESP32 Dev Board, select ESP32 Dev Module)
10. Connect the Witty Fox Programmer and ESP32 Dev Board to your computer. The two boards are directly compatible with each other and do not need any extra jumpers.
11. Select the COM port of the programmer that you saw in the device manager earlier.
12. To test out the ESP32 Dev Board, upload the Blink LED code for the Witty fox ESP32 Dev Board, which is given below.
|
// the setup function runs once when you press reset or power the board void setup() { // initialize GPIO2 as an output. This pin is connected to an on-board LED. pinMode(2, OUTPUT); }
// the loop function runs over and over again forever void loop() { digitalWrite(2, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(2, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second } |
13. Press the Upload button (shown in the image below) in the Arduino IDE, which is located in the top left-hand corner. Wait a few seconds while the code compiles and uploads to your board.
14. If everything went as expected, you should see “Done uploading.” message.
15. Check the onboard LED of the ESP32 Dev Board. It should be blinking at an interval of 1 second.
Refer to the following instructions to program the ESP32 Dev Board without the Witty Fox Programmer.
If you are using a generic FTDI or any other USB to TTL programmer, the circuit to program ESP on the Witty Fox ESP32 Dev Board is given below.
FTDI Pin |
ESP32 Dev board pin |
GND |
RGND |
VCC |
VBUS |
GND(through a switch) |
RST |
GND(through a switch) |
BOOT |
RXI |
RxD |
TXO |
TxD |
Note: While uploading the program, when you get the connecting message on the bottom of the Arduino IDE, long-press the switch connected to the Boot pin of the ESP32 Dev Board and press the reset switch once. Once the program starts uploading, you can release the Boot switch.
Excerpt
Frequently Asked Questions
1. What makes WittyFox ESP32 different?
The WittyFox ESP32 stands out with its built-in Wi-Fi and Bluetooth capabilities, providing versatile options for IoT projects. Its compact design integrates an OLED display and customizable buttons, making it user-friendly for both beginners and experts. This board is ideal for prototyping innovative solutions without needing extra components.
2. What power sources does it support?
The WittyFox ESP32 supports multiple power sources, including USB and LiPo batteries. This versatility allows for flexibility in powering your projects, whether stationary or portable. Its efficient design ensures stable operation under various power inputs, catering to different project needs.
3. How to program WittyFox ESP32?
You can program the WittyFox ESP32 using Arduino IDE or PlatformIO. Start by installing the necessary board definitions and libraries. Connect the board to your computer via USB, write your code, and simply upload it to the board. It’s quick and straightforward for both beginners and experienced developers.
4. How many GPIO pins are available?
The WittyFox ESP32 offers 30 GPIO pins, allowing for ample connectivity options for various sensors and modules. This rich set of pins supports multiple functionalities, enabling you to create complex projects easily. Utilize these pins effectively for both input and output tasks.
5. Does it support I2C and SPI connections?
Yes, the WittyFox ESP32 fully supports I2C and SPI connections. These protocols facilitate communication with a wide range of sensors and devices, enhancing the board's versatility. You can easily integrate various peripherals in your projects, ensuring seamless data transfer.
6. How to connect sensors to WittyFox?
Connecting sensors to the WittyFox is straightforward. Identify the appropriate GPIO pins for your sensor and connect them using jumper wires. Follow wiring diagrams for specific sensors for accurate connections. Once wired, you can program the board to read data from the sensors efficiently.
7. Can it run on battery power?
Absolutely! The WittyFox ESP32 can run on battery power, making it ideal for portable projects. It supports LiPo batteries and features a built-in battery management system for reliable operation. This functionality enables you to design projects that operate wirelessly in remote locations.
8. How to upload sketches via USB?
To upload sketches to the WittyFox ESP32 via USB, connect the board to your computer using a USB cable. Open the Arduino IDE and select the appropriate board and port settings. After writing your code, click the upload button, and the sketch will be transferred automatically to the board.
9. What voltage regulator does it use?
The WittyFox ESP32 utilizes a built-in voltage regulator, allowing it to accept power input from various sources. This regulator ensures stable voltage output for the board's operations, protecting it from power fluctuations while accommodating different input voltages.
10. Is WittyFox compatible with Arduino IDE?
Yes, the WittyFox ESP32 is fully compatible with Arduino IDE. You can easily program it just like any other Arduino board. Simply install the necessary libraries and board configurations, and you'll be ready to create a wide range of projects with minimal setup.
1. What makes WittyFox ESP32 different?
The WittyFox ESP32 stands out with its built-in Wi-Fi and Bluetooth capabilities, providing versatile options for IoT projects. Its compact design integrates an OLED display and customizable buttons, making it user-friendly for both beginners and experts. This board is ideal for prototyping innovative solutions without needing extra components.
2. What power sources does it support?
The WittyFox ESP32 supports multiple power sources, including USB and LiPo batteries. This versatility allows for flexibility in powering your projects, whether stationary or portable. Its efficient design ensures stable operation under various power inputs, catering to different project needs.
3. How to program WittyFox ESP32?
You can program the WittyFox ESP32 using Arduino IDE or PlatformIO. Start by installing the necessary board definitions and libraries. Connect the board to your computer via USB, write your code, and simply upload it to the board. It’s quick and straightforward for both beginners and experienced developers.
4. How many GPIO pins are available?
The WittyFox ESP32 offers 30 GPIO pins, allowing for ample connectivity options for various sensors and modules. This rich set of pins supports multiple functionalities, enabling you to create complex projects easily. Utilize these pins effectively for both input and output tasks.
5. Does it support I2C and SPI connections?
Yes, the WittyFox ESP32 fully supports I2C and SPI connections. These protocols facilitate communication with a wide range of sensors and devices, enhancing the board's versatility. You can easily integrate various peripherals in your projects, ensuring seamless data transfer.
6. How to connect sensors to WittyFox?
Connecting sensors to the WittyFox is straightforward. Identify the appropriate GPIO pins for your sensor and connect them using jumper wires. Follow wiring diagrams for specific sensors for accurate connections. Once wired, you can program the board to read data from the sensors efficiently.
7. Can it run on battery power?
Absolutely! The WittyFox ESP32 can run on battery power, making it ideal for portable projects. It supports LiPo batteries and features a built-in battery management system for reliable operation. This functionality enables you to design projects that operate wirelessly in remote locations.
8. How to upload sketches via USB?
To upload sketches to the WittyFox ESP32 via USB, connect the board to your computer using a USB cable. Open the Arduino IDE and select the appropriate board and port settings. After writing your code, click the upload button, and the sketch will be transferred automatically to the board.
9. What voltage regulator does it use?
The WittyFox ESP32 utilizes a built-in voltage regulator, allowing it to accept power input from various sources. This regulator ensures stable voltage output for the board's operations, protecting it from power fluctuations while accommodating different input voltages.
10. Is WittyFox compatible with Arduino IDE?
Yes, the WittyFox ESP32 is fully compatible with Arduino IDE. You can easily program it just like any other Arduino board. Simply install the necessary libraries and board configurations, and you'll be ready to create a wide range of projects with minimal setup.
