Skip to content

KingDev4522/RC-Car

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 

Repository files navigation

🏎️ Smart 4WD Embedded Robotic Platform

A breathtaking, custom-engineered, smartphone-controlled hardware beast built from the ground up to conquer the limits of DIY robotics.


🎯 The Final Outcome

This is not just another off-the-shelf robotics kit—this is a relentless, fully functional, wireless 4-Wheel Drive (4WD) robotic vehicle engineered entirely from scratch. The final outcome is a robust, high-torque smart car that utilizes aggressive differential drive (skid-steering) to pivot in place, carve through tight corners, and execute blistering multidirectional movements.

Controlled in absolute real-time via a smartphone app over a Bluetooth Serial Port Profile (SPP) connection, this vehicle stands as a testament to deep mechatronic engineering, overcoming severe power delivery bottlenecks, and the sheer willpower of custom hardware fabrication.


🚀 Key Features

  • Custom Chassis Engineering: Built on a manually cut 6mm rigid wooden board (20x12 cm) to eliminate flex, topped with a repurposed toy car canopy for a polished aesthetic.
  • Differential Drive (Skid-Steering): Utilizes a 4-motor setup for pivot-in-place turning and omnidirectional routing.
  • Dynamic Speed Reduction Algorithm: Implements a custom speed_reducing_factor (dividing PWM by 3 on inner wheels) to allow for smooth, arced diagonal cornering rather than rigid pivots.
  • Total Voltage Brownout Mitigation: Custom Pulse Width Modulation (PWM) constraints and tiered speed mapping (0-9) prevent the L293D shield from pulling too much current and resetting the Arduino under heavy mechanical load.
  • 8-Way Directional Control: Real-time smartphone control via Bluetooth Serial Port Profile (SPP).

📖 The Engineering Journey: From Raw Wood to a Polished Beast

Building this car was a massive challenge that required pushing past endless hardware limitations, voltage drops, and mechanical failures. Here is the story of how raw components were forged into this machine.

🪚 The Foundation: Why a Custom 6mm Wooden Chassis?

When building a 4WD system, torque is everything. Standard DIY kits use flimsy, paper-thin acrylic boards that bend, warp, and wobble when the motors suddenly change direction. I refused to accept a fragile build.

Instead, I hand-crafted the chassis from a rigid, thick 6mm wooden board, cut exactly to 20x12 cm. This was incredibly difficult—cutting thick wood by hand required relentless precision. If the board was even slightly misaligned, the four wheels wouldn't sit flush on the ground, and differential steering would completely fail due to uneven friction. Mounting the DC gear motors required high-strength double-sided tape, acting not just as an adhesive, but as a crucial vibration-dampener to absorb the shock of high-speed turns.

⚡ The Power Crisis: Conquering the Voltage Drop

The absolute hardest part of this build was power delivery. In the early stages, the car struggled. When I tried to make a hard pivot, the system would stutter, stall, or the Arduino would completely reboot.

The Problem: The heart of the car is the Adafruit L293D Motor Shield. While fantastic for logic, its internal silicon physically consumes a huge chunk of voltage (a known voltage drop of around 1.2V to 2V). When all four BO motors demanded current simultaneously, they choked the system, causing a catastrophic "brownout" where the brain of the car lost power.

The Solution: I had to drastically rethink the power architecture. I couldn't just use standard weak batteries. I engineered a high-discharge 2-Cell (2S) Lithium-ion (18650) battery system. By intentionally increasing the raw voltage and current headroom, I was able to punch right through the L293D's voltage drop. This flooded the motors with the exact voltage they needed to spin faster, deliver aggressive torque, and execute flawless skid-steering without ever starving the Arduino of power.

🛡️ The Armor: Repurposing the Toy Car Canopy

Exposed wires, bare green circuit boards, and taped batteries look like a messy science fair project. I wanted this to look like a finished, consumer-ready product.

I salvaged an aerodynamic canopy from a broken toy car and painstakingly modified it to fit securely over my wooden chassis. This wasn't just for breathtaking aesthetics—it served a vital engineering purpose. The canopy acts as a protective roll-cage, shielding the sensitive silicon of the Arduino, the Bluetooth transceiver, and the exposed wiring from dust, impacts, and crashes. When powered on, the red and blue status LEDs of the internal modules faintly glow through the dark plastic shell, giving the car a menacing, high-tech heartbeat.


⚙️ Exhaustive Hardware Architecture & Assembly

Every single millimeter of this assembly was deliberately planned for efficiency and structural integrity.

1. The Electronic Brain & Motor Shield Stack

Space is a premium on a 20x12 cm deck. To maximize efficiency, the Adafruit L293D Motor Shield is seated directly on top of the Arduino Uno R3 in a stacked "top-hat" configuration. The heavy-gauge wires of the four individual BO motors are routed cleanly along the wooden undercarriage, brought up through the chassis, and locked directly into the M1, M2, M3, and M4 terminal blocks on the shield. This tight wiring ensures minimal electrical resistance.

2. The Master Kill-Switch (3-Pin Slide Switch Integration)

With high-discharge batteries, manually ripping out wires to turn the car off is dangerous and wears out the components. I integrated a heavy-duty 3-pin slide switch into the power line.

  • The raw power from the Li-ion battery flows into the Middle Pin (Common).
  • The Left Pin routes power directly into the EXT_PWR block of the L293D shield.
  • Pushing the mechanical slider snaps the circuit closed, simultaneously flooding the motor shield and the Arduino with stable power. It is a clean, instant, hardware-level boot sequence.

3. The Wireless Telemetry Link (HC-05)

The HC-05 Bluetooth module is mounted at the highest point under the canopy to ensure maximum signal range without wireless interference from the spinning magnetic motors below. It pulls its 5V power directly from the Arduino's regulated rails. To ensure the Bluetooth chip isn't fried by high-voltage data signals, a custom voltage divider circuit safely steps down the Arduino’s logic, creating a flawless, low-latency bridge between the smartphone and the car's physical actuators.


⚡ Complete Bill of Materials (BOM)

  • Microcontroller: Arduino Uno R3 (The logic center)
  • Motor Driver: Adafruit L293D Motor Drive Shield V1 (The muscle)
  • Telemetry System: HC-05 Bluetooth Module (The wireless bridge)
  • Actuators: 4x High-Torque DC Gear Motors (BO Motors)
  • Traction: 4x High-Friction Rubber-Treaded Wheels
  • Custom Chassis: Hand-measured, precision-cut 6mm rigid wooden deck (20x12 cm)
  • Exterior Shell: Modified aerodynamic toy car canopy
  • Power Plant: High-Discharge 2S Battery System (18650 Li-ion architecture)
  • Power Management: Hardware-level 3-Pin Slide Switch
  • Fasteners: High-strength double-sided mounting tape, structural standoffs, and heavy-gauge jumper wires.

image image image image image

🔮 Future Scope

  • Autonomous Mode: Integration of an HC-SR04 Ultrasonic sensor on a micro-servo for obstacle mapping and avoidance.
  • IoT Upgrade: Replacing the HC-05 with an ESP8266/ESP32 for full Wi-Fi/Web dashboard control.
  • Closed-Loop Control: Adding rotary encoders to the wheels to implement PID control for perfectly straight driving, eliminating floor-friction drift.

Architected, Engineered, & Built by Debjeet Mazumder
Pushing the absolute limits of custom hardware, power delivery, and embedded systems.

About

A custom-built 4WD Bluetooth RC Car featuring a hand-cut rigid wooden chassis, Arduino Uno, L293D motor shield, and custom embedded C++ firmware for differential drive kinematics.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages