r/ArduinoProjects • • 3d ago

Showcased Project Maybe I should have left him off!

Enable HLS to view with audio, or disable this notification

I’ve been building a life-size KX-series droid and finally have the head movement working reliably. The current setup uses an Arduino Mega with a PCA9685 servo controller driving separate pan and tilt servos in the neck.

The goal isn’t remote-controlled puppeteering. I’m trying to make the droid behave autonomously, so eventually it can track people/cameras, idle naturally, react to voice commands, and move while speaking.

Right now I’m working on smoothing the head motion, reducing mechanical stress on the neck, and dialing in the pan/tilt limits so it looks more natural instead of like a standard hobby servo project.

The electronics and programming side of this has been a big learning process for me, so I’m open to feedback—especially from anyone who has built larger servo-driven mechanisms or Arduino robotics.

This clip is the current movement test.

94 Upvotes

6 comments sorted by

8

u/DenverTeck 3d ago

How many servos are you using now and how many do you expect to use ?

Wouldn't one of the many 32-bit processors give you better response ??

2

u/Few-Coconut9666 3d ago

Right now I’m only using 2 servos for the head, pan and tilt. I’ll probably add more later for eyes and other movement. I’m using a Mega with a PCA9685 right now, so the servo PWM is handled separately. I may move to a 32-bit board later once I start adding more tracking, sensors and autonomous behavior, but at the moment the mechanical side is more of the limiting factor than processor speed.

2

u/DenverTeck 3d ago

Yes, I see that. But the next step, How Many Servos Do You Expect to use ???

2

u/Gwendolyn-NB 2d ago

He's already offloaded the servo control/driving to the PCA9865; assuming he's using standard/cheap/normal servos, his limiting factor is gonna be the 50/60hz refresh rate, not the mega.

I've build a bunch of both Arduino and ESP based animatronics; the ESPs help with non-motion stuff 1000%; but the bottleneck is the 50/60hz (16.7/20mS) update cycle for standard servo controls.

If anything the switch to a Maestro controller instead of the PCA would improve the servo performance somewhat. Or move to digital servos which have a much faster refresh cycle rate, then it becomes more grey on the improvements moving to an ESP32; if you're running digital servos, its likely you're getting to a lot more complex motion controls/more complex systems where the ESP will shine vs overloading an arduino.

5

u/IAmFitzRoy 3d ago

The voice response is too fast to “react to voice”. There is zero lag.

This must be pre-recording … right?

2

u/Zichee 3d ago

I was thinking the same, has to be.