Build a 4WD ESP32 Robot Car + Transform It Into a Tank | ACEBOTT QD001

by Shahbaz Hashmi Ansari in Circuits > Robots

2131 Views, 14 Favorites, 0 Comments

Build a 4WD ESP32 Robot Car + Transform It Into a Tank | ACEBOTT QD001

This ESP32 Robot Car Can Do EVERYTHING — ACEBOTT QD001 Review
040701_1775656115446.gif

I've always wanted to build a robot car that I could actually program myself — not just buy a pre-made toy, but something where I understand every part, wire it up, and write the code. That's exactly what the ACEBOTT QD001 gave me.

The QD001 is a 4-wheel drive robot car kit built around the ESP32 microcontroller. The ESP32 has built-in WiFi and Bluetooth, which means once it's programmed, you can drive this thing from your smartphone over a WiFi connection — no wires, no dongle, nothing extra needed. It also uses Mecanum wheels, which are those special omnidirectional wheels that let the car move forward, backward, sideways, and diagonally. That alone makes it way more interesting than a standard RC car.

But the part that really got me excited was the ACEBOTT QD004 tank expansion pack. With just a screwdriver and about 15 minutes, you can swap out the Mecanum wheels for tank tracks and turn the exact same car into a completely different machine that can handle rough outdoor terrain.

In this Instructable, I'll walk you through the full build — assembling the QD001 from scratch, programming it using ACEBOTT's browser-based coding platform (no software installation needed), running through all the built-in smart features, and then doing the tank transformation with the QD004 pack.

No soldering required. No prior coding experience needed.

Supplies

Screenshot 2026-04-13 201640.png
Screenshot 2026-04-13 202137.png
Screenshot 2026-04-13 202203.png
Screenshot 2026-04-13 202219.png
Screenshot 2026-04-13 202321.png

For the QD001 Robot Car:

Everything below comes inside the QD001 box — you don't need to source any of it separately:

  1. 1× ESP32 Max Controller Board (the brain of the car — has built-in WiFi + Bluetooth)
  2. 1× ESP32 Car Shield V1.0 (the base board that connects everything together)
  3. 4× DC Gear Motors
  4. 4× 6cm Mecanum Wheels (omnidirectional)
  5. 1× Ultrasonic Sensor (for obstacle detection)
  6. 1× Line Tracking Sensor Module (3-channel, for line following mode)
  7. 1× Servo Motor (for the sensor mount)
  8. 1× IR Receiver Module
  9. 1× IR Remote Control
  10. 1× Battery Holder (fits 2× 18650 cells)
  11. Acrylic panels (the car body frame)
  12. Screws, standoffs, and all mounting hardware
  13. Wiring cables (pre-cut, color coded)

You also need to supply yourself:

  1. 2× 18650 Li-ion batteries (NOT included — buy separately)
  2. A laptop or PC with a USB port and Chrome/Edge browser
  3. A smartphone (Android or iOS) with the ACEBOTT app installed (free download)

For the QD004 Tank Transformation:

Everything below comes inside the QD004 box:

  1. 4× Tank track hub adapters (replace the Mecanum wheels)
  2. 2× Continuous rubber tank track loops
  3. Mounting screws and hardware

Tools needed for the whole build:

  1. 1× Small Phillips head screwdriver (the only tool you need)

Where to get the kits:

Coupon Code: roboatticLab16OFF

Use COUPON here: https://bit.ly/4dBlm3l

Get from AliExpress: https://www.aliexpress.com/item/1005007077146082.html

Assembling the Robot Car

Assembly Video

The assembly takes around 45–60 minutes the first time. ACEBOTT provides a full step-by-step PDF guide and an assembly video on their website (acebott.com → Resources → Assembly Videos). I recommend having that open in one tab as a reference while you build.

Here's the sequence I followed, which makes the process clean and logical:

1. Build the base chassis

Start with the acrylic bottom plate. Attach the four DC gear motors to the corners of the chassis using the provided screws and metal brackets. Make sure the motor shafts are pointing outward — this is where the wheels will sit.

2. Mount the ESP32 Car Shield

The Car Shield is the main circuit board that everything connects to. It sits on top of the chassis, held in place by standoffs. The standoffs screw into the acrylic and the board sits on top — four screws, very simple.

3. Attach the ESP32 controller board

The ESP32 Max board plugs directly into the Car Shield. It clicks in — you'll see the GPIO pins align with the socket on the shield. No soldering at any point.

4. Wire the motors

Each motor has two wire leads. These plug into the motor terminals on the Car Shield. The left-side motors go to one terminal block, the right-side motors to the other. The wires are color-coded — match the colors and you won't make a mistake.

5. Mount the sensors

  1. The ultrasonic sensor clips onto the servo motor arm at the front of the car. This is what detects obstacles.
  2. The line tracking sensor mounts underneath the front of the chassis, pointing down at the floor.
  3. The IR receiver clips to the front of the shield board.

All sensor connections are labeled on the Car Shield — just match the label to the correct port and plug in.

6. Fit the battery holder

The battery holder slides into the underside of the chassis and secures with a screw. Leave it empty for now — don't insert the batteries until you're ready to do the first power-on after programming.

7. Fit the Mecanum wheels

Press each wheel onto its motor shaft and tighten the grub screw with the small Allen key (included in the hardware bag).

One thing that trips people up: The Mecanum wheels are directional — each wheel has angled rollers, and they need to be arranged in a specific pattern across the four corners for the omnidirectional movement to work correctly. Look at the assembly diagram in the PDF for the correct orientation before tightening. Getting this wrong means the car drifts instead of moving straight.

Once all four wheels are on, your car is physically built. Before inserting batteries, move on to Step 2 to get the software loaded first.

Programming With ACECode

Programming With ACECode

This is the part most people expect to be complicated. It isn't.

ACEBOTT has a browser-based coding platform called ACECode, which is built on the Scratch 3.0 framework. You open it in your browser — nothing to download or install. It uses drag-and-drop block coding, which means you can program the car even if you've never written a line of code before.

Here's the complete workflow I used:

Step 2.1 — Open ACECode

Go to: https://acebott.com/acecode

Open it in Chrome or Edge (other browsers may have USB connection issues). You'll see the block-based coding interface load in the browser.

Step 2.2 — Connect the car to your laptop

Use a Micro-USB cable to connect the car's ESP32 board to your laptop's USB port. The car does NOT need batteries for this step — it powers through USB.

Step 2.3 — Select the correct port

In ACECode, look for the port/connection button (usually in the top left area of the interface). Click it and select the COM port that appears — this is your ESP32 board. If you see multiple COM ports and aren't sure which is correct, unplug and replug the USB cable; the one that appears and disappears is your board.

Step 2.4 — Upload the firmware (one-time only)

The first time you use a new ESP32 Car Shield board, you need to flash the ACEBOTT firmware to it. ACECode will prompt you to do this automatically when you first connect. Click the firmware upload button and wait for it to complete. This takes about 30–60 seconds and only ever needs to happen once for that specific board.

Step 2.5 — Load the App Control example code

In ACECode, navigate to the Tutorials section. You'll find pre-written example code files for all the different modes the car can run. Select App Control — this is the main control code that works with the ACEBOTT smartphone app.

Step 2.6 — Switch to Upload Mode and upload

By default, ACECode runs in "Online Mode" (which requires the USB cable to stay connected). For the car to run independently, switch to Upload Mode using the toggle at the top of the interface.

In Upload Mode, you'll notice something interesting: ACECode automatically generates the equivalent Arduino C code and Python code side-by-side with your blocks. This is a genuine learning tool — if you want to start understanding real programming languages, this is a great way to bridge from blocks to text code.

Once in Upload Mode, click the Upload button. Watch the progress bar — when it hits 100%, the upload is complete.

Step 2.7 — Unplug and test

Unplug the USB cable. Insert the two 18650 batteries into the battery holder. Flip the power switch on the Car Shield.

The ESP32 creates its own WiFi hotspot. Open your phone's WiFi settings and connect to the ACEBOTT network. Then open the ACEBOTT app — you should see the car listed. Connect to it, and the full control interface appears.

Your car is now live.

Demo: Features of the QD001

Demo: Features of the QD001

Once the App Control code is uploaded and the app is connected, here's everything the car can do out of the box:

App Control over WiFi

The main control screen in the ACEBOTT app gives you a virtual joystick. Because of the Mecanum wheels, the car can move in any direction — forward, backward, left, right, and full diagonal movement. You can also strafe sideways without rotating the car, which is something a standard 4WD car can't do. There are also buttons to toggle the onboard LEDs and play sounds through a buzzer.

IR Remote Control

The included IR remote lets you control the car without a smartphone. Basic directional control — forward, backward, left, right, and stop. Good for demos where you don't want to fuss with WiFi.

Obstacle Avoidance Mode

Switch to this mode from the app, and the car drives autonomously. The ultrasonic sensor at the front continuously measures the distance to objects ahead. When it detects something within range, it automatically steers away. It handles multi-direction avoidance — meaning it checks left and right before deciding which way to turn.

Follow Mode

This one gets the most attention when I show people. In follow mode, the car tracks the nearest moving object in front of it and follows it around the room. Point the front of the car toward yourself and walk — it follows. Works surprisingly well.

Line Tracking Mode

Place the car on a surface with a black line drawn on it (electrical tape on a white surface works perfectly). In line tracking mode, the three-channel sensor underneath the car detects the line and the car follows it autonomously around the path.

Tank Transformation: Adding the QD004

Tank Transformation: Adding the QD004
Screenshot 2026-04-13 202321.png

This is the part that makes the ACEBOTT system genuinely clever. You don't buy a separate robot for tank mode — you transform the same car you just built.

What's in the QD004 box:

  1. 4× Tank hub adapters (bolt-on replacements for the Mecanum wheels)
  2. 2× Rubber tank track loops
  3. Mounting hardware

The swap process:

4.1 — Remove the Mecanum wheels

Use the small Allen key to loosen the grub screw on each Mecanum wheel, then pull the wheel off the motor shaft. Repeat for all four wheels. Set them aside — you can swap back anytime you want.

4.2 — Attach the tank hub adapters

The tank hub adapters bolt directly onto the same motor shafts where the Mecanum wheels were. They're slightly wider and have sprocket teeth around the outside that the tank tracks will grip. Tighten them the same way — grub screw with the Allen key.

4.3 — Fit the tank tracks

Each rubber track loop goes around two hubs on one side of the car (front-left + rear-left for the left track, front-right + rear-right for the right track). Loop the track around both hubs and work it into place. The tracks have some tension to them — loop one end around one hub first, then stretch it across to the second hub.

The first time you do this it takes a couple of minutes to get the tension even. Once you've done it once, subsequent swaps are quick.

For off-road and outdoor use, the QD004 is the better configuration. For indoor precision movement and sideways sliding, the Mecanum wheels win.

Working Video

Working Video

This is the key point: you don't need to change the code at all. The same App Control code that runs the Mecanum wheel car runs the tank car identically. Open the ACEBOTT app, connect, and drive.

The driving character is completely different in tank mode. The tracks give significantly better grip on rough surfaces, outdoor terrain, grass, and carpet. The turning is now skid-steering (like a real tank) instead of the smooth omnidirectional movement of the Mecanum wheels.

If you want to go further, ACEBOTT has 9 expansion packs for this same car — including a camera pack, AI vision pack, 5-DOF robot arm, GPS module, and solar charging panel. Each one plugs into the same QD001 base.

If you build one, drop a photo in the comments below — I'd love to see it!