Skip to content

3D-Printed Arduino Rover

A custom Arduino-controlled differential-drive rover with a 3D printed chassis, joystick steering, PWM motor control and live OLED telemetry.

  • Wheeled
  • Open source
  • arduino
  • 3D printable

Suggested by Robotheca, created by @Tpatt97 (opens in a new tab), from github.com/Tpatt97/Differential-Drive-Arduino-Rover (opens in a new tab). Pinned to commit 884aa05 (opens in a new tab).

Photo and 3D model

3D-Printed Arduino Rover, photo from its repository
Photo:@Tpatt97 (opens in a new tab)MITsource file (opens in a new tab)

3D preview converted from github.com/Tpatt97/Differential-Drive-Arduino-Rover at 884aa05, under MIT. View the original files from GitHub (29.3 MB) (opens in a new tab)

What it can do

Written by Robotheca from the project's documents.

  • Drives as a differential-drive rover using two independently PWM-controlled DC gear motors for steering and throttle.
  • Takes proportional throttle and steering input from an analog joystick module.
  • Shows live telemetry on an onboard I2C OLED: throttle %, steering bias %, and left and right motor output %.
  • Applies deadzone filtering and computes real-time motor output percentages in firmware.

Bill of materials

This repository has no parts list Robotheca can read yet.

Build guide

The creator's steps, each with its instructions.

  1. 1Design the chassis and wheels in Fusion 360
  2. 23D print the chassis, drivetrain and electronics tray
  3. 3Assemble the lower chassis and drivetrain
  4. 4Wire the 2N2222 motor stages with flyback diodes
  5. 5Connect the joystick and SSD1306 OLED display to the Arduino UNO
  6. 6Install the Arduino firmware and test each motor
  7. 7Assemble the upper electronics tray and battery pack

The guide appears here as you scroll.

Guide by @Tpatt97 (README.md), under MIT.

Wiring and electronics

Notes written by Robotheca from the project's documents.

Main parts

  • Arduino UNO controller board.
  • Two 12V DC gear motors.
  • Two 2N2222 NPN transistors used as motor switching stages.
  • Two flyback diodes for motor protection.
  • SSD1306 I2C OLED display for telemetry.
  • Analog joystick module for input.
  • 8x AA battery pack as the power source.

Connections

  • Each motor is driven by its own 2N2222 transistor stage with flyback diode protection.
  • The SSD1306 OLED is connected over I2C.
  • The joystick provides analog inputs to the Arduino.
  • A wiring diagram is provided in images/Wiring_Diagram.jpg.

Schematics, boards and diagrams