Mastering DC Servo Motors With ESP32 and Arduino

DroneBot Workshop April 15, 2025
Video Thumbnail
DroneBot Workshop Logo

DroneBot Workshop

@dronebotworkshop

About

Welcome to the Workshop! The DroneBot Workshop is the place where I work with Arduino, Raspberry Pi, ESP32, and lots of other cool microcontrollers, components, and sensors. This is a channel for learning and understanding. While I do build projects, most episodes focus on showing you HOW things work, so you can use the information to bring your own designs to life. Every video has a corresponding article on my website at https://dronebotworkshop.com , along with the diagrams and code samples you’ll need to build your own creations. You can also participate in discussions on my Forum at https://forum.dronebotworkshop.com. Please note that I no longer do any sponsored videos, enquiries for these will be ignored! If you'd like to know more about me or the DroneBot Workshop you can read the FAQ at https://dronebotworkshop.com/about-dronebot-workshop/faq/ And if you have technical questions please ask them on the Forum. Welcome to the Workshop! I hope you enjoy your stay! Bill

Video Description

Using DC Servo Motors with ESP32 & Arduino—This guide covers everything you need to know to work with servo motors and includes the PCA9685 16-Channel PWM driver. Article with code: https://dronebotworkshop.com/servoguide More articles and tutorials: https://dronebotworkshop.com Join the conversation on the forum: https://forum.dronebotworkshop.com Subscribe to the newsletter and stay in touch: https://dronebotworkshop.com/subscribe/ We’re back with an in-depth look at DC Servo Motors. While we have worked with servo motors many times, there are still many aspects that we haven’t covered. Up until today, that is! We’ll see how a servo motor works and understand the difference between analog and digital servo motors. We’ll see how to select a servo motor and interpret its spec sheets. And, of course, we’ll control some servo motors using an Arduino Uno and an ESP32 board. Then, we will look at the PCA9685, a 12-bit PWM (Pulse Width Modulation) controller that can drive up to 16 servo motors from a single I2C interface. You can even cascade these boards for additional servos if 16 isn't enough. This popular module is a great way to drive servo motors, but you need to understand a few of its idiosyncracies before you can use it correctly. Finally, we will cover troubleshooting—what to do when your servo motor project doesn’t work. I’ll show you how to deal with several common servo motor problems. Here is the Table of Contents for today's video: 00:00 - Introduction 01:55 - Understanding Servo Motors 14:22 - Servo Motors & Accessories 20:15 - Servo Motors with Microcontrollers - Arduino 26:50 - Servo Motors with Microcontrollers - ESP32 31:41 - ESP32 Libraries 34:20 - PCA9685 16-Channel PWM Driver 49:56 - Servo Motor Troubleshooting 55:31 - Conclusion Working with servo motors can be fun and rewarding. It’s great to bring to life something that moves. Use this video and the guide at https://dronebotworkshop.com/servoguide, and you’ll be a servo wizard in no time! I’m currently building a dual robot arm using servo motors for a unique robot project. I’ll be showing it to you soon, so be sure to subscribe so you get notified when it’s ready. Until then, have fun with servo motors! Bill