teddy ruxpin servos

I just found a few of the guts to an old Teddy Ruxpin doll. It has three servos which control its eyes, nose and lower jaw. But oddly the motors aren’t like standard RC servos which have three leads: red, yellow and black. These have only two leads with what looks like small inductors (?) and series and parallel capacitors before the motor.There is very little information about them. All I could find is that the cassette tape which held the speech also had inaudible pulses which could control the servos.

From wikipedia: “Teddy Ruxpin movement data is encoded as a series of rapid pulse groups known as Pulse-position modulation. The data track contains continuous groups of nine pulses separated by silence. The spacing between pulses varies, and the length of each space determines the following characteristics (each of which is assigned to one of the “time slots” between two of the pulses): position of Teddy’s eyes, upper jaw, lower jaw…”

How do I control this servo motor? Do I send pulses through a PWM pin or just make my own pulses? Should I use the servo commands? Unfortunately, I didn’t get the tape deck or the electronics.

From the description it sound like you’re going to have to experiment with pulse trains until you slowly figure it out - about the only clues you have are that the spaces between the pulses are significant, and so is the number nine. Everything else you have to figure out on your own. Unless you can find some Teddy Ruxpin hackers online who have experimented at this level. Does that sound hopeless? :-[

Right after your quote:

If the cassette is played in a normal cassette player, one would hear both the program recorded on it, as well as a buzzing noise - this “buzzing” is the pulse-position modulation.

Start there, maybe record the tape into your computer( 3.5mm cable and Audacity.

Zoom in really far and see if you can make out the “buzzing”

You can generate pulses with pulseout(), set timing with delay() and milli(), and see what happens when you send pulses of different lengths and different delays. You have to keep track of both until you discover what works. It isn’t really hopeless, but it will take time; during which you will be honing your troubleshooting skills (the silver lining).