
Building an Automatic Left Mouse Clicker - Jaruzel
http://www.jaruzel.com/blog/?building-an-automatic-left-mouse-clicker
======
Jaruzel
OK thanks for the comments everyone...

Some answers:

1\. No, I'm not cheating at a game.

2\. No, it's not some sort of auto-clicker for the web.

3\. The machine in question is VERY locked down. I cannot install any software
onto it, and I cannot plug in any extra devices other than a single mouse and
single keyboard (It doesn't even like my KVM switch). It's locked down for
very good reason which under normal usage I agree with, however, I have
specific development purposes that require this hack. I also WFH, so security
of the machine is already taken care of. (If someone I don't know is in my
house... I've got bigger problems.)

4\. I only use the clicker while I am working and the machine is next to me -
I never leave the machine unattended whilst logged in.

5\. I've been using it for a few days now, and it's a godsend, It's made my
current day job so much easier.

~~~
13of40
Do you think this programmable mouse jiggler might have done the trick?
[https://www.cru-inc.com/products/wiebetech/mouse_jiggler/](https://www.cru-
inc.com/products/wiebetech/mouse_jiggler/) By itself it doesn't solve the
problem of cutting back in with the mouse when you need to work, but there's
probably a USB switch box for that.

~~~
Jaruzel
That might have worked. However I discovered that the machine wouldn't talk to
my mouse or keyboard through my KVM switch (as it introduces a USB hub into
the path), so my guess is that I wouldn't be able to switch from the jiggler
to the real mouse.

------
tehmillhouse
I know you said you didn't want to go into why you needed this, but I _am_
curious: why did you need this (preventing your machine from going to sleep I
imagine?), and why didn't `while true; do xdotool click 1; sleep 60; done` do
the job? (no logged in user, perhaps?)

~~~
tfeldmann
My guess is cookieclicker
[http://orteil.dashnet.org/cookieclicker/](http://orteil.dashnet.org/cookieclicker/)

~~~
ninju
If so all that is needed is a javascript console

[https://stackoverflow.com/a/43557991](https://stackoverflow.com/a/43557991)

------
peterburkimsher
As the meme goes, "You can do it with a 555" \- and a spare mouse, in his
case.

Or you can do it with an Arduino (if it has a 32U4 chip for USB HID).

I made KeyMouSerial to take keystrokes, mouse movement, and mouse clicks on my
laptop and send them to another computer via an Arduino.

[http://peterburk.github.io/programs/#keyMouSerial](http://peterburk.github.io/programs/#keyMouSerial)

------
fenwick67
I was really hoping for a "drinking bird" implementation.

~~~
turc1656
My thoughts exactly. I think he is probably a Nuclear Safety Inspector at the
Springfield Nuclear Power Plant

starting at 2:50
[https://www.youtube.com/watch?v=R_rF4kcqLkI](https://www.youtube.com/watch?v=R_rF4kcqLkI)

------
ericfrederich
When your only tool is a hammer everything looks like a nail.

This looks like a hardware guy looking for a hardware solution. Think me may
have given up too easily on a software solution?

~~~
nicky0
I expected to find a comment like this. It's easy to dismiss something and
make a cutting remark, rushing to assume that the obvious solution has been
missed. I'm glad the OP has posted with the reasons, to make you look at least
a little foolish.

------
rasz
You can also reprogram off the shelf gaming Steelseries mouse:

[http://hackaday.com/2017/07/29/injecting-code-into-mouse-
fir...](http://hackaday.com/2017/07/29/injecting-code-into-mouse-firmware-
should-be-your-next-hack/)

+tons of other mice use STM32 micro
[http://www.overclock.net/t/1533712/gaming-mouse-mcu-
list](http://www.overclock.net/t/1533712/gaming-mouse-mcu-list)

------
twic
It's mini-ITAPPMONROBOT!

[https://thedailywtf.com/articles/ITAPPMONROBOT](https://thedailywtf.com/articles/ITAPPMONROBOT)

------
tekromancr
What an insane but effective solution! Kudos!

~~~
vincnetas
We still don't know WHY he was doing this, so it's a little bit to early to
call this "effective". As someone mentioned "while true; do xdotool click 1;
sleep 60; done"

~~~
tekromancr
Yes, it is effective. It works. It has the intended effect. That is literally
the definition of "effective".

