Arduino + Servo + Scotch Tape == An Interesting Conversation

joystick plus arduino

If one could temporarily remove their sense of humor and cast a serious look into a Rube Goldberg machine, they would not say to themselves “well that looks simple.” Indeed, it would almost always be the case that one would find themselves asking “why all the complexity for such a simple task?”

Too often in hacking are we guilty of making things more complicated than they really need to be. Maybe it’s because we can see many different paths to a single destination. Maybe it’s because we want to explore a specific path, even though we know it might be a little harder to tread. Maybe it’s just because we can.

rubegoldberg

But imagine approaching a hack as simply a means to an end. Imagine if you did not have all of that knowledge in your head. All of those tools at your disposal. How would this change your approach? When [yavin427] decided to automate the leveling up process in his favorite video game, odds are he had never taken a game controller apart. Had never touched an oscilloscope. Indeed, he might have no knowledge of what a transistor or microcontroller even is. While many of our readers would have taken the more difficult path and tapped directly into the TTL of the controller to achieve maximum efficiency; it is most likely that [yavin427] would not have known how to do this, and thus would not have seen the many other paths to his end goal that would have been obvious to us. Yet he achieved his end goal. And he did it far easier and with less complication than many of us would have done.

Thoughts?

Thanks to [euqinimod] for the tip! Keep them coming!

41 thoughts on “Arduino + Servo + Scotch Tape == An Interesting Conversation

  1. Cryptic article is cryptic. Felt more like click-bait for gamespot than a HAD article. I don’t normally complain about that, but you could have at least told us WHAT he did instead of totally slamming the hacker for his lack of technical knowledge. This is the first time I’ve had to click a link in order to figure out what the hell you were talking about.

    1. I just reread it – it’s not cryptic. I’m simply asking if knowledge can lead to over complication. It an interesting thought and worthy of conversation. And I didn’t feel it was necessary to hold the readers hand and walk them through what was obvious from the article’s title and main image.

      1. Complexity and elegance commonly but not exclusively go hand in hand. It is extremely rare to find an exceptional implementation of something that is extraordinarily easy to envision and implement and is also cheap, robust and well suited to the task that is being attempted.

        This works but it is very fragile and is extremely limited. A different, more robust solution could be investigated and implemented. Or not. It really depends on what the end goals of the user are. Some of the hacks I worked on years ago are truly cringeworthy today but everybody has to start somewhere. If this does what the user needs then great for them. Could it be improved? Sure. But you have to start somewhere.

    2. I think it was a combination of “Let’s try to preempt all of the trolls who comment just to say they can do better” and “Let’s see if we can spark a thoughtful conversation by adding writer-original material to the article instead of just documenting someone else’s documented work.” I support this. Plus, there doesn’t seem to be a whole to detail in the hack, so it benefits from some fleshing out.

  2. Perfectly reasonable temporary solution for something arbitrary. The only waste is the scotch-tape with the board, servos and controller being reusable and not modified. If I has a silly problem like this and a couple of minutes, this would be the exact path I’d choose. I’d probably not post it on the intarwebs, but that is just me.

  3. Since it’s just repeatedly pressing a button, he could have gotten a cheap gear motor and stuck a piece of cardboard of plastic on its axle to press the button once per revolution.

    Like one of these, available in any hobby electronics store:
    http://i01.i.aliimg.com/wsphoto/v0/529808103/Custom-and-Wholesale-font-b-Plastic-b-font-geared-font-b-motor-b-font-electric-font.jpg

    Which goes to show that it’s dangerous to know a little bit. He ended up wasting 5-10x the money and time when an even dumber solution would have sufficed.

      1. That wasn’t specified.

        What I imagine is, someone thinking about the problem of pressing a button repeatedly, going “I need a motor that goes back and forth; I know there’s something like that in radio controlled toys. Aha. I need a servo.”

        And from there on, they figure out that in order to control a servo you need to generate pulses, and then they hear of a thing called Arduino which everybody uses to make these sorts of things, and they buy a servo and an Arduino, wire them up according to some diagram and a piece of code copied and pasted off of a web forum.

        Meanwhile, if they had been dumber – or wiser, depending on your point of view – they would have started to think about the problem in simpler terms and deduced that they need some thing that does reciprocal motion, such as an eccentric wheel attached to a motor.

        Maybe a rollerskate bearing wedged off-center to the axle of a motor with a splinter of wood.

        That would do nicely.

        1. I think that should be a point in the paragraph 2 of the article – sometimes a rube goldberg-ish device is the result of what we have to work with. I’m sure we’ve all unscrewed a screw with a pair of pliers because the screwdriver was ‘way over there’, or used a pipe wrench as a hammer for the same reason. if you have the motor specified, it would certainly be a simpler solution – if you don’t, and had an arduino and a servo instead, then you use what’s handy. And if you had neither, you train your dog to do it (thanks Pavlov…)

          1. Still not specified that this particular one is, and, those examples aren’t “rube-goldberg-ish” solutions. They’re just examples of using the wrong tool for the wrong purpose.

            As pointed out before, the article is poorly written and is actually rather vague on what it wants to say about the subject, so you can’t read anything between the lines lest you get it wrong.

    1. but he would have needed to order parts, where, if i’m not mistaken, he did the hack he did with parts on hand..

      i think overall, most HAD readers place too much emphasis on programming, and how it can solve all of the problems in the world. i have become more anti-programming over the years because of it. there are many ways to solve certain problems outside of programming some device to do the action, either though discrete components, or through mechanical components. there is less thought involved with some aspects of programming that i think take away from some of the hacks done here..

      example: it used to be that i took pictures with my dslr with a “i can fix it later in photoshop” attitude.. everything about the image suffered because my expectation was that whatever i screwed up in taking the picture really quickly could be fixed later on with a software program. i’ve since realized that i have no interest in learning photoshop or any of it’s intricacies, so i now take pictures with an attitude that what comes out of the camera is all i get. i take more time to set up what i am photographing, and check that the image is closer to what i want out of it before moving on to taking another picture of a different scene. my photography is not anything show-worthy, but my image quality is vastly improved because of this detail..

    2. The mounting requirements for that probably would have been more complex, though–plus he probably had the parts.

      I had one once with Legos and a linkage that did the oscillation mechanically. It was attached with rubber bands and pressed left/right repeatedly to hatch eggs in Pokemon, haha.

        1. You don’t see how modifying a controller to receive mounting brackets, making the brackets that hold the servo and figuring out how to align it all properly would be more of a hassle than simply scotch taping the servo to the controller? I don’t really believe that.

          1. I mean: I don’t see why you couldn’t just scotch-tape the gear motor to the controller in the exact same way.

            All you’d have to do is cut the eccentric wheel to the right size so it clears the button after pressing it.

      1. Lego is awesome for such quick necessities. I still remember quite fondly my Q&d lego rotation platform that, after rotating told the stop motion capture software to make a snap by pressing the space-bar with a ego parallelogram. Better solutions available? Yes, about 500 of which I later implemented at least 2, but the hack was solid.

  4. I had a similar rig with a k’nex motor just spinning endlessly pushing a button for me. It evolved into a 555 clicking a relay hooked to the button to speed it up. If I had to redo it now, I’d use a transistor for less noise and speed. Since this doesn’t need the buttons to be fast, looks like a win to me.

  5. “And he did it far easier and with less complication than many of us would have done.”

    That could have applied to the write-up as well. Instead of seeing something lashed together for a few hours’ successful use and then easily dismantled, [Will] seems to have gone off on some grand romanticized imaginary journey. Even imagining that [yavin427] has basically no electronics knowledge, ending with:

    “Indeed, he might have no knowledge of what a transistor or microcontroller even is.”

    When an Arduino is clearly seen driving the servos! Pretty safe to say both that [yavin427] knows what a microcontroller is, and [Will]’s journey has taken him out of touch with reality. I hope he never gets hold of a picture of me balancing a AA battery on a keyboard key to level up, and makes assumptions on my level of technical knowledge based on that.

    Those are my thoughts, as requested. More constructive (and less critical) thoughts available on request, provided that the write-up doesn’t try to corral readers into an odd romantic mindset.

    1. Hyperbole used to make a point. Based on the reddit, I not believe [yavin472] to be an actual hacker. The end goal of his ‘hack’ was purely to achieve an objective. Not to showcase any talent, overcome any challenge or any other thing worth sharing with our community. The interest in this was the non-technical approach to (what could have been) a technical challenge. And how many of us would have made it more technical because of who we are. It’s interesting to think about if you actually try and think about it.

      I’m reminded of the scene in one of the Jason Bourne movies where Bourne needs to get a telephone number from a hotel receptionist IIRC. Jason brings forth his extensive knowledge of the spy world and gives complicated instructions to his female sidekick (forget her name). But in the end, the girl, who was not a spy in the slightest, ignored all of Bourne’s superior spy knowledge and just went up to the counter and asked for the phone number.

      1. You still make no sense.

        Non-technical no-talent approach? With a friggin Arduino and a servomotor?

        It says more of what you understand of hacking than of the hacker in question. You’re treating it as if the whole contraption was the simplest thing you could imagine, but you call it a rube-goldberg machine, and then say “many of us” would have done something even more complex or “technical”.

        What?

        Let’s start from the beginning: why is it a technical challenge e.g. to open up a box and solder a couple wires to pads on a circuit board, so you could have a simple motor or a clockwork touch them together periodically? Why is programming a microcontroller to sequence a servomotor less technical than that?

        What does “technical” mean to you?

        Or is this a issue of perception where it’s technically challenging because you prefer to plug things together and program rather than pick up a soldering iron? Or is it a lack of your imagination where the only concievable alternative to a microcontroller is a transistorized flip-flop circuit?

      2. To prove a point, here’s my take on the automatic button-masher:

        http://dumpt.com/img/files/95sp2e3x5apu1c2i11g3.gif
        http://www.dumpt.com/img/viewer.php?file=95sp2e3x5apu1c2i11g3.gif

        This is the secretary going to the reception to ask for the phone number. A sliver of tin from an olive can wrapped around the shaft of a gear motor.

        You may complain “But I have a servomotor at hand”, but you’d be forgetting that a servomotor is a gear motor. Just rip out all the circuitry and snap off the little bit that prevents the output shaft from going all the way around. Sure, it’s a waste of a servomotor, but that’s not the point – it’s using whatever you have at hand in the simplest possible manner to achieve an end.

      3. Best I can tell you’re operating under the opinion that [yavin472] is not a hacker. And then contrasting him to us.

        Except most of us hold very broad definitions of hacker. I think it was [Brian] that posted a while back (I think before you joined the editorial team), inviting people to define what “hacker” meant to them. The comments were pretty amazing, I think most folks left with a broader sense of the term. And producing a concise, consensus definition proved as elusive as nailing jelly to a tree.

        Now if you’d posted this simply as a featured hack, it would have been received negatively, and inevitably at least one person would have said “not a HACK”. Because you got this part right, it does not “…showcase any talent, overcome any challenge or any other thing worth sharing with our community.” HAD attempts to emphasize quality (when available) over quantity, and this would not meet its criteria.

        But NO ONE would have said “not a HACKER”. [yavin472] does appear to have some technical expertise, even if not well showcased by this contraption. Downplaying that through hyperbole or otherwise – just to make a point – seems unfair.

        I do consider him a hacker, and presented with the same situation, would have approached it much the same. This despite that I frequently over-engineer solutions, either because I enjoy the challenge and learning from the process as much as the result, or because the result will be a permanent part of my life that I want to gaze on with pride and say “I made that”. My new home automation is finally getting deployed after years, because I enjoyed writing my own OS, mesh networking stack, and so on for the MCU; I probably could have done it in weeks with existing components. But other times it’s quick and dirty, like the time I needed a microwave oven working ASAP and built a replacement safety interlock switch from cardboard, duct tape, and aluminum foil. I’m not particularly proud of that (even though it’s still working 10 years later), and would never submit it here for feature, yet it’s still a hack. And both approaches are a part of being a hacker.

        1. You make good points. I suppose I did throw [yavin472] under the bus to make the article, which is unfair. I should have worded some parts differently.

          I’ll look that hacker thread up. Appreciate the constructive criticism.

      4. “Achieving an objective” is the same thing as “overcoming a challenge”. You write for Hackaday, yet say nothing about the hack. You assume, wrongly, that we will appreciate your editorializing without any content or context to make it interesting. I, for one, don’t come here for brilliant philosophical musings, nor for exclusionary, self-righteous nonsense- I come for hacks. This was a hack. Maybe not a unique one, but a hack none-the-less, which makes him a hacker. Who gives you the right to declare who’s worthy or not? Us, the reader, that’s who. If you can’t tell from the comments, the entire tone of your editorial (can’t really call it an article, as it lacks of any discernible information) will only cause us to keep scrolling when we see your byline, assuming that you really have nothing at all to say. Welcome to Hackaday!

  6. If only he had two arduino’s, a beagle bone black, a 3D printer, a CNC router, and a laser cutter – now that would be a hack.

    Just kidding, have no clue what he did or why, but it appears to work to his specifications, so good job.

Leave a Reply to FatalErrorCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.