Brief introduction of microROS control board

The MicroROS control board is a ROS2 driver controller and an ESP32S3 dual-core development board. On board ESP32S3 core module control unit, motor driver, servo driver, six-axis IMU attitude sensor and other important peripherals. It supports WiFi, Bluetooth, serial port and other communication functions, and supports 4-channel encoder motors, 2-channel PWM servos, 1-channel lidar and 1-channel ESP32 WiFi camera module, Type-C power interface supports Raspberry Pi 5(5.1V/5A) PD power supply protocol. And it comes with peripheral driver firmware, users can directly access the ROS2 environment for use.

Description of onboard resources

image-20240118173109110

Battery power interface: connect 7.4V battery (T-type interface) to power the robot.

Battery charging interface: Connect DC8.4V charger to charge the robot.

Power switch: robot power main switch.

Reset button: The reset button of the ESP32S3 control chip.

Lidar interface: Connect the MS200 lidar.

Type-C serial port: used for burning firmware, configuration parameters, serial communication and other functions.

BOOT button: The BOOT button of the ESP32S3 control chip can also be used with custom keys.

Custom button: ESP32S3 control chip GPIO, programmable custom function.

Motor interface: Connect 310 encoder motor.

Antenna interface: Connect the external antenna.

ESP32S3 control chip: The main control chip of the microROS control board is responsible for managing all peripheral functions on the board.

Six-axis IMU chip: provides the current pose information of the robot.

Custom GPIO *2: UART port, can be used connect WiFi camera module.

PWM servo interface: used to connect two PWM servo.

Type-C Power supply interface: Connect the Type-C interface of the Raspberry PI 5 to power the Raspberry PI 5.

Buzzer: Active buzzer for low voltage alarm prompt.

Power indicator: red constant light means normal.

MCU indicator light: under normal circumstances, it will always flash in a cycle (the frequency is two flashes every three seconds); Flash at low voltage (every 100 ms); In configuration mode, it flashes slowly (once per second). In test mode, it will blink continuously (three flashes every three seconds).

image-20240118173109110

D1 and D2: Custom indicators.

GPIO Pin Assignment

image-20240116111340661

Name of peripheral deviceESP32-S3-GPIO
Motor M1-PWM-M1AGPIO4
MotorM1-PWM-M1BGPIO5
MotorM1-encoder-H1AGPIO6
MotorM1-encoder-H1BGPIO7
MotorM2-PWM-M2AGPIO15
MotorM2-PWM-M2BGPIO16
MotorM2-encoder-H2AGPIO47
MotorM2-encoder-H2BGPIO48
MotorM3-PWM-M3AGPIO9
MotorM3-PWM-M3BGPIO10
MotorM3-encoder-H3AGPIO11
MotorM3-encoder-H3BGPIO12
MotorM4-PWM-M4AGPIO13
MotorM4-PWM-M4BGPIO14
MotorM4-encoder-H4AGPIO1
MotorM4-encoder-H4BGPIO2
BOOT button-IO0GPIO0
Custom key-KEY1GPIO42
Battery voltage detection-BATGPIO3
MCU indicator light-LEDGPIO45
BuzzerGPIO46
Servo interface -S1GPIO8
Servo interface -S2GPIO21
IMU interrupts -INTGPIO41
IMU-I2C-SCLGPIO39
IMU-I2C-SDAGPIO40
Radar RX-serial port 1-TXD1GPIO17
Radar TX-serial port 1-RXD1GPIO18
Type-C serial port RX-TXD0GPIO43
Type-C serial port TX-RXD0GPIO44
Custom GPIOGPIO35
Custom GPIOGPIO36
Custom indicator lightsD1
Custom indicator lightsD2