Robotics2025

Bluetooth Sumo Robot

Competition-grade sumo robot controlled via PS4 Bluetooth, built with a dual-microcontroller architecture (ESP32 + Arduino Uno), tank-steering drive, and a custom 3D-printed wedge chassis. 2nd place in CEN325 competition.

Bluetooth Sumo Robot
2nd Place — CEN325 CompetitionRobotics / Embedded
130ms Control Latency
PS4 Bluetooth
1.85kg Robot
15m Bluetooth Range

Overview

Built as part of the CEN325 course at Abu Dhabi University, this is a competition-grade sumo robot designed to push opponents out of a 200cm arena. The ESP32 handles Bluetooth Classic communication with a PS4 controller using the Bluepad32 library, while the Arduino Uno handles real-time motor control via a tank-steering algorithm. The two microcontrollers communicate over UART serial at 115200 baud. The robot chassis and wedge ramp were designed in Tinkercad and 3D-printed in PLA at 30% infill for a balance of strength and weight. A dual battery system separates the 12V SLA motor supply from the 7.4V Li-ion logic supply, preventing microcontroller resets during peak motor current draw.

The Problem

Design a competitive sumo robot within a 200 AED budget that can push opponents out of a 200cm arena, controlled wirelessly via PS4 Bluetooth, with reliable real-time motor control, a 3D-printed chassis, and a total weight under 2kg.

The Solution

A dual-microcontroller architecture separates concerns: ESP32 handles Bluetooth with a PS4 controller via the Bluepad32 library, while Arduino Uno handles real-time PWM motor control. They communicate over UART at 115200 baud. The chassis and low-profile wedge ramp were 3D-printed using Tinkercad designs. A dual battery system isolates motor power from logic circuits to prevent voltage sag during high-current motor operation.

How It Works

1

PS4 controller pairs to ESP32 via Bluetooth Classic using the Bluepad32 library

2

ESP32 maps joystick X/Y from raw values (-511 to 512) to a normalized range (-100 to 100)

3

Normalized coordinates sent to Arduino Uno over UART at 115200 baud as comma-separated 'x,y' strings

4

Arduino parses the values and computes: leftSpeed = Y - X, rightSpeed = Y + X

5

Speeds are mapped from -100 to 100 range to PWM values 0-255 for the TB6612 motor drivers

6

TB6612 drivers independently drive all 4 DC motors with proper H-bridge direction control

7

The 3D-printed wedge ramp at the front slides under opponents and lifts them to break traction

Key Features

  • PS4/PS5 controller connects to ESP32 via Bluetooth Classic using the Bluepad32 library
  • Tank-steering algorithm: leftSpeed = Y - X, rightSpeed = Y + X, mapped to PWM 0-255
  • UART serial communication at 115200 baud between ESP32 (wireless) and Arduino Uno (motor control)
  • Dual TB6612FNG motor drivers independently controlling all 4 DC motors
  • 3D-printed wedge ramp designed in Tinkercad at 25-30° angle, PLA at 30% infill
  • Dual battery system: 12V SLA for motors, 7.4V dual-18650 Li-ion for logic circuits
  • Bluetooth control range of 15m, end-to-end latency of 130ms, total weight 1.85kg
  • 22+ minutes of battery runtime under continuous operation
  • Achieved 2nd place in CEN325 (IoT 1) competition at Abu Dhabi University

Technology Stack

ESP32Arduino UnoC++Bluepad32Bluetooth ClassicUARTTB6612Tinkercad3D Printing

Results

Achieved 2nd place in the CEN325 (IoT 1) competition at Abu Dhabi University, supervised by Dr. Rabah Al Abdi. The robot achieved a Bluetooth control range of 15m, end-to-end latency of 130ms, total weight of 1.85kg (within the 2kg limit), and 22 minutes of battery runtime. Team: El Sayed Hesham Mowafi, Ahmed Hany Elhadad, Amro Kamal Jalad.

Command Palette

Search for a command to run...

Chat with AI