My original drawing robot was built using an Arduino Uno, Adafruit motor shield, and two beefy stepper motors bolted onto a big chunk of plywood.1 Now I’m in the process of building a new robot using a sweet wooden project box, a freeduino, a PolagraphSD shield, and the steppers from the original drawing robot. The other day it occurred to me that if I only had another set of steppers, I would have everything I need for a second drawbot.
About a week and a half ago I placed an order with SparkFun for some awesome rainbow colored ribbon cable, wire connectors, and some other stuff. Since I was buying some stuff anyhow, I figured $14 wasn’t much to pay to have another set of motors I could use to rebuild my old drawing robot.2 I also see several additional side benefits to having this extra set of motors. First, and most obvious, I’ll have two drawing robots.345 Second,67 I’ll have another set of motors I can put into some other wacky project down the road. Third, I’ll be able to test a totally different software setup on the second drawing robot without having to disassemble the other robot. Ideally I’d tinker a little with the source for Dan Royer’s Makelangelo’s software and Sandy Nobel’s Polargraph software.
Don’t forget to take a minute and fill out my DrawBot poll so I’ll know what to blog about next!
While I understand options like acoustic wool makes a very good sound/vibration insulator, I’d rather not have something that messy in my ‘bot. I’d be happy to use a material that doesn’t insulate as well, as long as it is clean.
I found this short strip of gray/black foam padding lying around my house among my daughter’s things. She had no recollection where she acquired it and believed she might have another piece somewhere. My MakerBot Cupcake CNC came with a large amount of this kind of padding – but it was pink. I didn’t have any of the pink stuff left over, otherwise I would have used it in place of the cardboard as the insulating material for my DrawBot’s stepper motors.
So – do you know the name of this foam padding? Do you know where I could pick up a few square inches of it to use as a sound/vibration insulator for my DrawBot’s stepper motors?
This is going to be another long in-depth post about my Arduino powered drawing robot. If you’d like to know more about how to build one yourself, please help me out by filling out my DrawBot poll. And, if after reading this post you find you want to know even more, be sure and check out the 68 preceding posts about the exact same topic, all listed in order at the end.
While I’m quite happy with how everything has turned out, I haven’t had a chance to fire up the robot and actually try a drawing. Once a few parts arrive from Sparkfun, I’ll be ready to give it a whirl. Until then, please forgive me for not sharing these designs yet. It’s less out of a desire for perfection1 and more out of desire not to strand some poor soul with some flawed printed parts. Thus, I beg your indulgence a little longer. Until then, I’d like to show you how all the bits I have so far work together.2
Filament guide and bolt covers
On the bottom left of the above picture you can see the filament guide – with filament helpfully sticking out of it. Just to the right of that you can see two bolt covers/endcaps.
The filament guides ((One on the left, one on the right side)) serve several important purposes. First, the monofilament line does not squeak when running through the smooth plastic filament guide as it does through a hole drilled in a piece of wood. Second, it ensures that the two ends of the filament are always at a constant, precise distance from one another which is important for accurate and repeatable drawings. Filament that is just spooling on and off can change position on the spool by a comparatively large amount.3 Third, the filament guides allow me to make sure the filament is flowing out of the box very closely to the back/bottom of the box – to help keep the pen holder/gondola against the wall. Fourth, they just look nice.
The bolt endcaps serve some practical and aesthetic purposes. Without these endcaps, the M3 bolts on the inside of the project box would protrude outside of the box beyond where they meet the 3mm nuts. The protruding bolts can scratch or puncture and also make the overall project look a little raw. One minor benefit to using these caps is that the force exerted by the bolt and nut as they are tightened against each other is spread out across the area underneath the endcap, leaving less marks on the project box.
For a project that could be easily disassembled, it would be interesting to create a variation on these plastic endcaps that essentially turned them into wingnuts. As you will note from the upcoming pictures, many of these parts were specifically designed to make modular assembly/disassembly/modification a breeze. Having had to pull these parts apart and reassemble them for these photos, I can assure you that taking everything to pieces and putting them back together is a cinch.
Exposed filament guide and stepper motor rail
In the photo above you will see the filament guide once I’ve pulled it out of the hole in the project box. I believe all I did was drill a 1/4″ hole, design the part to fit, press-fit the guide in place, and run the monofilament line through the guide. I had to re-print these since the first pair was just a little too short. Ideally the guides should just barely stick out from the project box, so that the monofilament never has to come in contact with the wood.
Once I get the ‘bot up and running, I plan to try using some endstops for automatic homing and printing. I’ve seen several drawing robot designs that use metal contacts or simple switches to help the ‘bot automatically home before printing. I think I prefer the style where metal contacts would go around the filament guides at either end, as they are less obtrusive on the exterior of the project box.
Just to the right of the tiny filament guide, you’ll see the plastic rail that I’m using to mount the stepper motors. There are holes in that long plank of plastic with recesses for the M3 boltheads. This rail or track or slide is held in place quite firmly by just those two bolts. Once the rail is in place, the motor mount can be slid back and forth. It’s a tight fit and would probably stay in place by itself, but why leave things to chance? The motor mount includes a bolt and captive nut behind the motor, so that it can be tightened against the rail.
Stepper motor, fully installed
In the photo above you can see the stepper motor completely installed. It’s not much to look at, but I rather like it. You can just barely see the bolt just behind the motor that I use to keep the mount on the rail. The setup is pretty solid and more than enough for the amount minor operational stresses they will endure.
Stepper motor, bolt loosened and off rail
In the above photo you can clearly see the top of the filament guide sticking out of the project box, the motor mount removed from the rail, the loosened bolt I use to keep the mount tight against the rail, and the corrugated cardboard I’m trying out for sound insulation.
Stepper motor off rail and spool off motor shaft
In this view you can clearly see the bolt in the side of edge of the spool I use as a “set screw.” The end of the spool has to be as thick as it is in order to accommodate the captive M3 nut. While the other end of the spool does not have to be nearly as thick, I designed it to be symmetrical.4 You’ll also notice that the spool is not tapered on either end. I designed the spool to be a two-piece bolt-together design. This has the beneficial side effect of allowing me to trap the end of the monofilament line between the two pieces, rather than using a knot in the filament or some other such fix. ((OCD again))
End of spool
Above you can see the end of the spool. This is the part of the spool facing away from the motor. Since I didn’t want the spool to be too unbalanced5 I didn’t want to use just one bolt on one side of the motor shaft. I couldn’t use one bolt down the middle, since it would make the entire spool much longer than necessary. Given that I was trying to make wide-diameter spools anyhow, it was little hardship to add a way to bolt the spool together on each side. The end you see has two hexagonal holes to fit the M3 nuts and the other end has long holes going most of the way through, specifically designed to work with some of the M3x16 bolts I have lying around.
Paper roll mount
The paper roll mount system you see above were actually the first plastic parts I designed and installed into the project box.6 The entire assembly is pretty solid. You’ll notice I used another set of bolt endcaps to keep the bolt threads from sticking into the project box. While I didn’t anticipate them scratching or puncturing anything inside the box, I do really like the way they look.
Paper roll mount, disassembled
Above you can see the paper roll mount system disassembled.7 The bolt is simply loosened, allowing the piece of plastic which has a circular hole for the wooden dowel to slide back, in turn allowing the paper roll to be removed easily. You’ll note that the paper roll does not have any kind of cardboard core, as a roll of wrapping paper might. This is why I had to create the thin endcap for the paper roll. It serves to keep the paper roll centered on the dowel while preventing the paper from slipping from side to side. The plastic rail for the paper roll mount is the same exact rail, only slightly shorter, that I used for the motor mounts.
PolargraphSD case installed
When I designed the PolargraphSD case, I was mostly concerned about creating a case that didn’t use a lot of plastic and which could be easily mounted. What I didn’t take into account was how I would end up mounting it to the inside of this particular project box. In the end I had to design two plastic parts that would connect to the PolargraphSD case. The beneficial side effect is that now the entire case is set off from the back/bottom of the wooden project box by the thickness of an M3 bolt head on each of the four corners. It remains to be seen whether the vibration of the stepper motors would case the case to rattle.
Don’t forget to take a minute and fill out my DrawBot poll so I’ll know what to blog about next!
Default Series Title
Perfection is the mind killer. Perfection is the little-death that brings total obliteration. [↩]
First, if you haven’t taken the time to add your voice to my DrawBot poll, please take a moment to do so! ((Photo courtesy of Trashcam Project))
Since there seems to be interest in learning how to build a drawing robot as cheaply as possible, I figured I’d give some help on how to do it. As the old saying goes, “Fast, cheap and good – pick any two.” The hands-down easiest way to build a drawing robot is to buy some parts off the shelf, slap them together, and start rocking away. I’ll start with the cheapest possible way to get started and progress to the more off-the-shelf variety:
Basic Anatomy. Just about every single vertical wall drawing robot is made from the same basic materials. Fortunately, with a little effort these parts are pretty much interchangeable. You need circuit boards for the brain, two stepper motors to operate either side of the line going to the pen, a pen, and lots of wire. If you want to get fancy, you could also track down a servo motor. The rest could be just kludged together out of nearly anything. However, for the sake of completeness, here’s a shopping list or scavenger hunt list depending upon how you’re looking to build your robot:
Some form of electronic brain, either built from scratch or Arduino powered
Two identical stepper motors
Lots of wire
Spools
Strong thread or fishing line
A pen
Screws, bolts, wood, and/or printed plastic parts
Optional: one servo motor
Parts for free.
While the cheapest method, the time and effort investment won’t be insignificant. You’ll need to get your hands1 dirty. Some of the most expensive parts of a drawing robot could actually be obtained for $0 – as long as you’re willing to get your hands dirty. As long as you’ve got a hacksaw, a drill, and some screwdrivers the world is your oyster.
Stepper motors. Stepper motors (and possibly servo motors) can be found on neighborhood sidewalks, dumpsters, and in office building closets every single week. If you don’t know where to start, try just walking into an office building and offering to dispose of their old printers, copiers, scanners, and CD/DVD players. You’ll need to really dig into these machines to find stepper motors and when you find them, they’ll probably be the “permanent magnet” or “tin can” stepper motors. You can tell a stepper motor from a DC motor by looking at how many leads or terminals it has. Just two means it’s a DC motor. Four or five means it’s almost certainly a stepper motor. Ideally, you’ll want two identical stepper motors.
Wire. In a pinch you could use telephone, ethernet cables, old speakers, old USB cables, computer keyboards or mice, or even electrical cords cut off from any kind of electrical device as a source of wire. Basically, as long as you have a pair of wire cutters and wire strippers, you’ll never be without plenty of wire.
USB cable. No matter what kind of drawing robot you build, chances are you’ll need one of these. Most Arduinos use a USB A-to-B cable and some of the clones use a USB A-to-Micro or USB A-to-Mini cable. If you can only find a USB cable that’s of the wrong connector type, consider hacking them by cutting one end off and splicing the wires onto the necessary connector. Alternatively, and more destructively, you could cut and strip the wires in the cable, tear open the USB port on the Arduino/clone, and solder solder the wires from the USB cable directly to the board. Realistically it’s just easier to find or buy a cable that fits.
Power supply adapter. If your project includes a full-fledged Arduino or decent Arduino-clone, you can use a power supply providing 7-12V DC.2 If you look around your home3 you are almost certain to find a wide variety of power adapters for any number of different kinds of discarded electronics. Just look at the power adapter itself and it will explicitly state it’s voltage output. While you’re scrounging at an office building for copiers and printers, be sure to ask around for any old power adapters they may have.
Screws, washers, nuts, and bolts. Saving these parts as you take apart the various electronics will net you more hardware than you’ll need.
Wood. You can find scrap wood discarded at construction sites, in old pallets, or if you’re really hard up – inside furniture. You’ll want to rig something to attach two motors to a wall or a piece of wood (that would, in turn be mounted to a wall).
Spools. Nearly any kind of cylindrical object that has a hole in it that fits your motor shafts would work. You could use a left over thread spool or a bobbin. You could carve one from a cork. You could drill a hole into a curtain or closet rod and put rubber bands around the two ends to keep the thread or filament from sliding off.
Pen holder. The simplest example I’ve ever seen is from the AS220 drawing robot which featured a pen held by a binder clip, suspended by two pieces of monofilament wire. You could use another piece of carved cork, a lump of clay or a bunch of rubber bands around the pen to hold it to the wires. With a very lightweight pen holder, you may need to include a small weight. I used to use a plastic baggie containing several dead AAA batteries.
Building from scratch.
Back in 2011 Shawn Wallace wrote a great set of tutorials for Make about how to build a drawing robot. This setup doesn’t rely upon an Arduino, but rather building up stepper motor drivers and a control board from electronic components. Excluding the cost of wire, motors, a power supply, and shipping, the electrical components would probably cost about $15. The reason I excluded the wire, motors, and power supply is that these things could probably be obtained for free, as described above. Your total cost of building such a robot could as cheap as about $15 plus scavenged parts.
Arduino-based.
Building an Arduino based drawing robot is positively the easiest way to go. Your cheapest options are to get an Arduino-clone and some form of stepper motor shield(s).
Evil Mad Scientist Diavolino. While this Arduino clone can be bought as a solder-it-yourself-kit for only $13.50 plus shipping, it lacks the voltage regulator and USB port present on an Arduino Uno. This means you’ll need to be careful that your power supply choice only provides between 4.5 – 5.5V. Additionally, you’ll need an FTDI cable to communicate with the Diavolino. A new FTDI cable usually runs about $15-$20. Although I’ve never bought anything directly from EMSL, I own one of their Egg-Bots, I can say I’m quite happy with the quality of their products.
Dorkboard Kit. I don’t have any experience with either a “Dorkboard” or Surplusgizmos.com, but they’ve apparently this clone is selling for $6.25. As with the Diavolino, it lacks a voltage regulator and USB port. Unlike the Diavolino, it is not in an Arduino form-factor which means you’ll need a breadboard and mess of jumper wires or a really large mess of jumper wires.
Arduino. Going with a fully featured Arduino Uno, Arduino Mega or an electrically-identical clone means you get to use a USB cable interface, an off-the-shelf motor shield, and can use a large range of possible power adapters. Frankly, once you factor in the need for a FTDI cable, voltage regular or specialized power adapater, the need for a breadboard, and the work involved in MacGuyvering it all together, it might be easier and cheaper to just get a full featured Arduino.
Motor Shields
Arduino Motor Shield. The official Arduino motor shield will run you about $30. I haven’t used it, so I can’t really comment on it. Just know that it’s not the cheapest option and read on.
Two Sparkfun EasyDrivers. Dustyn Roberts’ SADBot used an Arduino with two Sparkfun EasyDrivers connected with wires and breadboards. With her great instructable, there’s no reason you couldn’t do the same. These drivers would run you about $15 each, plus shipping. Again, this is not the cheapest option.
Adafruit Motor Shield. I can’t recommend the Adafruit Motor Shield enough. It’s fairly easy to solder and at $19.50 it’s clearly the cheapest shield-based option. Adafruit’s website has detailed instructions on how to assemble and use the shield, with tons of Arduino libraries to get you started. Besides all that, there are two different well-documented open source drawing robot projects that make use of this same exact shield.
Kits.
As far as I know, there are only two currently available do-it-yourself kits out there for building a vertical line drawing robot.
Sandy Noble’s Polargraph and PolargraphSD. Sandy Noble has been publishing his Polargraph drawing robot designs and software since September of 2011. The software and firmware Sandy wrote his Polargraph can be used with an Arduino Uno and Adafruit Motor Shield or with his custom shield. The great thing about these kits is that with a small LCD screen and SD card port, they allow for completely computer-free drawing. For £30 you can get just the shield as an unassembled kit. For £78 you get the fully assembled PolarshieldSD including two stepstick drivers and an LCD touch screen. For £230 you get everything you need including the PolarshieldSD fully assembled with the stepstick drivers and LCD touch screen, in a 3D printed case, with 3D printed sprockets, stepper motors, a servo motor, motor mounts, and pen holder. You can find Sandy’s open source part designs on Thingiverse and all of his software and firmware on Google projects code repository.
Just as an FYI, my first drawing robot used an Arduino Uno, an Adafruit Motor Shield, and Sandy’s software and firmware. It worked wonderfully for me and I recently purchased a PolargraphSD shield from him so I can take my robotic drawings even farther.
Polargraph. As mentioned above, you can find Sandy’s open source part designs on Thingiverse and all of his software and firmware on Google projects code repository. What I particularly appreciate about using an Arduino with an Adafruit Motor Shield to power a drawing robot is that this setup is fairly software/firmware “agnostic.” Using these electronics as the brains behind the operation, you could choose to draw with either Sandy’s Polargraph firmware/software or Dan’s Makeangelo firmware/software and just about any kind of steppers, wire, spools, and hardware. So far I’ve only used Sandy’s Polargraph software, but once I finish building my brand-spanking-new PolargraphSD powered drawing robot, I think I’ll use my trust old Arduino and Adafruit Motor Shield to try out Dan’s software/firmware blend. And, once I’ve tried that I think I’ll take a crack at writing some Arduino drawing software of my own!
Der Kritzler by Alex Weber. Alex’s Der Krizler is one of the first drawing robots I had ever seen on the ‘net. He’s provided a fair bit of documentation for his setup, which uses a tiny Arduino clone and two Pololu motor drivers, and his code on Github.
Okay, that’s how you source or scavenge everything you need to build a drawing robot!
So, what would you like to know next? Take my DrawBot poll or leave a comment!
Thanks for checking out my DrawBot Adventure Series. For the last 13 months I’ve been blogging all about my adventures in learning basic Arduino skills, basic robot building skills, applying my limited soldering skills, talking about my numerous fails and occasional triumphs, in building a drawing robot. So far I’ve racked up 66 blog posts about drawing robots (which is about 5/month) and shared all of my designs and improvements1 freely on Thingiverse.
But, this is really just me typing up stuff as it occurs to me. I would rather write a bunch of stuff you want to read. So, I would really appreciate it if you could take a minute and let me know – what do you want to know about awesome Arduino powered drawing robots? Please take a quick moment and let me know. If you don’t see an option above that suits you, please leave a comment.
After you’re done, you may want to check out some of the posts in the series in the links below! I’d suggest starting here.
Unfortunately, it will be a few more days yet before I can completely finish the drawing robot. I still need to order some rainbow ribbon cable and connects, wire up the motors, and then actually draw something with the brand spanking new PolargraphSD brain. For now, please just ignore the mess of wires and the superfluous Arduino + Adafruit motor shield in the middle. The blue tape on the paper roll is just there to keep it from unfurling.
As you can see, the project box looks so much better without all the clutter inside. Once I’ve gotten everything all set up and tested, I plan to add some internal wire guides to keep the wires in check. That should help the whole project look a lot more clean and pleasing.
I’m fighting my perfectionist1 to keep printing and reprinting parts. I had the idea to have dualstrusion printed spools. I know from experience that rotating single color spools don’t look all that much different that from non-rotating single color spools. A spool with a dualstrusion pattern embedded in it would provide some kind of interesting visual confirmation that the robot was operational. Then again, I do like having a very monochrome project – unpainted, unvarnished wood, black ABS plastic, and black oxide bolts.2
You can see above that I’ve already drilled a rough hole into the right side of the box to route the power cable through. There’s just enough clearance in that hole to allow a USB-B cable to go through as well.
I’ve tried to use a very modular system that allows me to loosen and tighten parts in place with a single bolt. While making minor adjustments here and there, this system has been amazingly useful.
I’ve taken several more pictures of the various plastic parts and how they fit together. I’ll post about these shortly.3
Except the shiny M3x8 bolts used to mount the motors. I wish they didn’t bother me as much as they do. [↩]
Well, to be perfectly accurate, I’ll post about these plastic parts soon. If you’re a regular reader of the blog, you’ll note that few of the posts could be legitimately described “shortly.” [↩]
Above is a picture of my drawing robot, still a work in progress. The great thing about this particular project box is that it also doubles as a work area. It’s a good place to cut and strip wires, solder, assemble parts, and it’s totally portable. The box is 3′ long, 8″ high, 2″ inches deep.
A. Printed Bolt Covers. An M3 nut goes into the recess and the end of the bolt is covered by the printed part. One of these goes over every one of the protruding bolts in the project box.
B. Printed Paper Roll Mounts, on a Slide. These are actually three separate printed parts. Since the paper roll came without a cardboard tube, I put a wooden dowel down the center, with printed plastic caps on either side to hold the paper in place. There are two printed holders which the wooden dowel slot into. Each of the printed dowel holders slide left and right on a track and have a bolt that can be tightened to keep it from moving.
C. Paper Roll. After looking in a few craft stores I finally found a big long roll of paper at Staples of all places. I think it was marketed as paper you would use to cover a table. It’s thin paper, but there’s a lot of it and it was really cheap. With no internal cardboard tube, I had to design endcaps to keep it from wobbling all around.
D. Maker Faire Application. I’m hoping to display this robot at Maker Faire Bay Area 2013. Since the call for Makers hasn’t gone out yet I just downloaded the Maker Faire New York 2012 application and filled it out. Now when the call for Makers comes, I’ll be ready.
E. Wire Cutters and Pliers. These are just necessary tools. When I need something to hold tiny parts I wrap a rubber band around the pliers and they’re a tiny vise.
F. Printed Spools. Two printed plastic parts plus three nuts and bolts. Definitely overengineered, but they don’t have the weaknesses of a single print spool.
G. Motor Bolted to Motor Mount, on a Slide. The motors are bolted to a plastic mount with a groove. The motor mount is then slotted onto the slide which is itself bolted to the actual project box.
H. PolargraphSD in a Printed Case. I designed and printed the case. The way it is mounted to the project box, it is slightly offset from the box, which gives the circuit boards extra ventilation.
I. Stick Lighter. I used this stick lighter to heat the heat shrink.
J. Heat Shrink. Lots of heat shrink in varying colors and diameters.
M. Adafruit Motor Shield on an Arduino Uno, in a Printed Holder. Well, that about says it all. I would point out that the printed holder is pretty terrible – it’s just a little too small. The only reason I put the Arduino and shield in the box was so that I could hook up the motors and make sure everything was still in operating condition.
N. Big Container of Zip Ties. Zip ties are useful.
O. Solder. For soldering.
P. Monofilament Guide. You can’t see it, but there’s a little plastic tube that fits into a hole drilled through the wood project box. It’s much smoother than wood and works great.
I’ve taken a lot of detailed pictures of the various parts and how they go together, so that comes next.
Electronics. The electronics are the brain and heart of this project. There’s really only two parts that could not be found or scavenged – these parts being the Arduino and the Adafruit Motor Shield.
Adafruit. I’m going with Adafruit all the way. Great website, great blog, great service, and their tutorials are super comprehensive.
These were the exact items I bought. To date I still have never hooked up the servo motor to anything, but I hope to soon. I could probably have substituted these smaller cheaper motors and used a left over power supply from some random project, but I knew these parts worked for others and would probably work for me.
If you were really just had to build a similar robot for as cheaply as possible, you could probably pull a pair of steppers and possibly a servo from some old printers, copiers, and the like.
Project Box. I’m using a long thin pine box left over after a huge catering party platter order. Frankly, you could mount the parts on nearly anything – a 2×4 or a nice custom box – it’s entirely up to you. Heck, you could even screw these parts directly into a wall if you were feeling particularly adventurous.
Structural Parts. Besides these main components, it’s really really useful to have a 3D printer to manufacture all the parts necessary to make it all work. Motor mounts, spools, etc. If you had a laser cutter or a ton of quick-set plastic, you could probably fabricate perfectly serviceable parts. The parts I’ve designed are ideally suited for my own project, could be modified for your own project, or you could just design some parts from scratch.
Hardware. There are also all the little bits of hardware to hold everything together. I still have a ton of M3x16 bolts and M3 nuts left over from building a Cupcake CNC and Thing-O-Matic. Besides these M3x16 bolts and M3 nuts, I did use two screwhead M3x16 bolts to hold the Polargraph case in place and eight M3x8 bolts to attach the two motors to the mounts.
McMaster has a truly amazing website. Even if you want to build a drawing robot and have zero parts on hand, you could pick up all the hardware you need from them super-cheaply. Update: The only thing I don’t care for about their website is that they don’t have a way of getting an estimate on shipping. Among McMaster’s virtues is their amazingly responsive customer support. I just asked them for a shipping estimate on these parts and they got right back to me. You could pick up a set of 100 nuts, 100 M3x16 bolts, and 100 M3x8 bolts for about $6. This is an absolute bargain for way more nuts and bolts than you’ll ever need for this project.
Yesterday I spent six dollars on eight lousy M3x8 bolts. Had I simply waited for McMaster, I could have had 100 M3x8 bolts for only $4.84
Chances are if you really had to you could use whatever bits of hardware you can find lying around your place. I’ve seen examples of similar drawing robots using zip ties to hold the motors in place.
Electronic Bits. I still need to track down some rainbow colored ribbon cable and connectors. While I do actually have all the pieces of scrap around my home to finish the robot right now, I don’t want to do this half-way. I want to use a rainbow ribbon cable because (a) I need to extend the motor leads to reach the circuit board, (b) it would be very helpful to have each lead color coded separately, and (c) they’re really pretty. As for the wire connectors, all the other parts to my setup are very modular and it would be very nice to have the electronic connections just as modular. After searching around, I found that Sparkfun has all the little pieces I need to finish this project.
Sparkfun. I’ve never really bought anything from Sparkfun before – but people I trust have spoken highly of them. I say never “really” because I bought into the Makey Makey kickstarter and they used Sparkfun to fulfill their orders.
4″ of 4-pin jumper wire for $0.95. My plan is to simply cut this female/female ended connector in half, solder each half to one set of motor leads, and then use normal headers to connect to these.
I’m completely confident that you could pull plenty of wire out of old electronics. They always have a ton of wire and connectors inside.
I recently had a very unsatisfactory experience trying to source some parts locally, so I”ll be placing an order for some ribbon cable and jumper wires from Sparkfun.
This post could also be entitled, “Customer Service Fail Day.”
TLDR: If you’re looking to build something, don’t even bother going to Radio Shack or Fry’s Electronics.1 Even in the SF Bay Area they won’t carry what you need and if you leave feeling disgusted with their customer service, you’ve gotten off lightly. Buy your parts online from someplace awesome like Adafruit or Sparkfun or someplace else that truly cares about what they do.
TLRA:2 Today I went looking for the last few parts I need to properly finish up my drawing robot. If I was able to locate these parts, my ‘bot would be totally ready to place on a wall and start drawing. Even at the risk of overpaying for a minor part or two or spending way too much time trying to locate a mostly inconsequential part, I wanted to try to finish everything this weekend.
I really should not have bothered. I should have just stayed home in my jammies, surfed the net for the parts I needed, and then waited a few days for them to arrive. If I sound disappointed, it’s probably just because I am. I went looking for some fairly basic parts:
Eight (8) M3x8 bolts
Multicolored ribbon cable with at least 4 conductors3
I would have been perfectly happy to substitute nearly any of these items for something even remotely similar. I would have settled for single color ribbon cable, bolts anywhere from M3x6 – M3x10, and really any kind of male and female connectors that would work. However, all of this is besides the point.
The first stop was a national chain hardware store.5 I honestly wasn’t sure I wanted to visit this store again,6 but I had a $5 coupon and I was pretty sure I would find the metric bolts I needed. On a recent trip to the local hardware store I rooted around their nut/bolt area only to discover that someone or someones had mixed many of the M3 and M4 bolts. It was such a mess that I didn’t want to try them again. I paid a lot more for the eight bolts than I was expecting to, but at least I found the exact number of the exact bolts I needed with no additional hassle. While I was there I also picked up an inexpensive 15′ white extension cord so that my ‘bot could have an extension cord of it’s very own.
The next stop was the local Radio Shack. I haven’t been to a Radio Shack in a really long time – mostly because I’ve had such unsatisfactory experiences there. However, given Radio Shack’s long history of being THE place for Makers to find parts and supplies and their apparent return to their Maker-roots, I was willing to give them another shot. The local Radio Shack is in the middle of a run down strip mall nestled between a Chinese take-out place and something else I don’t recall. I honestly thought the Radio Shack was closed until I got right up to it. As I walked up I held the door open for an older Asian lady. She walked in ahead of me and told the clerk, who was on his cell phone, that she needed to borrow $10. Assuming that these two people knew each other, I just went ahead and looked for where they keep components. Electronic toys up front, phones on the left, tablets and computers on the right, and towards the back under the television blaring some sports game7 I figured I might find some electronics components. The “aisle” was probably only about six feet long and about four feet high. Towards the entrance there were a few Arduinos and books8 on the left, speaker wire on the right, and at the back of the aisle9 on the left was a set of pull out drawers with various bits and bobs that could be used in electronics projects. Except none of it was what I needed. The other employee, a woman, walked over and asked if she could help me. I explained that I needed some ribbon cable and connectors, then I had to explain what they were. Once I had done so she pointed to some colored single-conductor wire. I tried to explain that a ribbon cable had more than one wire in it – and this time she pointed to the same single-conductor wire and then another set of single-color wire of a different color. Seeing that this was completely futile, I asked about connectors. Quite helpfully, she pulled open the drawer marked, “Connectors” and told me that any of them would work. I explained that I needed something I could solder to the wire I was hoping to buy and then be snapped together or pulled apart as needed. She picked up a random baggie of plastic and metal and told me that all the parts were in there. I told her I needed male and female parts. “Yeah, it’s in there.” Since she was pointing to a wire crimp with an eye terminal, I knew that either she had no clue what she was talking about or that she just didn’t give a damn about what she was saying. I honestly cannot understand how that store can justify having two employees at that location at any time, let alone at 2pm on a Sunday afternoon when I was literally the only potential customer around. There cannot possibly be enough consumers of radio controlled cars to keep the lights on in that store. The selection of parts was just abysmal and the service could only have been worse if the staff cared enough to actively insult me. After rooting around in the component drawers for a little, I gave up and walked out. Two employees and neither of them said a single thing as the only potential customer they might see that day walked out the door.
My third stop was to Fry’s Electronics. The parking lot was packed and the store was busy. What I love about this place is the parking lot is ALWAYS packed and the store is ALWAYS busy. It doesn’t matter if I come by first thing in the morning, or in the middle of a weekday, or a Sunday afternoon – it’s nearly impossible to find a parking spot and there are tons of people in there.10 While their staff aren’t always super helpful, I’ve found that about every other employee is actually somewhat knowledgeable about their wares. I walked into the store, past the bargain bin items, took a left at toys, and walked on towards PC components. Since ribbon cables and connectors are the sorts of things one would find inside a PC, I figured this would be the place to start. At the podium stood three young men dressed in black pants and white shirts wearing name tags – I assumed they worked there. The three of them were talking to one another and continued to do so as I stood in front of them. Finally, I said, “Hi!”. The three of them looked at each other and one of them, after several seconds what seemed like a nonverbal game of chicken to see who could go the longest without acknowledging the customer, one of them finally asked how he could help. I explained I needed ribbon cables and connectors. He showed me to wire and speaker wire.11 I explained that ribbon cable involves having multiple strands of conductors attached together to form a sort of “ribbon” of wires that ran together. He must have been spying on me at Radio Shack since he ran through the process of pointing to colored wire, then showing me two different colors of wire. After holding up a thick piece of electrical cord involving two-conductor wires each separately shielded, but attached by plastic, and miming what it would look like with many more wires along side it – but not as thick, he seemed to understand what I was talking about and took me towards some computer ribbon cables and connectors. After an afternoon of searching I felt that I had finally arrived at the right spot. I asked about male and female connectors or perhaps some male and female headers or anything of the sort he looked back over his shoulder towards his comrades and gestured vaguely towards the wall of parts in front of me and suggested I could find what I needed there. I asked him a few more questions while I rooted around for something that could work. Finally he asked if there was anything else I needed. I could tell there was no way this guy was going to help me any further so I thanked him and let him go. I ended up buying some male headers and a set of 4 pin connectors.
Here’s what I’ve learned from my experiences today:
Radio Shack is a big fat waste of time. I wouldn’t even buy a remote controlled toy car there.
Fry’s Electronics is a big fat waste of time – unless I am in need of an off-the-shelf computer component and require zero assistance.
Buying parts online for a better price is absolutely, positively, worth the wait.
The name of the store rhymes with “Orchard Supply Hardware” [↩]
About two months ago I went there looking for a replacement faucet spray head for our sink. They were out of stock and said it would be in stock in two days. I returned in two days and they didn’t get it in. I was told they would have it in the following day. So, like a moron, I came back. They still did not have it. I went to the local Ace Hardware and they had five of them just sitting on their shelf. DONE. [↩]
I’m still working on building out an awesome drawing robot.1 I’m designing printable parts to be installed into a left over wooden box for holding a paper roll, filament spools, stepper motor mounts, and a few more bits.
You may3 be wondering why I’m waiting to upload all of these parts. The simple reason is that as I design and install each part of the overall robot, I find that a given part might need to be redesigned or might be better design in another fashion. I’d hate to have someone print up some lousy parts and be stranded with a bunch of junk.
The ‘Bot So Far
Right now the robot sits a few feet away from me almost totally assembled. I’m really excited about it. I’ve mounted the PolargraphSD brain to the right side of the project box so that it would be easy to run the power cord to it. While I do like the Platonic ideal of the perfectly symmetrical robot, my more practical Aristotelian side won out. The upshot is that the leads I originally soldered to one of the motors is totally unnecessary and the leads I originally soldered to the other motor are woefully inadequate.
There’s not a lot left to do. Once the motor leads are extended and the robot mounted to a wall, it will be totally ready to go. I’ve realized that the slides I’m using to mount the paper roll are long enough for me to attach a set of wall mounting brackets.
Revisions to Existing Parts
Filament Guides. I designed these 2mm too short. While this almost certainly wouldn’t be a problem, these pieces are so easy to print that it just doesn’t make sense to live without the benefit of a part that works better. If they’re too short it is possible for the monofilament line to rub against the wood of the project box – which defeats the purpose of having the filament guides in the first place.
Recommended Changes to Existing Parts
PolargraphSD case. It turns out that just above the two Stepsticks in the PolargraphSD there are a pair of three headers with a jumper on each. The lid for the PolargraphSD case I designed didn’t adequately take into account their dimensions, which kept the lid from closing cleanly. I used a pair of wirecutters and then needlenose pliers to just rip the unnecessary bits of plastic out. You would barely notice the change unless you knew4 where to look. I’m not going to bother to reprint this part because that’s a lot of time and plastic to use for a feature that really doesn’t matter and is barely noticeable. I’ve updated the OpenSCAD code for this part, so anyone who prints from the latest revision would automatically benefit from this change.5
Spools. For instance, ideally I would have printed the two spools with a slightly smaller radius on the edges of the spool. As they are now they tend to bump a little against the bolts holding the motors into the motor mount. Making it just 1mm shorter would do wonders. There are a few easy fixes for this. The one I’m using for the moment is to just raise the spool on the motor shaft so that it doesn’t bump into any of the bolts. I should point out that this wouldn’t be a problem at all if only I had plenty of short M3x8 bolts. Right now I’m using M3x16 bolts with three nuts on them to hold the motor to the motor mount. This means the bolt head and the nuts get slightly in the way of one of the ends of the spool. Just using shorter bolts would instantly fix this problem. I’ve also sanded the end of the spools that fits onto the motor shaft. If I put more elbow grease into it, this would also fix the problem – but why bother when I can just raise the spool on the motor shaft for now and pick up some short M3 bolts later?6
Bolt End Caps
Today I installed the motor mount slides in the project box, the spools on the motors, the motors into the motor mounts, the motor mounts onto the slides, and the filament guides into the project box. When I finished all of this I realized that the ends of the bolts were sticking out. In the spirit of overengineering, I created little plastic caps to prevent the bolts from being able to scratch or catch on anything. While not strictly necessary, they do serve some useful purposes and and more aesthetically pleasing than having bare bolt threads sticking out from a chunk of wood. They’re not much more than a tapered cylinder with a hexagon shaped hole for a nut and a cylindrical hole for the bolt threads.
PolargraphSD Case Holder
Although I’ve designed a nifty PolargraphSD case, I can’t bolt the case to my project box because of certain design choices.7 The overall design I’m using for this robot involves a large paper roll mounted to the top of a box, with the paper to unfurl behind the box, and then down onto the wall. Since the back of the box has to be completely flat, I can’t put any bolts through the back. Thus, I had to design a way to mount the PolargraphSD case to the inside of my project box – all without putting anything through the back of the box. I could have designed around this by just adding vertical mounting tabs to the PolargraphSD case, but it just didn’t occur to me at the time. And, as suggested above, I’m not interested in reprinting the entire case just to add a small feature here and there. So I designed two tabs that the case could be mounted to and which, in turn, could be mounted to the top of the box. Overall, I’m really happy with the way it turned out.