Someone Finally Did It With A 555

[Jarunzel] needed a device that would automatically click the left button on a mouse at a pre-set interval. For regular Hackaday readers, this is an easy challenge. You could do it with an ATtiny85 using the VUSB library, a few resistors and diodes, and a bit of code that emulates a USB device that constantly sends mouse clicks over USB every few seconds. You could also do it with a Raspberry Pi Zero, using the USB gadget protocol. Now, this mouse-clicking gadget would be connected to the Internet (!), programmable with Node or whatever the kids are using these days, and would have some major blog cred. If you’re feeling adventurous, this mouse clicker gadget could be built with an STM32, Cypress PSoC, or whatever microcontroller you have in your magical bag of hacker tricks.

Then again, you could also do it with a 555 timer.

The reason [Jarunzel] couldn’t use any of the fancy hackertools for this build is because the system wouldn’t accept two mouse devices. No matter, because Maplin has a neat kit with a 555 timer and a relay. The relay is wired up across the microswitch in the mouse, and setting the values correctly makes the mouse click about once per second, with a click duration of about 100ms. Good enough.

With the kit built, wired into the mouse, a small app built to test the device, and a nice project box constructed, [Jarunzel] had exactly what he needed. There’s even a video of this mouse clicker in action. You can check out that riveting footage below.

73 thoughts on “Someone Finally Did It With A 555

    1. LOL, I kinda almost did this back in 1999. Back when i was in college, and before the original “dot com” bubble had burst, I was paying for my internet service on my very limited college budget with some now long defunct company’s service called “All Advantage”. The concept, was you downloaded their app, and ran it above or below your browser’s window. It would display rotating banner ads, and as long as you were actively browsing, it logged ad views, and paid for them.

      Being the honest hacker dude™ I was… I took the eject motor from a Mac floppy drive, attached a bent paperclip to the cam, fed it into the gap between the mouse button and the mouse body, and placed the mouse in a “cage” to keep it from rolling off the desk. I then set up three free internet homepage accounts, and created hidden pages (unlinked by the index page) that auto-redirected after 15-30 seconds to the next page… They did this in a loop. The app just saw my mouse continually moving, and me loading new web pages every so often… I could rack up all my ad views while I was taking classes, and shut down the app when I was legit browsing.

      The icing on the cake? I ran a Mac, and the first few months, there was no Mac app. I was running a PC emulator, running Windows 98 on the emulator, and running Explorer for Windows on the emulator… Eventually they released a Mac version of the app, and I was able to eliminate that one extra step.

      You do what you gotta do when you live on ramen and mac & cheese between classes!

      I also wonder why the dot com bubble burst back then… >_>

        1. He came up with a clever way to exploit a stupid money making idea. He didn’t steal anything. It couldn’t be proven that he did anything wrong, and he complied with the rules. There just wasn’t anyone there to see the ads.

  1. Years ago I had a game on my commodre 64 which required rapid pressing of the fire button. I was using an Atari 2600 joystick so used a 555 timer to rapid fire the button. The big base of those 2600 joysticks I was able to fit in the 555, a pot to adjust the speed and a normal/rapid switch.

  2. I love that as a solution. I have an NES controller I modded many years back with a 555 to rapidly press buttons so we could finally win some stupid Olympics game. People should use 555s more often.

  3. Beautiful build. If you’re using a relay though, why use the 555? You can accomplish the same thing with with the relay, a pot. for timing adjust and a few discreet components. Just curious. Thank you for posting the build.

  4. So, why do this besides the fact that you can? Oh I see, rapid-fire games and such. Good hack for a gamer. I stopped playing games in the 1990s as I found it was consuming too much of my need-to-earn-a-living time, but games are cool if that’s your thing. More power to you.

    1. Venting unrelated passive aggressive jealousy in an online comment section is a much more productive use of your time.

      I bet you go into a massive autistic hissy fit at the thought of blue collar workers watching a film in the 2 hours of free time they have between work and family too.

  5. Back in the AOL bad ol days, I needed the same thing to keep AOL from shutting down when I stepped away from the screen for too long a period. AOL required someone to hit the ENTER key (or mouse click OK) periodically. Pandora free music service still does this. So I wrote a Visual Basic routine to SendKeys a carriage return (ASCII 13) every few minutes. It worked. However, today there are some browser security restrictions that prevent this idea from working today. However, if you could find an extremely old version of MSIE that will still run on your newer PC or MAC, then maybe?

    1. I was referring to the keep alive popup box that asks “Are you still there? [OK]”
      I think the VBA SendKeys.Send problem might have only been with Windows Vista with UAC turned on. So it may work with Windows 10 and MACs. However timing WAIT command may get funky on you..

  6. I just got my 20th millon shipment in last month.
    Cool.
    Love it. Did all those with my gaming computers and more. Anyway still love these little guys just like 387 op amps.
    (Oh my god is that the right name?)

    I have to check and do a quick project with it!
    (Old age does strange things to people.)

    I even talk to my self, and answer too.
    (Not always the wright answer but at least a answer.)
    Thanks for the fun time.

      1. And some on the other end are saying “take that piece of crap out of your ear and talk to me on the phone not a mic on the side of your head”. Blurtooth…raspberry.

    1. It’s noticeable that when Tandy, as the Radioshack franchise was known in the UK, closed down, Maplin went down-market and raised their prices, due to reduced competition.

      1. I’ve run into my share of cheaters over the years. My reaction varies depending on how clever or funny the hack is.

        Invading my Dark Souls game, making my head 15% bigger, then jumping off a cliff: lol
        Simply cheating your way to the top of the scoreboard in Call of Duty: fuck you

        1. Wow, thanks for the love guys. I did not say this in the first comment but it was used only on lan games to mess with friends. I sure do love this supportive and inclusive community!

  7. I guess I am just old-fashioned. If I had need of this type thing, my first thought would NEVER be a micro of any type. I’d have done exactly what this guy did. In my never to be humbled opinion, the old tech is (almost) always the best. It’s for sure more reliable.

        1. I would never have thought of adding a crystal to a 555, never come across a use case for it, but I guess you could always use it as a low frequency crystal tester… here’s one possible schematic (stolen from the internet of course).

        2. It doesn’t take a lot of imagination to see how this quest for ‘elegance’ could lead to quickly painting yourself in a corner. If a simple change in the clicking pattern is required, the 555 timer is suddenly out of luck, unless you start complicating things in other ways. Having a bare minimum tool only makes sense if you’re absolutely positively sure that the requirements are not going to change again.

          Besides, it seems to mostly boil down to stroking one’s own ego and feeling better than the kids at the Arduino Club.

          1. >”There’s another force that can come into play aside from simplicity. Economic, were a circuit can be shaved off by one component to save a penny.”

            I was thinking about that too. It might very well be cheaper to use a single microcontroller and almost no other parts than to build a circuit of multiple parts, especially when producing on a larger scale. Picking and placing and board space isn’t free.

            It applies to hobbyists too. Program an Arduino with DIP IC, remove IC, apply power and away you go. If you want to get fancy, you might solder a decoupling capacitor across the power pins.

          2. “It doesn’t take a lot of imagination…”
            Good. Let’s follow that to its conclusion–
            … but it takes a TON of imagination to design the simplest possible solution to solve a problem. And here’s a major, major clue for you: if you decide you want a career as a designer, the only way to keep that career will be to create the simplest possible designs. Always.
            And…if you know many different ways to solve a problem, and “…the kids at the Arduino Club.” know only one…

      1. One’s goals–and solutions–should be driven, in the first instance, by understanding what the problem is. A large part of this is in understanding exactly what is written stated about the problem–
        “…about once per second, with a click duration of about 100ms. Goodabout once per second, with a click duration of about 100ms. Good enough. enough…”
        I have searched the post over, and can not anywhere find a statement regarding this design’s need for ‘reliable accuracy.’

        Do you really think that a 555 timer circuit with a crystal oscillator is less accurate than a microcontroller with a crystal oscillator?
        You equate “elegance” with “complexity”, huh? Too bad.

    1. It’s really not. it’s much too large and will limit the motion of the mouse. The wire will break off eventually. it would be better to put a switch on the mouse itself and the circuit inside it. But that’s why this site is called hack a day and not elegantly-polished-modification-aday.

  8. The difference between being first and second is to publicise it earlier. Did this 10 years ago, to get rid of hundreds of NetSend messages without having to reboot the system: 555 with some parts and an optocoupler on perfboard, since a relay would annoy the crap out of me. Small LED to show the device is clicking and Bob’s your uncle.

    However, I never published it, because I thought it was rather bland. :)

  9. Works as intended, that’s okay. But off the shelf board with relay and separate power supply?? Replacing relay with transistor switch would allow device to be powered directly from mouse’s 5V supply, and also would eliminate annoying relay clicks. However, nice idea, my first solution for the problem would be PIC12F or ATTiny.

    1. Well you’re in luck! I’m well on my way to starting my cult. We’re going to have a compound in the desert, and a dune buggy. Like, a real Manx dune buggy with real suspension that looks like it’s out of Wacky Races. It’ll be awesome.

  10. I did the same thing with nothing more than a flashing LED. Simply attach it in place of the switch. It may not work for all mice and the interval is fixed, but it is the simplest solution by far.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s