Help A Newbie Get Started :)

bongobong

United Kingdom
robot video thumbnail
robot video thumbnail
robot video thumbnail
robot video thumbnail
robot video thumbnail
robot video thumbnail
robot video thumbnail

Hi Everyone, I've been lurking on this forum for a while without making a post. I'm a standup comedian based in London and I'm trying to hack a teddy ruxpin much like a few other posters have done here.

I've been doing research but I'm still fairly confused.

A wee bit about me I'm used to working with software but software with a GUI. I can write CSS & HTML but that's about as far as I am with code thus far. That's not to say I couldn't learn; and I was rather looking forward to learning some code in this project but the question is which code!

I'm not amazing with my hands but I'm not averse to soldering, cutting and glueing.

I'm quite good at working through problems.

About the Project.

What I want to achieve is the following:

1. Teddy Ruxpin needs to be able to:

  1. Move mouth
  2. Blink
  3. Move head side to side; ideally, 360.
  4. Move arms up and down
  5. Flap arms.
  6. Move head up and down

Essentially everything that Waldes on this forum managed to do:

2. I need to be able to have a 'script' for Teddy Ruxpin to say and do. I will be able to talk to Teddy Ruxpin and then trigger the sentences with my iPhone or a bluetooth clicker hooked up to my Mac.

3. Teddy Ruxpin needs to blink in every 20 words or 20 seconds (however often the human blinks).

4. I need to be able to program specific blinks and mouth openings too. For instance

i)I click the bluetooth remote Teddy says hello there

  1. I click the bluetooth remote Teddy blinks twice.
  2. I wait 20 seconds without doing anything, Teddy blinks twice anyway.

5. Ideally, it would also be great to be able to talk into a microphone and have Teddy Ruxpin speak it, together with some automated movements.

The Current Situation

I bought a Teddy Ruxpin that a guy had already pre-hacked for an art project. www.afrugallery.com/sean/ I hooked it up to an Arduino Uno and some software he provided and have been successful in getting the mouth to move, eyes to blink. That's as far as I got. I bought another Teddy Ruxpin knowing that i was going to have to take on the whole thing myself if I was going to be able to customise it to my liking.

Equipment I have as of December 2014

1 x Bearduino arstechnica.com/information-technology/2013/07/bearduino-hacking-teddy-ruxpin-with-arduino/ 1 x Arduino Uno 1 x Regular Teddy Ruxpin (unhacked) A lot of enthusiasm.

So, where do I start guys?

I have a mac but I can run Windows in a virtual environment. I make presentations during my comedy and use keynote for that. It might well be that I would need to run the Teddy Ruxpin separately from a different computer anyway; ideally my iPad I think to be honest.

I know this is a LOT to take in but I would LOVE to get any advice from you guys about where to start. I mean I literally don't know where to begin. The main thing i"m worried about is the software; I mean I know nothing about programming an Arduino. But I'm a fast learner and raring to go.

All best wishes, James

User-inserted image

By — Last update
Jump to end

ARC Pro

Upgrade to ARC Pro

Subscribe to ARC Pro, and your robot will become a canvas for your imagination, limited only by your creativity.

#73  

I believe you can use the "sound servo control. It makes making phrases harder but each time a word is said the servo moves in relation to the audio volume.

#74  

A while ago I made this bear, it ain't no fancy skeleton but it did what I needed it to do, so it worked fine. Maybe you could cut out a square on the left and right side of the body and hot glue some servos. To make the body look like the JD torso. Then just put the arms together making sure it fits in the bear's fur.

User-inserted image

User-inserted image

User-inserted image

User-inserted image

#75  

@bongobong, you dont have to have your pushrod threaded on both ends. Simply make a Z-bend on that side. Its up to you on whether the Z-bend side needs to be on the servo side or the other end. It depends on the application. One way may work better than the other.

The other question on how to attach to the eye: It looks like you will need to attach to the top near the edge or bottom edge. Remember that you are looking for either a push or pull action so on the servo side you should be on either the top arm or bottom arm to get the most motion.

EDIT: I see the hole you're refering to now. Yes use that and use the bottom servo arm.

United Kingdom
#76  

Amazing! Thanks everyone. this is super useful.

To be honest, I wish I'd bought the clip and play servos.

But, in the long run, I expect it's better to learn.

But can anyone tell me what these bits are for?

User-inserted image

United Kingdom
#77  

Ignore that. I worked it out:)

What I'm trying to do now is get my teddy to lip sync to music and vocals. I can record this in advance; i.e play the music and the script at the same time. But i'm wondering what the best way to record that is? Using the recorder script?

I'm thinking that I could record it using a playstation controller and then play the music in the background while moving his mouth.

Thoughts?

#78  

Or, you can simply use the sound servo control in ARC... This will allow the servo controlling his mouth to move according to sound levels...

United Kingdom
#79  

Yes. But that won't be specific enough for me. For instance, in front of an audience, I might get a big laugh and that might trigger him to move his mouth for instance.

I'm having some trouble with the code. I'm trying to get it so lifting my finger off the W key moves his mouth back to the closed position. But so I can interrupt it at any point and send it moving up again. that way he can talk.

Here's my code thus far:

currently, I have pressing 'W' doing the following:

1 Stop() 2 ServoSpeed (d1,3) 3 REPEATUNTIL (GetServo(d1)=100) 4 ServoUp(D1,1) 5 ENDREPEATUNTIL

Then I have 'W' key up command as

1 Stop () 2 ServoSpeed (d1,2) 3 REPEATUNTIL (GetServo(d1)=1) 4 Servodown(d1,1) 5 ENDREPEATUNTIL

But is this really the best way to do it? I'm having some difficulty getting this working. I'm confused because the GetServo goes between 1 and 100. I'm presuming that's a % because the mouth is open at 176 and closed at 152. But where do I set the parameters? I've done so when I added the servo so is that the highest and lowest it can go? If so, great.

Ideally I would "repeat until" the key is released. But I can't find that parameter. any ideas?

Should I be using "Release" instead of "Stop"?

#80  

This is another good example of how useful it would be to have a control that moves a servo based on text in a script, rather than by sound. I have been working on this with other community members and hopefully soon we will have something. This will provide a more positive control of "mouth" movements.