Build Your Own Mouse For High Performance

For the dedicated gamer or hardcore computer user, there’s plenty of options for high-end input peripherals. We’ve seen plenty of makers build their own bespoke keyboards, too. Less commonly seen are custom mice, but [gipetto TranquilTempest] has crafted just such a device to suit their tastes.

The mouse is based on the PMW3360 sensor, prized for its 250 inch per second speed and 50g acceleration capability. Buttons are read by an ATMEGA32U4 which handles hardware debouncing for improved control. Anyone that’s accidentally double-clicked all their villagers in AOE II can appreciate this feature. There’s also specialised code to read the wheel encoder from [Ben Buxton] which helps avoids backscrolling.

The PCB was ordered from JLCPCB using their assembly service, which comes in handy for makers who want to build advanced designs without messing around with reflow. It’s designed to fit inside Microsoft mouse shells popular in years past – like the Wheel Mouse Optical and the Intellimouse 1.3.

Building your own mouse from the ground up is a great way to get yourself an input device that perfectly serves your needs. We’ve seen others work in the field, with custom trackballs and breakout boards for sensors. If you’ve got your own cutting edge build, be sure to let us know!

12 thoughts on “Build Your Own Mouse For High Performance

  1. As ridiculous add it sounds, I just opened up hackaday because I was thinking of doing a custom mouse build and was greeted by this article on the front page. Thanks.

  2. I think you are incorrectly crediting Gipetto with creating the mouse, when it’s actually TranquilTempest. Gipetto just seems to be a participant in the thread.

    1. From what I understood, gipetto hitchhiked the thread, but both of them created mice. TranquilTempest seem to have used an EFM8 uC, but I didn´t see much detail in his posts. Didn´t read the full thread, though, because the site was too heavy on marketing ads of sunglasses and whatever, and loading too slow here.

      1. I laid out the pcb and modded the code a little. I don’t deserve praise for the code or circuit, they were done by several folks way smarter than me. It’s a good base for anyone who wants to upgrade their favourite shape, just rejigger the edge cuts layer in kicad. When I started this it was hard to find a native linux mouse, still is but at least there’s libratbagd/piper now.

  3. this is a thing ive been thinking about doing ever since i found a mouse sensor without scrubbed markings in my parts bin, and was able to find a datasheet for said module. of course i think i would build one more to get buttons and features i want, since no consumer mouse device implements extra buttons in a sane and usable way. for example mine comes with 10 buttons, and less than half are usable in most games/applications. some are hard bound to system functions and do annoying and unexpected things when pressed. or worse, are dependant on running large and unwieldy background applications (looking at you logitech) in order to be rebound.

    probably use one of those blackberry trackball modules as 2-axis scroll wheel and if at all possible get an analog thumbstick on there. bluetooth and rechargeable lithium batteries would also be a must.

  4. Wants one that has internal 16GB Flash for those times the system is totally unbootable. Keyboard with the usual BIOS entering combis ie Delete, F1, F2, Esc, Ins etc would also be handy.

  5. I ask because I really do not know.
    I like this project, is there a place where this project is described in any detail, code, how to get the boards etc.
    I have a need to make this but I also want to understand it so I can make a customise the software a bit.
    I am stuck at “Where to start”
    I may be missing the obvious, but I guess it is not so obvious to me?

Leave a 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.