Professional Arduino RC Library
Build advanced RC cars, planes, boats, and drones with IMU stabilization, GPS navigation, PID controllers, and professional-grade safety systems.
A comprehensive, production-ready Arduino library for building professional-grade RC vehicles
#include <RCduino.h>
RCduino car(RC_CAR);
void setup() {
// Add H-Bridge motor
car.addMotor(9, 10, BRUSHED_DC);
// Add steering servo
car.addServo(6);
// Add RC receiver
car.addReceiver(PWM_SIGNAL);
car.getReceiver()->addChannel(0, 2);
// Add battery monitor
car.addBattery(A0, 11.0);
car.begin();
}
void loop() {
car.update();
}
Everything you need to build professional RC vehicles
Get up and running in minutes
# Arduino IDE:
# 1. Download RCduino library from GitHub
# 2. Sketch → Include Library → Add .ZIP Library
# 3. Select the downloaded RCduino.zip
# PlatformIO:
lib_deps = RCduino@^2.0.0
| Board | IMU | GPS |
|---|---|---|
| Arduino Uno | ✅ | ❌* |
| Arduino Mega | ✅ | ✅ |
| Arduino Nano | ✅ | ❌* |
| ESP32 | ✅ | ✅ |
*Use SoftwareSerial for GPS
#include <RCduino.h>
RCduino car(RC_CAR);
void setup() {
Serial.begin(9600);
car.addMotor(9, 10, BRUSHED_DC);
car.getMotor(0)->setSpeedRamping(200);
car.addServo(6);
car.addReceiver(PWM_SIGNAL);
car.getReceiver()->addChannel(0, 2);
car.getReceiver()->addChannel(1, 3);
car.addBattery(A0, 11.0);
car.getBattery()->setBatteryType(LIPO, 3);
car.addStatus(13, 255);
car.begin();
Serial.println("RC Car Ready!");
}
void loop() {
car.update();
}
Complete API documentation
Main class that integrates all components
RCduino(VehicleType type = RC_CAR);
void begin();
void addMotor(uint8_t pin1, uint8_t pin2, MotorType type);
void addServo(uint8_t pin);
void addReceiver(SignalType type);
void addBattery(uint8_t pin, float dividerRatio);
void addIMU();
void addGPS(HardwareSerial* serial);
void update();
void setThrottle(int throttle);
void setSteering(int steering);
Motor control with H-Bridge support
void setSpeed(int speed);
void setSpeedRamping(int rampRate);
void setBrakeMode(BrakeMode mode);
void setDeadband(int deadband);
int getSpeed();
bool isRunning();
MPU6050 IMU with sensor fusion
bool begin();
void update();
void calibrate();
float getPitch();
float getRoll();
float getYaw();
float getTemperature();
GPS navigation and waypoint support
bool begin(HardwareSerial* serial);
void update();
float getLatitude();
float getLongitude();
float distanceTo(float lat, float lon);
float bearingTo(float lat, float lon);
Professional PID controller
RCPID(float p, float i, float d);
void setGains(float p, float i, float d);
void setOutputLimits(float min, float max);
float compute(float setpoint, float input);
void reset();
Learn from comprehensive examples
Simple RC car with H-Bridge motor and battery monitoring
IMU-based stabilization with PID controllers
Autonomous navigation with GPS waypoints
Advanced motor control with expo curves