• Skip to main content
  • Skip to header right navigation
  • Skip to site footer
  • YouTube
  • MakerWorld
  • Instagram
  • Threads
  • Bluesky
  • Mastodon
  • Facebook
makerhacks-logo

Maker Hacks

Ideas, news & tutorials for makers and hackers – Arduino/Raspberry Pi, 3D printing, robotics, laser cutting, and more

  • Home
  • About
  • 3D Printing
  • Laser Cutting
  • CNC
  • Programming
  • Free Arduino Course
  • Free Robotics Course
  • Recommendations

Basic Motor Controllers

You are here: Home / Robotics Course / Basic Motor Controllers
eBay Motor Shield and Arduino Mega
eBay Motor Shield and Arduino Mega

DC motors are pretty simple. Apply power and ground, watch it move. If you supply enough power it will rotate. This means you don’t actually need a microcontroller to see your motor work, and if you do have some kind of electronic brain then (provided the motor is small enough it doesn’t draw so much current that it fries your chip) you can switch the power off and back on, making a simple robot.

Beyond the most tiny of DC motors, however, you do need to protect your circuit. As well as drawing a lot more power than regular microcontrollers are rated for, there can also be a damaging spike when the motors are switched on and off.

We usually also want to have finer control than just on or off. We would like to control speed and direction. Simply wiring up 5v and ground won’t allow for direction, and turning off and on again rapidly allows us to control speed but then we have that power spike mentioned earlier.

H-Bridges and Electronic Speed Controllers (ESC)

In our experiments we will start with the “traditional” way, using transistors, diodes, controller chips, MOSFETs (sounds like a Star Wars character, doesn’t it?) and so on, but there are easier ways and we will get to those too. The easy way also gives you more capabilities in the long run, and with ebay and Aliexpress there is not much price difference in it, so there are a lot of advantages to going with the controller hardware.

H-Bridge/Motor Controllers can either be the raw chip (often L298 or similar) or a breakout that packages the chip and associated components in an easy to use board. They have voltage regulation, heat sinks, and other user friendly features. Often you can also plug in your servos or stepper motors too.

You see ESC a lot in remote controlled cars and planes where, in general, they are controlled purely by the remote control receiver. The control sends radio signals over channels and those channels are wired directly to the speed controller which is wired directly to the motor. Battling robots are often controlled this way too, partly because they need super beefy motors and power consumption, and the machines themselves are seldom very autonomous. You also see ESC in Quadcopters driving brushless DC motors for maximum efficiency and responsiveness.

Servos

Servos have control circuitry on board, so if you get a continuous servo you can drive it using your microcontroller just with signals from your pins and, to be safe, external power. Depending on your intended project and the board you are using, though you might need an external breakout or PWM chip to drive enough servos, so those are an option.

Steppers

In most cases you are going to need a stepper driver. My favourite tiny eBay steppers came with little controller boards, but using the motor shields/breakouts mentioned earlier is an option, as is dedicated stepper drivers from stores such as Pololu.

Shields versus Breakouts

In general, I am more of a fan of breakouts than shields. Shields (and “Hats” in Rasbperry Pi world) are intended to fit one specific device, so for Arduino they tend to fit the Uno or Mega, and are not going to fit, say, a Teensy. That said, they are pretty convenient and more plug and play, so choose the right tool for the job and your budget! I will show you both and you can make up your own mind.

Previous Motors and ActuatorsCourse contentsNext Sensors

Robot Course Lessons

  • Introduction
  • Choosing a Brain for your robot
  • Motors and Actuators
  • Basic Motor Controllers
  • Sensors
  • Breadboards, Batteries, Chassis, Wheels and Wires
  • Introduction
  • Basic DC Motor Movement
  • Forward and Reverse with Servos
  • Controlling DC Motors with the L293D H-Bridge Chip
  • Using Motor Drivers, Shields and Breakouts
  • Stepper Drivers
  • L298N Breakouts
  • Changing Direction with Tank Turning – L298n Breakout and Two Motors
  • Infrared Sensor
  • IR Remote Control
  • Robot Chassis
Creative Commons Attribution-ShareAlike 4.0 licence

Free to use, adapt and share. This course by Chris Garrett, Maker Hacks, is licensed under Creative Commons Attribution-ShareAlike 4.0. Workshops, schools and clubs are welcome to use it, including in your own handouts and sessions. Just credit “Chris Garrett, Maker Hacks (makerhacks.com)” with a link to the lesson, and share any adapted versions under the same licence. Embedded videos and other people’s content keep their own terms.

Improved a lesson or spotted a mistake? I would love to hear about it: get in touch.

  • 3D Printing
  • CNC
  • Electronics and Hardware
  • Laser Cutting
  • News and Reviews
  • Software and Programming

arduino budget cad cnc diode laser glowforge Hacks Ideas laser cutter linux Makes making python raspberry pi resin Reviews technology tips xTool Lasers

  • YouTube
  • MakerWorld
  • Instagram
  • Threads
  • Bluesky
  • Mastodon
  • Facebook

.

Maker Hacks Blog Copyright © 2026 · All Rights Reserved · Privacy Policy