

The FireBeetle OSD, developed by DFRobot, is a compact and energy-efficient microcontroller board designed for embedded applications. It features an integrated OLED display, making it ideal for real-time data visualization. This board is well-suited for projects requiring a combination of low power consumption, compact size, and an easy-to-use interface for programming and debugging.








The FireBeetle OSD is equipped with robust features that make it versatile for a wide range of applications. Below are its key technical specifications:
| Parameter | Specification |
|---|---|
| Microcontroller | ESP32-based |
| Operating Voltage | 3.3V |
| Input Voltage Range | 3.7V - 5.5V |
| Power Consumption | Ultra-low power mode: <10 µA |
| OLED Display | 0.96-inch, 128x64 resolution, monochrome |
| Communication Interfaces | UART, I2C, SPI |
| GPIO Pins | 10 (including ADC and PWM support) |
| Flash Memory | 4MB |
| Dimensions | 27mm x 58mm |
| Weight | 10g |
The FireBeetle OSD features a simple pinout for easy integration into projects. Below is the pin configuration:
| Pin Name | Function | Description |
|---|---|---|
| VIN | Power Input | Accepts 3.7V-5.5V input for powering the board. |
| GND | Ground | Common ground for the circuit. |
| 3V3 | 3.3V Output | Provides regulated 3.3V output. |
| D0-D9 | GPIO Pins | General-purpose I/O pins with ADC and PWM. |
| SDA | I2C Data | Data line for I2C communication. |
| SCL | I2C Clock | Clock line for I2C communication. |
| TX | UART Transmit | Transmits data via UART. |
| RX | UART Receive | Receives data via UART. |
| RST | Reset | Resets the microcontroller. |
The FireBeetle OSD is designed for ease of use, making it suitable for both beginners and experienced developers. Below are the steps and best practices for using the board:
Powering the Board:
Programming the Board:
Using the OLED Display:
Adafruit_SSD1306 library. Install this library in the Arduino IDE for easy display management.The following example demonstrates how to display "Hello, FireBeetle!" on the OLED screen:
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
// Define the OLED display dimensions
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
// Create an instance of the SSD1306 display
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);
void setup() {
// Initialize the display
if (!display.begin(SSD1306_I2C_ADDRESS, 0x3C)) {
// If initialization fails, halt the program
Serial.println(F("SSD1306 allocation failed"));
for (;;);
}
// Clear the display buffer
display.clearDisplay();
// Set text size and color
display.setTextSize(1); // Text size multiplier
display.setTextColor(SSD1306_WHITE);
// Set cursor position
display.setCursor(0, 0);
// Display text
display.println(F("Hello, FireBeetle!"));
display.display(); // Render the text on the screen
}
void loop() {
// No actions required in the loop for this example
}
The board does not power on:
OLED display is blank:
Adafruit_SSD1306 library is installed and correctly configured.Code upload fails:
GPIO pins not functioning as expected:
pinMode(pin, OUTPUT)).Q: Can I use the FireBeetle OSD with a battery?
A: Yes, the board supports battery input via the VIN pin. Ensure the battery voltage is within the 3.7V-5.5V range.
Q: What is the maximum current output of the 3.3V pin?
A: The 3.3V pin can supply up to 500mA, depending on the input power source.
Q: Is the OLED display replaceable?
A: The OLED display is integrated into the board and is not designed to be replaced.
Q: Can I use the FireBeetle OSD with other microcontrollers?
A: While the FireBeetle OSD is a standalone microcontroller, its GPIO pins can interface with other microcontrollers for specific applications.