Step 7: Program the chip

Programming can be done with as sophisticated a setup as you've got. Myself, that's just the (pictured) ghetto-programmer -- just some wires soldered to a parallel port plug.

This instructable details the programmer and software you need to get it all running.

Do Not! Do Not! Do not use this programming cable with any devices that even get near to voltages above 5v. The voltage could run up the cable and fry your computer's parallel port, ruining your computer. More elegant designs have limiting resistors and/or diodes. For this project, ghetto is fine. It's only a 3.6v battery onboard. But be careful.

The code I use is attached here. Mostly, it's overkill for just getting two motors to swing back and forth, but I was having fun.

The gist of it is that the servos need pulses every 20ms or so. The length of the pulse tells the servo where to turn the legs. 1.5ms is around the center, and the range is from 1ms to 2ms approximately.

The code uses the built-in 16-bit pulse generator for both the signal pulse and the 20ms delay, and gives microsecond resolution at the stock speed. The servo's resolution is somewhere near 5-10 microseconds, so 16-bits is plenty.

Does there need to be an microcontroller-programming instructable? I'll have to get on that. Let me know in the comments.

<p>Well done mate ! interesting project really. It's simple but effective! Thanks for sharing.</p>
Is this circuit needs a clock between 9th and 10th pin?
i wanna use pic16f628A ; can youu send me pic program and circuit diagram. thanks... <br>weysi_aydin@windowslive.com is my adress.
I need to learn how to write in C. Can I use C to programall microcontrollers??
Yes! With AVR's you can use AVRStudio (free, made by Atmel) to compile your C code into an .hex file, ready to upload on avrdude. <br> <br>You can take a look at the datasheets, there you will find information about the microcontroller. You will find C code examples in the datasheets too. <br> <br>To find the datasheet of the microcontroller you want, take a look at Atmel's site (for AVR's), or try to search on google something like &quot;ATMega8 datasheet&quot;. It may be on the first results. <br> <br>You can't use C++ in microcontrollers, btw.
Nope. I tried uploading C++.<br><br>C++ = busted Arduino (if you're using one.)<br><br>Try getting the Turbo C bible...worked for me.
can u give me neat cicuit daigram to my mail <br>kakianilkiran@gmail.com
How much would it cost if I want to build oe of these?
It depends on what you have laying around. If you already have soldering equipment and plan on going ghetto for the programmer, I would say around $20-$25.
ahh, i have two servos, an msp430 launchpad, I just can't figure out how to get them to talk to each other.<br><br><br>Might you, kind sir, help me with this problem of mine?
So the only trick with (traditional, analog) servos is that they need a 1.5-2.5ms pulse every 20ms. The length of the pulse determines where they turn. You just make the pulse train with the micro and you're done!<br><br>Good luck. <br><br>
hmm, do you mean through the signal wire?<br><br><br>you probably mean the signal wire.
Yes, you provide 5v to the red wire, ground to the black wire, and the signal to the signal wire.<br><br>On the signal wire you provide anywhere from a 1-2ms pulse of 5v every 20 ms. 1ms and 2ms make the servo move to its limits, 1.5ms centers the servo, and everything in between moves the servo everywhere in between. Good luck. :)
Great project but is the Code in C or C++? I'm an Arduinophyte. Sorry, I'm not the most hardworking person...<br><br>Once again, Great Project
When I heard Servo, I was hoping for Tom Servo lol
glue some rubber stuff on the ends of legs, so it doesn&acute;t slip..
Is this The right setup for the brains<br>
&nbsp;They had one like this at<br /> <br /> &nbsp;<a href="http://www.middlecreekmerchants.etsy.com" rel="nofollow">www.middlecreekmerchants.etsy.com</a><br />
oh and ermmm, could i make this using 555's??? i think i might be able to make a simpler one... hmmm
Using a Hex inverter is a good trick, 555's would be capable but not very elegant. I strongly advise you look into using a 74xx240 type chip (replace xx with ac, hc or htc (different tolerances - they should all do the job though)), there are plenty of tutorials and the components needed are minimal. The circuit type you need is typically referred to as a bicore(or bi-core) and there are tutorials showing how to solder these up without breadboards/circuit boards. Don't be scared off by different chips or schematics, best way to do. Hope this helps, Drew
ya defenantly helped, although i just bought an Arduino... lol
Sorry for two comments, but I just noticed, if you want simplicity try the One Motor Walker on this site, here's a link to the free-form tutorial for its control system, it links to the one motor walker tutorial. <a rel="nofollow" href="http://www.instructables.com/id/How-to-freeform-the-bicore-BEAM-robotics-/">http://www.instructables.com/id/How-to-freeform-the-bicore-BEAM-robotics-/</a><br/>Hope this helps,<br/>Drew<br/>
whats is the code for an arduino? is it the same as that one?
can u give me the schematic circuit please.. hanif,malaysia
Based solely on this 'ible, I built a 4 legged walker. Instead of the plastic substrate, I used bent and formed coat hanger wire, and instead of the atmega, I used a Futaba 4 channel RC receiver and battery pack. During the construction (which only took a half hour) I worried about whether or not I could control it manually in a manner to make it walk. I worried about having enough timing and coordination to manually control both servos. As it turns out, however, by putting both servos on the same stick (mind you NOT the same channel), spinning the stick in a counterclockwise direction produced forward (RAPID) movement, and spinning the stick in a clockwise direction produced backward (extremely unstable) movement. I am impressed with how simple this project turned out to be and how easily I was able to get good results, and I thank you for posting the 'ible. Mike, from DC.
so you just used the RC sistem? no additional circuits? cool :)
I used two servos, the RC battery pack, the RC receiver, and coat hanger wire. NOTHING else went into the construction of the robot. I have made several different .... contraptions in which to use my RC system and servos, including several different "Sumo" bots with varying size tires and construction materials, and the walker. Eventually I will post the videos on YouTube under DieCastoms. Take a look. Mike, from DC.
how do I make the ic the chip ore the brain to the walker
hey i just built this! But i put the whole thing inside a cardboard tube, and the PIC i used is 6' tall 140 pounds... :P
u can make it climb higher buy putting wider legs... :)<br/>and ermmm where did you get <em>the brain</em>?<br/>
hey i just want to ask to how to make the brain to the 2 motor walker
hi, can you pleas send me a clear picture or diagram of the circuit of the bot? j_smith_metecorp@hotmail.com thanks
WHERE DO I GET Drilled project board for the circuit Snap-off headers (male and female) for the servo and battery connections???????
rat shack may have them,but try digikey
the ground bus is a bus that travels on the ground,just joking read real explanation below The + bus carries the power and is similar to the positive of a battery. The ground bus is the exact opposite
Can you please post the code to use with the atmega168?
plz give a cleam picture of the brain of this instructible
hey i am making my firsy bot can i use "futobo 3003" istead of "Ts-53" as i am having futobo with me i don't have to spend my cash on buying ts-53
I think those two models are almost exactly the same. And most servos run on standard timings. So you should be good.
plz mail me a nice circuit diagram(with all connections) of ur instructable nitinksharma@ymail.com
plz give a clean circuit diagram of the brain of the instructable nitinksharma@ymail.com

About This Instructable




More by The Real Elliot:Clean and Grease your Skateboard BearingsQuickie PCB Production (with Bonus NiCd Battery Charger)Stop using Ferric Chloride etchant!  (A better etching solution.)
Add instructable to: