Fully working RC-car with Turn Signals & Brake Lights
Obliczymy ostateczną cenę na podstawie wybranego pliku. Sprawdzisz ją i zaakceptujesz przed płatnością.
Zapisane na tym urządzeniu.
A large RC-car based on an ESP32 microcontroller and a Makita drill machine battery package.
- Ocena
- 0 / 5
- Polubienia
- 4
- Pobrania
- 10
- Wydruki
- 0
- Wyświetlenia
- 127
- Oceny
- 0
Aktualizacja u źródła:
Informacje o modelu
- Źródło
- Printables
- Kategoria
- RC & Robotics
- Licencja
- Creative Commons — Attribution — Noncommercial
Large RC-car with Head Lights & Hazard Lights
This is a fully functional RC-car based on an ESP32-S3 microcontroller and a drill machine battery. The car is wide and very stable across many different terrain types. I have designed this RC car as a base vehicle, which you can easily upgrade with more features if you're tech savvy and like microcontrollers.
This is my first ever self-made RC vehicle, so it's far from perfect but the most important thing is: It works! And it was fully made from scratch, meaning I did not use any default or industry-standard components and tried to control all the designs as much as possible. Including tires, rims and a solid chassis.
During a test using my own motor setup, the car was able to keep up with an ebike driving 25 km/h. Depending on your motor setup, the car might go much faster. Or it can be used for towing, using high torque DC motors, compromising a little bit of the maximum speed that it would normally have.
I used Solidworks For Makers to build the printable assembly.
I tried to make the assembly instructions as complete and accessible as possible so others can have it fully functional too. Have fun!
Quick Start Guide
If you want to...
Print right now, download the STL files or "printables.zip"
Edit the models, download "editables.zip" for STEP and IGES files
Edit with Solidworks For Makers, download "solidworks.zip"
View all instructions, download "instructions.zip" right away
Install the firmware, download "firmware.zip" and Arduino IDE online
View this information later/offline, download "readme.pdf" or "readme.md"
Full List of Features
All the following features are available by default, if you follow the assembly instructions.
Accelerate smoothly
Drive forward and backward
Steer left and right smoothly
Toggle headlights on/off
Toggle tail lights on/off separately
Toggle hazard lights
Use turn signals (yes, both directions)
Ventilation shafts for cooling
Customizable motor mount
Exhaust blower to get rid of hot air
WiFi web interface controls
Included in the project
Printable STL files
Editable STEP and IGES model files
Original Solidworks Part and Assembly files
Draft quality slicer 3MF files (made using Anycubic Slicer Next)
Firmware for ESP32-S3 Dev Kit V1
Slicer & printer instructions
Mechanical assembly instructions
Electronics circuit diagram
Firmware installation instructions
The rims have mounts for hub caps. You may design your own hub caps and click them onto the existing rims easily.
Knowledge required
This project can be challenging for beginners as it involves not only printing, but also a bit of electronics, hardware and flashing firmware on a microcontroller. You should be able to follow through as I've included the instructions for every step.
During this project you need to:
Flash firmware onto an ESP32-S3 microcontroller board
Read a simple circuit diagram and mind the polarities
Solder basic electronics onto stripboard and scratch the right strips
Understand the basics of how gears and axles work
Have some experience with 3D printing and your favorite slicer
Known limitations
Some mearurements may need perfectioning, but you will be able to assemble it and it works! I just got to my first ever RC project. This project does have some minor limitations. For example, I am still working on a mobile app but you can use the web interface to control your car. It works just fine!
All limitations included:
Requires a large build plate (360mm long) - but the project folder contains a slightly weaker chassis version for smaller printers too!
Mobile app still in development (web interface works)
Suspension will be added later (no suspension yet)
Housing is still being designed (no housing yet)
Print your own motor mount or adapter
Brake lights not fully functional yet
I have used high torque motors that I disassembled from an old machine. You may not be able to use my motor mount, unless you print a very simple adapter for your specific motor, which you can screw onto my motor mount.
For the housing, I'm still testing a few designs that include transparent PETG for diffuse LED lighting. It will still be work in progress.
For the brake lights, I'm still trying to figure out when to activate them. As the car does not have a speedometer (yet) I'm unable to tell whether it's driving backward or simply slowing down. I will update the firmware as soon as there is a solution for it.
Complete Assembly Guide
Below you will find slicer instructions but also a complete circuit diagram and assembly instructions. There is a complete parts list and firmware instructions as well. The project contains everything you need to start right away.
I have split the assembly guide into four parts, each having a parts list and instructions:
Printing
Mechanics
Electronics
Firmware
Here's how to get started:
1. Print the parts
Use the STL files to slice yourself, the 3MF slicer files to start printing drafts right away, or download the editable files to tweak the model for yourself first. Here's how to print the defaults:
Tools required
Large 3D printer
Slicer software
Parts list
Chassis - Prevents dust coming in, contains air vents, holds the servo and motor mounts. Does need a lot of strength but can be played with.
Length : 359.69mm
Material : PLA or ABS/ASA of choiceInfill : 10-20% grid/gyroid
Supports : Not required
Orientation : Laying flat
Front - Used for mounting headlights and front turn signals onto the chassis.
Length : 139.9mmMaterial : PLA or ABS/ASA of choice
Infill : 5-10% grid/gyroid
Supports : Not required
Orientation : Flat on build plate
Rear - Used for mounting taillights, rear turn signals and brake lights onto the chassis.
Length : 184.1mmMaterial : PLA or ABS/ASA of choice
Infill : 5-10% grid/gyroid
Supports : Not required
Orientation : Flat on build plate
Splashback L - Used for mounting the knuckles for steering. Catches impact from the front wheels and steering servo moving parts, so requires super strength!
Length : 184.1mmMaterial : PLA or ABS/ASA of choice
Infill : 20-30% grid/gyroid
Supports : Necessary!
Orientation : Laying flat with supports
Splashback R - Used for mounting the knuckles for steering. Catches impact from the front wheels and steering servo moving parts, so requires super strength!
Length : 184.1mm
Material : PLA or ABS/ASA of choice
Infill : 20-30% grid/gyroid
Supports : Necessary!
Orientation : Laying flat with supports
Bridge - Used for mounting additional items such as the ESP32 or buck converters, and other features that you might want to add later.
Length : 185mm
Material : PLA or ABS/ASA of choice
Infill : 5-15% grid/gyroid
Supports : Not required
Orientation : Laying flat
Motor - Carries the weight and impact of one or two motors and the rear wheels. Catches impact when accelerating and braking too. Carries the rear axles. Needs a lot of strength!
Length : 115mm (longest side)
Material : PLA or ABS/ASA of choice
Infill : 15-25% grid/gyroid
Supports : Necessary!
Orientation : Upside down with supports
Deck - You can use this part to keep PCB's into their place, so they won't move when driving. Does not need a lot of strength. The ESP32-S3 is placed on up high on a deck to prevent EMI and brush motor interference, and to increase signal strength.
Length : 171mm (longest side)
Material : PLA of choice
Infill : 5-10% grid/gyroid
Supports : Necessary!
Orientation : Laying flat
Knuckle - Needs some strength to keep bolts into place, and to not break when steering wrongly by accident. Though most of the strength comes from the bolts and axles in it.
Length : 92,5mm (longest side)
Material : PLA or ABS/ASA of choice
Infill : 10-20% grid/gyroid
Supports : Not required
Orientation : Laying flat
Rod - Also 'Upper Rod'. Needs to hold the servo horn, either with or without screws (both are possible). Some strength required.
Length : 160mm (longest side)
Material : PLA or ABS/ASA of choice
Infill : 10-20% grid/gyroid
Supports : Not required
Orientation : Laying flat
Spacer - Also 'Lower Rod'. Should be printed flat and usually won't take very long to print. Some advice on printing:
Length : 160mm (longest side)
Material : PLA or ABS/ASA of choice
Infill : 5-10% grid/gyroid
Supports : Not required
Orientation : Laying flat
Rim - Best printed straight up with the outer collar hole facing up. Some printing advice (not required but useful):
Diameter : 35mm (outer)
Material : PLA or ABS/ASA of choice
Infill : 10-20% grid/gyroid
Supports : Usually not required
Orientation : Straight, outer collar hole facing up
Tire - Fastest printed laying flat, with holes facing up and down. More walls and top/bottom layers makes the tire stronger. No infill is required because the thick walls and top/bottom layers make the tire strong. Some very light line infill can be usefull for supporting the first top layer while printing.
Diameter : 66mm (outer)
Material : TPU with 95A hardness
Infill : 0-2% line
Layers : 4-6 layers (top and bottom)
Walls : 4-6 walls
Supports : Only for thick profile tires, not needed for low profile tires.
Orientation : Laying flat, rim holes facing up/down
Full print assembly instructions can be found in the project directory and pictures. Summary below.






2. Assemble the gears and axles
With the right parts (parts list below) and the right dimensions, everything should already be aligned correctly for you to easily assemble. Assembly should be very straight forward.
Tools required
Wrench 8 and 10
Allen key 1.5 and 2
Parts list
You can use RC-specific gears and axles, but some parts can be bought at the hardware store for cheaper and work just as well in most cases.
(4 pcs) M1 modulus gears with 5mm bore hole and grub screw. Used to drive the axle from the motors pinion gears.
(1 pcs) 200mm steel axle with 5mm diameter, *or** alternatively use a 5mm aluminum rod from the hardware store. Used as rear axle. (extra tool required: metal saw)
(2 pcs) 100mm steel axle with 5mm diameter, *or** alternatively a 5mm aluminum rod from the hardware store. Used as front wheel axles. (extra tool required: metal saw)
(4 pcs) collar with 5mm bore hole and grub screw, obtained at RC mechanical or electronics stores. Used to fix axles into place.
(4 pcs) ABEC-9 bearing with 5mm bore hole, used to freely rotate the axles into the PLA chassis and motor mount parts.
(14 pcs) M5 25mm bolts and nuts from the hardware store. Used to mount the chassis, cages, motor mount and steering knuckles.
(4 pcs) M6 90mm bolts, nuts and rings from the hardware store. Used to mount the steering knuckles and rods securely and allow smooth steering.
Full mechanical assembly instructions can be found in the project directory and pictures.
3. Soldering the electronics
This might be challenging, especially for beginners. Though it is mostly just the quantity of electronics, not the complexity of them. Most electronics are simple LEDs, resistors and transistors.
Tools required
Soldering iron / soldering station
Soldering wire (tin wire)
Third hand (helping hand) for soldering
Parts list
Most electronics can be bought at local electronics shops or even well known Chinese webshops. The electronics are mostly simple but the list is a bit long.
(1 pcs) ESP32-S3 DevKit V1 by DIYmall (optionally an extra antenna)
(1 pcs) BTS7960 motor driver
(1 pcs) MG995 servo
(1 pcs) XL4015 buck converter
(1 pcs) LM2596 buck converter
(1 pcs) Drilling machine battery package 18-21v
(1 pcs) Makita Li-ion battery mount
(8 pcs) White 5mm LED
(8 pcs) 470R resistor
(13 pcs) Red 5mm LED
(13 pcs) 220R resistor
(8 pcs) Yellow 5mm LED
(8 pcs) 330R resistor
(1 pcs) Veroboard approx. 65145mm
(1 pcs) 2m red wire AWG26
(1 pcs) 2m black wire AWG26
(1 pcs) 1m blue wire AWG26
(1 pcs) 1m green AWG26
(1 pcs) 1m yellow wire AWG26
(1 pcs) 1m red wire AWG14
(1 pcs) 1m black wire AWG14
(2 pcs) 12v DC motor
(6 pcs) 2N2222 transistor
(6 pcs) 1K resistor
(1 pcs) 15A fuse
(1 pcs) Schottky diode
(1 pcs) 5v DC blower fan
If you experience servo jitter, random resets or just want more confidence in your project:
Rather than two buck converters, you might want to use just one Hobbywing UBEC for 5A. This is a fixed output buck converter, specifically designed for RC-vehicles. The UBEC is better at handling servo currents and it's way more stable. You will also have less open electronics from buck converters and therefore, less potential errors and less risk for short circuits and mistakes.
Full electronics assembly instructions and a complete circuit diagram can be found in the project directory and pictures.
GPIO pins in the circuit diagram are NOT the ones that I used! You can find the real GPIO pins in the firmware or in the text below.

These are the GPIO pins that I used for my ESP32-S3 board:
Headlights : pin 18
Taillights : pin 5
Brake lights : pin 6
Left indicator : pin 7
Right indicator : pin 15
Signal sound : pin 16
Horn sound : pin 17 (added later)
Motor driver L_EN : pin 9
Motor driver R_EN : pin 10
Motor driver L_PWM : pin 11
Motor driver R_PWM : pin 12
Steering servo signal : pin 13
For beginners: The wires that go into the ESP32 on the circuit diagram, should be on these pins. For example, headlights should be connected to pin 18 on your ESP32-S3 module. The pin numbers are on the bottom side of the module.
4. Flashing ESP32-S3 firmware
Usually this is the point where beginners fail but please stay with me. I've included all the steps to flash firmware yourself. With these steps, it should not be too difficult. Just make sure you have the right ESP32-S3 microcontroller, as shown in the pictures.
You can flash firmware on the ESP32-S3 microcontroller using Arduino IDE on your laptop. Download the editor online and get the firmware from this project. The firmware sends signals from the ESP32S3 to the lights, motor driver using PWM and steering servo.
Tools required
Your PC or laptop
Arduino IDE (download online)
ESP32-S3 microcontroller
Firmware files (download here)
Parts list
ESP32-S3 DevKit V1 by DIYmall
USB-C cable
Firmware Flashing Instructions
After installing Arduino IDE, open the program and first download the libraries required for this firmware to work:
Go to the Library Manager in Arduino IDE (in the left sidebar menu)
Install the following libraries in the correct version!
> ESP32 (by Espressif) v3.0.7 - Do not update to a newer version, this may break WiFi and WebServer functionality.
> ESP32Servo (by Kevin) v3.2.0 - Should be fine updating up to this version, I have used the latest version and it works.





After installing the libraries you can proceed by following the next steps within Arduino IDE:
Open my firmware package in Arduino IDE
Connect the ESP32-S3 module to your USB port
Select the correct COM port in Arduino IDE
Select the board "ESP32S3 Dev Module"
Select the upload button on the top left and wait




Arduino IDE will start compiling the firmware first, and then uploading it onto the connected ESP32-S3 microcontroller. If this was succesful, the firmware is now installed and you can connect the pins/wires to your ESP32 microcontroller and have fun.
Using your RC-car
Now comes the fun part. When succesfully assembled, soldered and installed, you can drive your car by connecting to its WiFi Access-Point and using its web interface.
Turn on your RC car or insert/connect the battery package
Connect your phone to its WiFi network named "MY_RC_CAR"
Enter the WiFi password that is "0123456789" by default
Open your browser and go to the default IP address 192.168.4.1
Start playing with the controls on a very simple webpage