Controlling servos using push buttons

Hello all. I do a dance act with 4 human-sized puppets. These puppets each have the capability of turning their heads and opening their mouths. If it’ll help to see how this works, just google “The Amazing Christopher puppeteer” to find a video of me in action.

I’m looking to use servos to control the head and mouth movements. What I need to make is two push button controllers, one for each hand, each with four buttons. One button controller will control the head turning and the other will control the mouth opening and closing. Pressing the button should move a servo from a pre-adjusted “A” position to a pre-adjusted “B” position, then letting go should move the servo back to it’s “A” position.

There are two servos in each puppet, therefore the servo controller and battery will “live” inside each puppet. I’ll need 4 servo controllers. It would be great if this were wireless… if the button controller wirelessly transmitted to each servo controller. But if not, I’ll settle for creating a wire harness.

I’ve tried using Polulu products, but they ended up not being reliable. I had 4 buttons connected to a Wixel, and that Wixel transmitted the button information to each Wixel in each puppet, and that Wixel triggered the Micro Maestro servo controller. While it worked in the staging process, during the performance, somehow the intense movement made the servos get stuck in the “B” position, and the only way to get them working correctly was to turn off the power to each puppet and turn it back on again… which is impossible to do during a performance.

Can anyone suggest which Arduino product to get? Thanks in advance.


Village People.jpg

Sounds possible with a Arduino. I would go with a Arduino Nano (or Pro Mini). You can connect it with nRF24L01 transmitters pretty easy.

I have a system for controlling model trains using nRF24L01+ wireless modules. It is easy to have one of the modules communicate with several others. As far as the wireless is concerned it is just sending data so the concept can easily translate to your system.

I posted a simplified version of the pair of programs here

I assume you will feed the data from both gloves using wires to a "master" Arduino and the Arduinos in each of the slaves will act as "slaves".

I got my nRF24s working with this Tutorial

I suggest you use the TMRh20 version of the RF24 library - it solves some problems from the older ManiacBug version