Romeo ESP32-S3 Robot Development Board

SKU: DFR0994

The Romeo ESP32-S3 Robot Development Board offers a robust platform featuring an Xtensa dual-core processor, extensive connectivity options including Wi-Fi and Bluetooth, and high motor drive capacity. Its versatile interfaces, such as GDI display and CAM, make it ideal for a wide range of innovative robotic applications. The board supports various power inputs and provides detailed pin configurations for seamless integration with peripherals and sensors, empowering developers to create sophisticated robotics projects with ease.

Board Overview of Romeo ESP32-S3 Development Board for Robotics FPV RC Car
  • Docs
  • Tech Specs
  • Tutorials
  • Projects
  • 1. Getting Started

    This article provides a comprehensive tutorial on configuring the Arduino IDE for first-time use with ESP32, detailing steps to add the development board, select the appropriate board and serial port, and successfully upload code, ensuring optimal setup and functionality.

    2. Example Code for Arduino-EN/PH mode drives the motor

    This article explains how to use Arduino to drive a motor in EN/PH mode, covering hardware and software setup, the PH/EN control mode truth table, and providing sample code to demonstrate motor speed detection using MCPWM functions.

    3. Example Code for Arduino-EN/PH mode drive DC motor with encoder

    This article offers a comprehensive guide and example code for controlling a DC motor with an encoder using Arduino. It covers hardware preparation with Romeo ESP32-S3 and TT Motor, software setup including Arduino IDE, and explains motor control using the PH/EN mode truth table and PID speed control.

    4. Example Code for Arduino-PWM mode drives the motor

    The article explains how to use PWM mode to drive motors with Arduino, detailing hardware and software preparation, a truth table for PWM control, and sample code for implementation. It covers initializing pins, configuring mcpwm, and controlling motor speed, making it an invaluable resource for enthusiasts seeking to optimize motor functions.

    5. Example Code for Arduino-PWM mode drive DC motor with encoder

    This article offers a comprehensive guide to driving a DC motor with an encoder using Arduino's PWM mode. It includes detailed hardware and software preparation, a truth table for understanding PWM control modes, and sample code to control motor rotation speed using PID. The setup uses Romeo ESP32-S3 and TT Motor with Encoder, and the code initializes PWM, sets PID parameters, and reads encoder data to adjust motor speed. Ideal for Arduino enthusiasts looking to optimize motor control.

    6. Example Code for Arduino-Drive car practice

    This blog post guides readers through the setup and programming of an Arduino-driven car using the ESP32-S3 board, offering insights into camera integration, motor control, and remote operation via a web interface.

    Specification

    Basic Parameters

    Parameter Value
    Type-C Input Voltage 5V
    Operating Voltage 3.3V
    VIN Input Voltage 7-24V
    VM Input Voltage 5-24V
    Maximum Output Current of 5V Power Supply 2A
    Motor Drive Capacity 2.5A
    Operating Temperature 0 to 60℃
    Dimension 25.4x60mm/2.95x3.54”

    Hardware Information

    Component Specification
    Processor Xtensa® dual-core 32-bit LX7 microprocessor
    Main frequency 240 MHz
    SRAM 512 KB
    ROM 384 KB
    Flash 16 MB
    PSRAM 8 MB
    RTC SRAM 16 KB
    USB USB 2.0 OTG full-speed

    Wi-Fi

    Feature Details
    WIFI Protocol IEEE 802.11b/g/n
    WIFI Bandwidth 2.4 GHz band supports 20 MHz and 40 MHz bandwidth
    WIFI Modes Station mode, SoftAP mode, SoftAP+Station mode, and promiscuous mode
    WIFI Frequency 2.4GHz
    Frame Aggregation TX/RX A-MPDU, TX/RX A-MSDU

    Bluetooth

    Feature Details
    Bluetooth Protocol Bluetooth 5, Bluetooth mesh
    Bluetooth Frequencies 125 Kbps, 500 Kbps, 1 Mbps, 2 Mbps

    Interface Pins

    Interface Type Quantity / Specification
    Digital I/O x27
    SPI x2
    UART x3
    I2C x2
    I2S x2
    LED PWM Controller 8 channels
    Infrared Transceiver Transmit channels x5, Receive channels x5
    DMA controller 5 receive channels and 5 transmit channels

    Note: The functional pins are multiplexed, and the above number of interfaces is the maximum value.

    Dimensions

    Dimensions

    Pinout

    On-board Function Diagram

    On-board Function Diagram

    Name Details
    Type-C Type-C USB port
    5V 5V power output
    VIN 7-24V, MCU system power input
    VM 5-24V, Motor power input
    JP1 Power switch jumper cap, controller and motor share power when short-circuited
    SW Power control switch
    PMODE Motor drive mode Jumper cap, PH/EN control mode when short-circuited, PWM control mode when disconnected
    Motor Dc motor interface
    ESP32-S3 module ESP32-S3 module launched by Espressif
    M1EN/M1PH M1 motor drive jumper
    M2EN/M2PH M2 motor drive jumper
    RST reset button
    BOOT BOOT button
    GPI GDI display interface
    CAM DVP camera interface
    USB USB interface, can be connected to USB peripherals
    MicroSD TF card slot

    Motor Pin

    PINS Romeo ESP32-S3 PINS
    M1_EN/IN1 12
    M1_PH/IN2 13
    M2_EN/IN1 14
    M2_PH/IN2 21
    M3_EN/IN1 9
    M3_PH/IN2 10
    M4_EN/IN1 47
    M4_PH/IN2 11

    GDI Display Interface

    This interface is a DFRbot dedicated GDI display interface for connecting a screen using a 18pin-FPC wire.

    The pin list for using GDI camera interface is shown below:

    FPC PINS Romeo ESP32-S3 PINS Description
    VCC 3V3 3.3V
    LCD_BL 21 Backlight
    GND GND GND
    SCLK 17/SCK SPI clock
    MOSI 15/MOSI Host output, slave input
    MISO 16/MISO Host input, slave output
    LCD_DC 3 Data/command
    LCD_RST 38 Reset
    LCD_CS 18 TFT Chip Select
    SD_CS 0 SD card chip select
    FCS 7 Font library chip select
    TCS 12 Touch chip select
    SCL 2 I2C clock
    SDA 1 I2C data
    INT 13 INT
    BUSY 14 Tearproof pins
    X1 NC custom pin 1
    X2 NC custom pin 2

    When using FPC to connect the screen, please configure the corresponding pin numbers according to the GDL demo. Normally, only three pins need to be configured on different main controllers.

    Displays that support GDI:

    CAM Interface

    The pin list for using DVP camera interface is shown below.

    CAM PINS FireBeetle ESP32-S3 PINS Description
    NC NC NC
    AGND / Analog GND
    SDA 1/SDA I2C data
    AVDD / 2.8V
    SCL 2/SCL I2C Clock
    RST / Pulled up to DOVDD
    VSYNC 6/A2 Frame sync signal
    PWDN / Pulled down
    HREF 42 Horizontal sync signal
    DVDD / 1.5V
    DOVDD / 2.8V
    D9 48 DATA 9
    XMCLK 45 Clock signal
    D8 46 DATA 8
    DGND GND Digital GND
    D7 8/A3 DATA 7
    PCLK 5/A1 Pixel Clock signal
    D6 7/D5 DATA 6
    D2 39 DATA 2
    D5 4/A0 DATA 5
    D3 40 DATA 3
    D4 41 DATA 4
    NC NC NC
    NC NC NC

    Pin connection

    Connect the pin 1 of the camera to the white dot position

    1. FLASH Download Tool

    This tutorial offers a detailed guide on using Flash Download Tools for firmware burning on ESP32 chips, covering tool download, module connection, controller selection, and bin file burning.

    2. ESP32 Arduino Tutorial

    The ESP32 Arduino General Tutorial helps users master various ESP32 APIs from basic to advanced in the Arduino environment, enabling development and debugging of ESP32 applications.

    3. ESP32 MicroPython Tutorial

    This tutorial offers a comprehensive guide on installing MicroPython on ESP32, including firmware download, board compatibility, and practical coding examples, along with a detailed exploration of LVGL for interactive UI creation.

    4. ESP32 PlatformIO Tutorial

    The tutorial guides you through using PlatformIO with ESP32, covering installation, project setup, and code upload, highlighting its efficiency over Arduino IDE.

    5. ESP32 ESP-IDF Tutorial

    This tutorial provides a detailed guide on using ESP-IDF for ESP32 development, covering installation methods, compiling and flashing projects, and utilizing components and libraries.

    FAQ

    • What will cause burning error?

      There is no delay or too short delay in Loop.

      The USB cannot be recognized by the PC as some functions are incorrectlly called.

      How to solve

      Press Boot, press RST and release both, then try burning again.

    Explore More Related Questions >

    Was this article helpful?

    TOP