Lego Gears in Continuous Duty
And Anti-Cheat Systems

Lego gears obviously aren't meant to be used heavily. They're made and designed to be toys, take loads that are far less than what normal gears would take, and be reliable in those conditions. They're meant to be spun between 300 and 500 rpm at their normal rated voltages and currents.

But sometimes you need a little more oompf.

So that's what I did. I heatshrunk a Lego bushing (part 3713) onto the end of a 5v motor shaft, basically giving me a really beefy motor that can drive Lego gears.

I'll pause for a moment and explain why I had to do this. I had a need to click at a regular interval on the order of over a million times. A calculation told me that this would take 30 days straight to finish. Going by previous experience testing a similar autoclicking mechanism, Lego motors just aren't up to the task of that sort of continuous duty and load. They'll start squealing very loudly and there's not much you can do about it. A revised design to have a better gear train and a different mechanism solves the problem of load on the motor and instead puts most of it on the gears.

But I'd made the motor larger and made it spin at least a hundred times faster than what Lego gears are meant to take. At the end of the runtime there was a bit of damage to the gears, which held up surprisingly well all things considered. Note that I did end up spraying down the axles and gears with some silicone lubricant, just to keep the wear down somewhat.
Here's what the gear train looked like after the 30 straight days of runtime.

And in order, the most damaged to the least damaged gears; also this is the order they were in the gear train, from motor to hub.
The most damaged gear was attached to the motor. The teeth are noticably shorter on both sides, but wear is even across the width of the teeth.

The next gear had less damage, mostly skewed to one half of the gear. However one half of the gear is noticably more worn than the other, giving it a sort of bevel.

The following gear has the same bevel to match the previous meshing gear, but doesn't have as much wear on the non-meshing side. Interestingly, the gear teeth are twisted a little bit as well.

The last gear in the train was completely undamaged. This may have been because of the small intermediate gear in between, which wasn't damaged either.

Now I had said earlier that this was to click on the order of a million times. It's for a game, obviously, a MMO to be exact. MMOs have lots of anti-cheat systems available, in this case the MMO had rolled their own implementation. It failed to catch me cheating it seems, despite me being logged on until the game client forcibly closed my session. Apparently doing that 30 times in a row isn't a flag for cheating. Before starting this I knew that software autoclickers weren't allowed, but MouseKeys was allowed. That previous experience with Lego motors referred to that test, which was only about 200,000 clicks. As an upgrade, this time I was using an actual mouse, which had a double-clicking issue that wasn't a problem for the application, that I had stripped of its casing. A ram pushed into the left mouse button every revolution of the cam mechanism, performing a mouse click. Effectively, the game believed (wrongly) that I was clicking at the average speed required for the task, when I was actually a good bit away from the computer. No repercussions. Amazing if you ask me, but it does show that even the dumbest, simplest solution for catching a cheater would have been a good one here.

Prev Blog Entry Home Next Blog Entry Github RSS Feed