|
|
ESP32-S3-MINI-1-N4R2 |
x 1 | |
|
|
TB6612FNG,C,8,ELToshiba Semiconductor and Storage
|
x 1 | |
|
|
MPU-6050 |
x 1 | |
|
|
TCA9548AMRGERTexas Instruments
|
x 1 |
|
ESP-PROGEspressif
|
|
|
KiCad 9.0 |
RoboCore 2.0 - ESP32-S3 Robotics Controller
RoboCore 2.0 – ESP32-S3 Robotics Controller Board
RoboCore 2.0 is my second-generation robotics controller board, designed as a compact and reliable platform for small mobile robots.
It focuses on stable power delivery, clean signal routing, and easy debugging, making it a solid controller for future robotics projects.
📌 Main Use Cases
Differential-drive robot controller
Line-following + PID speed control
IMU-based motion / balancing experiments
Multi-sensor robotics platform

3D PCB View:

PCB Front Layer:

PCB Back Layer:

🧩 PCB Design Overview
RoboCore 2.0 is built on a 2-layer FR-4 PCB (1.6 mm) and optimized for robotics wiring and testing.
✅ Microcontroller Section
ESP32-S3 module (USB, Wi-Fi, BLE, dual-core)
Proper EN/BOOT circuitry and decoupling based on Espressif reference designs
Reliable USB flashing + stable auto-reset behavior
✅ Power Distribution
5V rail for motors and sensors
3.3V rail for logic and I²C devices
Decoupling capacitors placed close to ICs for stable operation
✅ Motor Driver + Encoder Area
TB6612FNG dual H-bridge motor driver
Independent PWM control per motor
IN1/IN2 direction control
Wider copper traces near motor current paths
Encoder signals routed short and clean for noise immunity
✅ IMU + I²C Architecture
MPU6050 IMU (Accel + Gyro)
Connected via TCA9548A I²C multiplexer
I²C wiring grouped and tuned for stable 400 kHz operation
Expansion channels available for OLED + extra sensors
✅ Sensors & Headers
3× IR sensors (ADC inputs)
Ultrasonic sensor header (TRIG/ECHO)
Dedicated headers for OLED + encoders
Clear silkscreen labels for easier wiring
✨ Key Features
🔥 Hardware Highlights
MCU: ESP32-S3 (USB + Wi-Fi + BLE)
Motor Control: 2× DC motors via TB6612FNG
Feedback: Left & right quadrature encoders (A/B)
IMU: MPU6050 via TCA9548A I²C MUX
Sensors:
3× IR sensors (line following / edge detection)
Ultrasonic sensor header (TRIG/ECHO)
I²C expansion ports for additional modules
🧪 Debug-Friendly Design
USB flashing + Serial monitor ready
Test firmware included for each subsystem
Python tools to visualize IMU angle (including live 3D viewer)
🧪 Test Firmware (ESP-IDF)
This project includes ESP-IDF based tests to validate the board step-by-step.
1) IMU Angle Viewer (imu_angle_test)
Reads MPU6050 via TCA9548A (channel 0)
Uses complementary filtering (acc + gyro)
Example logs:
Angle: 2.15 deg | AccAngle: 0.60 | GyroY: 2.38 dps | dt: 0.013 s
✅ Verifies:
I²C bus stability
MUX channel selection
MPU6050 configuration and readings
2) Motor + Encoder Test (motor_encoder_test)
Drives both motors forward/back using PWM
Reads encoder A/B channels and prints counts + direction
✅ Confirms:
TB6612FNG wiring and control
Motor supply path
Encoder signal integrity
3) Ultrasonic + OLED + IR Test (sensors_test)
Ultrasonic distance measurement
IR ADC readings
OLED shows live sensor values + prints over serial
✅ Validates:
Stable 5V / 3.3V rails under load
I²C operation with OLED + MUX
Correct ADC mapping for IR sensors
🧰 Python Tools
Helper scripts can be added (optional):
imu_angle_plot.py – angle vs time plot
imu_3d_viewer.py – real-time 3D orientation view
Requirements
pip install pyserial matplotlib
⚠️ Tip: Close idf_monitor before running Python scripts on the same COM port.
🚀 Getting Started (ESP-IDF)
Prerequisites
ESP-IDF (v5.5.1 used)
Python 3.x + pyserial + matplotlib
USB cable
Build & Flash
idf.py set-target esp32s3
idf.py menuconfig # optional
idf.py build
- idf.py flash monitor


RoboCore 2.0 - ESP32-S3 Robotics Controller
*PCBWay community is a sharing platform. We are not responsible for any design issues and parameter issues (board thickness, surface finish, etc.) you choose.
Raspberry Pi 5 7 Inch Touch Screen IPS 1024x600 HD LCD HDMI-compatible Display for RPI 4B 3B+ OPI 5 AIDA64 PC Secondary Screen(Without Speaker)
BUY NOW- Comments(0)
- Likes(13)
- 6 USER VOTES
- YOUR VOTE 0.00 0.00
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
-
10design
-
10usability
-
10creativity
-
10content
-
9design
-
9usability
-
9creativity
-
9content
-
10design
-
10usability
-
10creativity
-
10content
-
10design
-
10usability
-
10creativity
-
10content
-
8design
-
8usability
-
8creativity
-
8content
-
10design
-
10usability
-
10creativity
-
10content
More by Avishka Vishwajith
-
ESP AutoBoard_32
Hardware Capabilities5 Optocoupler Inputs: 12V-24V isolated inputs using PC817/PC827 optocouplers4 S...
-
Smart Clock
This project is a Wi-Fi-enabled digital clock built around an ESP32 module that drives a four-digit ...
-
RoboCore 2.0 - ESP32-S3 Robotics Controller
RoboCore 2.0 – ESP32-S3 Robotics Controller BoardRoboCore 2.0 is my second-generation robotics contr...
-
DC Motor Speed Controller
12V DC Motor Speed Controller – PCB Design using KiCADThis project showcases a compact, efficient, a...
-
-
ARPS-2 – Arduino-Compatible Robot Project Shield for Arduino UNO
817 0 2 -
A Compact Charging Breakout Board For Waveshare ESP32-C3
1368 3 6 -
AI-driven LoRa & LLM-enabled Kiosk & Food Delivery System
1298 2 0 -
-
-
-
ESP32-C3 BLE Keyboard - Battery Powered with USB-C Charging
1497 0 1 -
-
mammoth-3D SLM Voron Toolhead – Manual Drill & Tap Edition
1166 0 1 -







