The objective of this post is to give a brief introduction to DFRobot’s FireBeetle ESP32 board.
The objective of this post is to give a brief introduction to DFRobot’s FireBeetle ESP32 board. This is a board based on the ESP32 microcontroller, the sucessor of the famous ESP8266 microcontroller from Espressif.
The ESP32 is a very powerful IoT enabled microcontroller and the FireBeetle ESP32 exposes this power in a very accessible board design, suitable for both beginners and advanced users.
As said before, the FireBeetle ESP32 is powered by a ESP32 microcontroller, one of the best choices for IoT applications nowadays. Not only it is a very powerful dual core microcontroller with integrated Bluetooth and WiFi support, but it is also supported by diverse projects from the developers community. Nevertheless, this post will focus on the FireBeetle board, since we talked about the ESP32 in more detail in previous posts.
As for the FireBeetle, the first thing we need to note is that it uses the ESP-WROOM-32 module, also from DFRobot. The ESP-WROOM-32 is a compact ESP32 module that has an integrated antenna and exposes the pins of the ESP32.
Nevertheless, as stated in this previous post, the ESP-WROOM-32 is not a development board but rather a ESP32 module aimed to be integrated in electronic designs and products, such as the FireBeetle ESP32 board. So, although it can be programmed without being integrated in a board, it doesn’t include an USB header and it is challenging to solder manually, since the pins spacing is adequate for automatic tools.
So, for people who are looking for a ESP32 development board rather than to build a custom electronic design, I really recommend to use the FireBeetle ESP32 board, for the reasons we will see bellow.
One of the things that makes the FireBeetle so easy to use is that it already has a Micro USB header. Thus, to program it, we just need a USB cable and we don’t need to solder anything to get started and create our first program.
The board can be powered from both the USB connection and also a LiPo battery , having also a dedicated header for it. So, it can run our programs even when not connected to a computer.
In terms of size, it’s a compact development board, with 24 mm x 53 mm . Also, as said before, it already has a on board antenna, so there is no need to use additional hardware for using the wireless functionalities.
The board includes a builtin LED , which is very useful for getting started without the need to connect to additional hardware. You can check in figure 1 the FireBeetle ESP32 board with the LED on.
Figure 1 – FireBeetle ESP32 board with builtin LED on.
On figure 2 you can check the back of the board, with the description of the pins available.
Figure 2 – Back of the FireBeetle board.
As you can see from the two previous pictures, the pins of the board don’t come already soldered. This gives us freedom to choose the type of headers (male or female) to use. Note that the pin spacing is the regular one from breadboards, so it is easy to solder with a simple soldering iron.
Nevertheless, as mentioned before, we can start playing with the device without needing to solder anything, as long as we don’t need to use the GPIOs or other peripherals. There’s plenty of things to try, such as the WiFi functionalities or the different programming environments, just to name a few. But naturally, at some point, we will want to start interacting with other hardware, and the need for some soldering will eventually arise.
Since the Microcontroller of this board is the ESP32, it should be possible to program the FireBeetle board with any environment supported by the ESP32.
As usual, one of the most used environments is the Arduino. You can check the GitHub page of the project, which includes installation instructions. If you are on windows, you can check here the instructions. A very interesting feature of the Arduino support is that we can use FreeRTOS primitives in our code.
For both of these environments, I’ve been creating some tutorials that you can check here to help getting started. It also includes some tutorials on how to use FreeRTOS from the Arduino environment.
There are plenty of other options to explore, as can be seen in the list bellow, which shows some more: