Introduction: Computer Scroll Wheel, Bearings Version

Picture of Computer Scroll Wheel, Bearings Version

A heavy-weight scroll wheel to do the job of the conventional mouse wheel. Useful for scrolling through long lists, video editing and zooming in programs such as Google Earth.

The larger diameter and weight means that faster scrolling can be achived, with greater accuracy than the conventional mouse wheel affords.

This is based on this Instructable by 'whatsisface'. I just wanted something a little smoother and refined. Plus, I wanted a reason to use my lathe for something other than making candle sticks.

I'd recommend reading at least the first few steps from the earlier instructable, as mine starts off after the soldering is completed.

Anyway, enjoy.

Step 1: Mouse Dissection and Box Construction

Picture of Mouse Dissection and Box Construction

As I only decided to document this project after completing this step, I can only offer photos of the project from this point onwards.

I'd recommend reading the first few steps of earlier Instructable for the details of mouse dissection and soldering, as you can see from the picture below I've already (messily) glued everything in place.

The important thing is to find a mouse that uses a solid state rotary encoder for the scroll wheel, rather than an optical encoder. Desolder this from the board and use extension wires so it can be positioned where we want it.

They are rarer than optical encoders, I went through a pile of 10 'faulty' mice before I found mine. If it helps, the model code is: MUSD(B)-B-2, there's no other identifying information on it.

The box will depend on the size of the circuit board you have to enclose, my mouse had a large circuit board, so rather than chopping it up and soldering onto the traces I opted for a mouse sized box.

As I intend to cover my box with leather, the appearance of the box doesn't really matter, so I chose just to use 3mm chipboard and wood glue. Along with liberal amounts of hot glue to secure the circuit board and components in place.

Please excuse the red tape, it was to cover up the sensitive parts of the circuit while it was laying around on my workbench. I didn't see any reason to remove it again once it was in place.

Step 2: Bearing and Shaft

Picture of Bearing and Shaft

The bearing is one of many salvaged from a scrap photocopier (The aluminuim for the big wheel is from the same machine, it was a former foot.) I forgot to include any indication of scale in the photos, but the internal diameter of the bearing is about 5mm.

Make sure the bearing is fairly secure, as you push the rod through later it could be pushed out of it's holder. Also, now would be a good point to make sure the bearing is spinning freely and well lubricated.

The first two photos are of the box lid, again, this will all be hidden so I'm not bothered about how it looks.

If possible choose a bearing that neatly fits the shaft, or you'll end up wrapping tape around the shaft to widen it. It'll all be hidden, but may throw the whole thing off centre. Use thick tape to get an approximate fit, then thin tape to get it just right.

The shaft needs to be attatched to the wheel in the dead centre, I did all this on a lathe, but it could be done with careful mesurements, drilling and file work.

Cut the shaft to length, test fit it with the assembled box, and then file the tip of the shaft to a square point. This should slot neatly into the hole of the rotary encoder.

Step 3: Wheel

Picture of Wheel

The big wheel is the most obvious feature of this project, so you may want to spend some time getting it just right.

Again, a lathe really helps here, getting everything perfectly central and giving a nice finely grooved surface. I decided to go for a set of concentric grooves, intended to be for aesthetic purposes, but they do feel like natural finger grooves when turning the wheel.

To fit the wheel onto the shaft, drill out a hole a little smaller than the shaft, and gradually narrow down the shaft until it fits tightly. Keep a slight taper on the shaft so it can be hammered in to be secured. Threading would be a more elegant solution to this little problem.

Now is the time to align the rotary encoder with the shaft to ensure the wheel is level. I did this using blue tac to hold the rotary encoder in place, assembling everything and then moving it around by hand to get it in the right place. Then taking it all apart and gluing the encoder securely in place.

Step 4: Covering the Box With Fabric.

Picture of Covering the Box With Fabric.

If your case isn't fit to be seen on a respectful desk, then you may want to consider covering it with some fabric, or sanding/painting/sanding/painting it.

I found a piece of imitation leather that was just about the right size, and looked rather good with the aluminium wheel.

Basically cut out the net of a box, with flaps to fold over the corners. It helps to draw around the box onto the fabric. Also, if the fabric isn't a uniform colour, colour any edges that will be showing once the box is all wrapped up.

The bottom of the box can either be covered by the same method, or use a 'furry' fabric like felt for a nice base.

Step 5: Finished, Future Improvements.

Picture of Finished, Future Improvements.

All done, try it out, I find it particually useful when navigating in a 3d enviroment such as CAD programs or Google Earth.

It's also pretty good for programming, scrolling through long files quickly and accuratly, or just giving it a spin to get to the top/bottom of the file.

Future improvements:

A shaped case
Though it's not as uncomfortable as it looks, curved edges would improve it.

If I encounter a program that requires a mouse click and scoll for a frequantly used function, I may wire one of the buttons to the side of the case
A more complex improvement would be to have a button click when the wheel is pressed down.

Smaller footprint
The reason for the big case is the size of the circuit board, if I did this again I'd choose a mouse with a smaller board, or chop the board up and solder directly to the copper traces by the chip.

Optical encoder
It'd be possible to use an optical rather than a rotary encoder, it'd be smoother (The rotary encoder has clicks, or notches) and give much less friction, so would spin for longer.
The downside would be the additional complexity oh the build. (And trying to attatch that perferoated disc to the wheel shaft, could be awkward..)

Any more suggestions for improvements?


destructomonkey (author)2008-08-24

Nice thought with the SS rotary encoder. Much easier and more robust in this application. Next step is simply to dispense with the rest of the mouse guts entirely though. Much nicer Solid State encoders are available to substitute from as low as $1 or $2 brand new, and they can be scavenged from most newer car stereos or whatever (if it spins forever and doesn't hit a fixed stop, its likely an encoder). Other nice thing is that those usually have detent steps which is a very nice, almost necessary feature for this application. An encoder will have the two signal pins for the quadrature, and one for power in. Its that simple. No entire mouse board and other guts are even actually required unless you are looking to use them simply for the USB translation. There are other ways to do that too, or just run the signal pins directly to an actual serial port and skip the middleman entirely. Then your parts count is literally down to one shaft encoder, three wires, and one box to put it in.

here is a good link with schematic that will simplify things for you (i hope!!)

would you mind to throw together a schematic? i would greatly appreciate it.

your idea sounds so much simpler; no point in having all the mouse hardware if you wont be doing actual clicking with it. although a click option (im imagining something similar to clicking a joystick on a xbox controller) would be very nice too. that would be a lot more scalable (maybe a few of these on a USB hub in a larger case for multiple wheels?) though im not sure what i would use them all for, it would stil be badass looking if done right (a bank of scroll wheels???)

I don't really have a schematic per se - I simply ran the three wires directly to a parallel port (two signal pins and one tapping the ports power pin to drive it). I took care of actually parsing the two channels changing states - and interpreting that into direction - in software. You can write that into custom code yourself or just use any one of a number of programs to do it, many free. Its pretty common to find to control things like jog wheels on CNC machines. Actually any machine control software that queries a parallel port can be configured to do it.

Look for anything meant to interpret "gray encoding" or "quadrature encoding". If you just google "gray encoding" you will get how it works really fast! Its really simple.
Before anyone gripes parallel ports are old and slow, two things;
1) They were never meant to be a data transfer method, that was hacked on later and badly. The initial reason for them to exist was to interface with and control physical machinery in real-time. At this they excel, as that MUST be parallel in nature. Things like USB meant for fast data transfer are serial, and therefore there are timing and sequence errors.
2) Parallel cards are available to this day, for those machines that don't have it, for like $10.
Any equipment hacker who wishes to interface directly with hardware needs one. Even if its an ancient design, the fact is it was designed for just this exact purpose - and any new port designed for this would have to do the exact same damn thing inteface directly and avoid virtualization layers. Just get one already. There is a reason they are still standard in the CNC industry.

I'm having a rather difficult time finding a mouse w/ a solid state encoder, and google isn't really helping. You mentioned a place where you can get rotary encoders, could you point me and anyone else having trouble in the right direction? Also, how would you connect the encoder to the computer? Would you have to use a serial port or could you solder the new encoder in the place of the old one? I'm a novice in DIY electronics, so any advice would be appreciated.

Mouser Electronics has a lot of them, try searching their site or starting around page 1500 of their catalog. The rest of the electronic supply places should carry them too. You could just substitute a better quality, encoder for the original mouse one, just solder it to the same connections and use the mouse board as-is for its interface chipset. Probably the easiest if you are a novice. I use an interface that expects to be speaking to a number of quad encoders directly, (I use four) so I can just run them into a serial or parallel. Gives me a ton more control over their behavior, what they each control, and aspects like defining step resolution, etc. but it is more difficult in that it requires coding your own (if pretty simple) driver, or only using software that already understands quadrature input.

Let's just say programing isn't my forte, so that route is out for me... If I were to buy an encoder and wanted to attach it to the existing board, would I need a mouse that had a SS encoder to start with, or could I throw it on where the optical encoder's terminals were? Also, what kind of encoder do the mice use? (ie. binary 2-bit greyscale or greycode or quadrature, do the number of channels matter, do I need it in absolute or incremental) Well anyways, thanks for the helpful reply.

sibrow (author)eggplanthunter2008-09-04

This mouse worked well for me. :the second scroll wheel is on a separate circuit board connected by wires, so you don't need to do any soldering! I also used an old floppy drive as a case, and used the motor + bearings as the wheel. Hope that helps.

eggplanthunter (author)sibrow2008-09-04

Thanks for the advice. i did however find a mouse that worked for me, so I'm happy now.

I have pictures of it, and a link on the original version of this ible.

webslog (author)2008-08-28

Really excellent Instructable and kind of humbling to see how makers can play with the PowerMate concept. Love the over-sized-ness of the knob.

I work at Griffin and PowerMate in one of our best-known products. We've come up with all sorts of cool ways to use it. I'm actually working on hacking a couple for use as foot-pedalled ubercontrol. While PowerMate uses drivers and/or a freeware app called Proxi to allow configuration, I have to believe that you could use any mouse control and remapping software ( to get a lot of additional functionality out of the controller.

Nice work.

kool1zero (author)webslog2010-12-12

check out GlovePIE mentioned in a post somewhere around here, you can very intuitively make the left click of mouse #12 = "f" is you want to. or you could set it equal to a volume control of something like that

boyrock375 (author)2009-01-09

how did you connect the mouse and external scroll wheel to the computer at the same time

42ndOddity (author)boyrock3752009-01-10

The wheel is on a ps2 connection (the old round connector). And my usual mouse/trackball has a USB connector. My computer seems to accept both at the same time, I suspect most will.

 I know my vaio will even take multiple USB mice, we had to run things from 2 both ends of our sound booth so I had 2 wireless mice plugged in and well, my friend on the other side decided to make my life hell and play around with the cursor at the same time I did

Ben The Builder (author)2010-03-26

 I seem to remember the actual powermate as having glowing LED's I think If I were to make this I would add the LED's, this could be achieved by using a USB mouse and if you find where the cord to the USB is you can use the Red and Black wires and a resistor, of which I cannot remember the resistance to run the generic 3VDC LED's, I used this technique to make a Small aluminum can christmas tree light up for a friend of mine, she loves it and i'm pretty sure it stays plugged into her computer 24/7

w477s (author)2009-11-23


joke ;)

tudgeanator (author)2009-08-24

I just finished mine. It also has a bearing and i used half a duncan yoyo (ive got tons of yoyos as i had a brief obsession, and this is the cheapest one i own) for the wheel. Thanks for the 'ible, it was useful.

boyrock375 (author)2009-01-25

i made this automatic one it work by a motor a joy stick to make the motor spin in both directions ran by a twelve volt battery

RapidMustang (author)2008-12-16

Couldn't you also put the scroll wheel button under the axle? Then it would be even more useful!

A Guy Named Loren (author)2008-09-22

Oh, sorry I did not read the "Future Improvements" section of your Instructable - I guess you said that it'd be difficult, not impossible, to use an IR encoder. PS - The red optical LED in my wheel's case (which happens to be transparent) looks awesome!

A Guy Named Loren (author)2008-09-22

Whoever says that you need a rotary encoder is sadly mistaken! I built a similar PowerMate-type wheel with a standard USB optical mouse, which contains an IR transmitter/receiver, and it works great! Sure, maybe it took a little more work, but the mouse was just an extra sitting around the house (only $1 bought from a surplus electronics store when I bought it originally), so I figured I'd give it a shot. Now I have a wheel with USB functionality, and I can use it exactly like the PowerMate can be used. My favorite is the freeware app called Volumouse, which allows me to control the volume with my wheel.

eydryan (author)2008-08-28

too bad it;s not a serial (or better still Usb) attachment, then we could use girder to assign it to a volume control function, since this scroll wheel is pretty much useless if the window is not in focus....

nubie (author)eydryan2008-08-28

Try this software:

Since it is a simple 2 bit rotary encoder maybe it is possible to use this without mouse guts, I don't know how though. (I have a few Atmega chips with the firmware USB, it should be possible to write a driver for multiple rotary encoders, but I don't know how to make the software, possibly GlovePIE? If GlovePIE then couldn't we make the interface with a couple resistors to the Parallel port and do all programming on the PC side?)

I like one knob, but I need a second knob so that a virtial Etch-a-Sketch can be designed. (AKA a ball mouse guts connected to the encoders and MS Paint should do it. ;) )

eydryan (author)nubie2008-08-28

i saw volumouse at the project after which this one was inspired and the issue remains that you cannot dedicate the input to just your special controller. perhaps if you would also scavenge the mousewheel click connector and rig it so that when you press the wheel and turn it something happens, so it would be less likely to happen normally or to affect what you're doing... or even better, use the innards from a multi-button mouse and set the activation key to one of those normally unused buttons... a virtual etch-a-sketch would be funny :) you'll make the next nintendo wii :)

nubie (author)eydryan2008-08-28

Agreed, but this is kind of a DIY place, so if you need a feature. . . DIY. A Simple method would be to put a toggle or push-on button to hold down the middle mouse button, then when toggled it functions as a volume knob. I also considered integrating a USB keyboard PCB in the same enclosure so I could use the CTRL/ALT/Shift keys for more options. Try GlovePIE, you can probably program it to do what you want. If I had any programming skills I could probably figure something out, but I don't. (I guess it is called "instructables", but the atmosphere is very DIY)

eydryan (author)nubie2008-08-28

hehe, nice point. I'm not that good at diy, which is why i'm just spurting out concepts. the keyboard pcb is a good idea, and so would be using scroll lock or some other unused key. i don't really understand how the signal is sent to the controller as to which key is pressed but i guess you could find out and adapt a button to it. glovepie looks really interesting... I've seen a lot of smart programming on instructables, perhaps there are people who know how to. anyway, this is a great mod, I'm going to try it myself.

dpocius (author)2008-08-28

Speaking of the "1970s stereo", a big tuning or loudness knob salvaged from an old tuner or receiver would work nicely, perhaps with a heavy steel washer epoxied to the underside if you needed more mass.

Derin (author)2008-08-27

looks nice,I also liked the other scroll wheel instructable.

nubie (author)2008-08-25

If you wanted remove the clicks/notches you can bend the spring on the encoder. It is visible in your photo as the bit of metal with a U bend in it. I just did this with a VCR head (good bearings, very heavy, but also very tall), I snipped off the end of the plastic wheel that goes in the encoder, filed it flat, and used superglue to attach it. There is no need to glue down the encoder or position it in the very middle, I am using ribbon cable to attach and it will hold the encoder in only the axis of rotation, allowing movement to center to the axle. I just anchor the wires to the box. My ultimate goal would be designing an optical encoder so that I could grind (sadly no lathe access) off the axle to the bottom of the VCR head and weighting the bottom half from the inside with lead. One option is reflective sensing with tape or paint on the aluminum surface itself, using bits from a ball mouse. If you are interested in 3D or drafting I recommend getting yourself a SpaceOrb 360, 6 DOF optical ball! (Rotation and movement along all 3 axis) The "engineer/CAD" models are expensive, but the driver from the website works with the gaming controller, replacement heads are available from a Playstation version called the "Ascii Sphere", you can sometimes find them on stock clearance sales, I got 4 for $20 (75% of that was the shipping)

42ndOddity (author)nubie2008-08-26

I'm thinking of ripping it all apart actually and redoing it, so I'll consider those improvements next time. I'd really like to get it to work so the knob is also the 'middle click' button. But I suspect that'll mean lots of fiddly tuning and tweaking with spring tensions. I could actually cut most of the circuitboard out, there is basically just a chip and a couple of transistors clustered close together. So my next version may be soldered directly onto the circuitboard traces. I want to keep it USB though, just for compatibility, I can currently plug it into my XP or Linux machines and they accept it perfectly. The rotary encoder actually causes a lot of friction, much to my annoyance, which may be solved by removing the spring, I'll give that a go. Thanks for the feedback!

osgeld (author)42ndOddity2008-08-26

remove the spring and use some of the radio shack "precision lubricator" which is basically mineral oil with Teflon mixed in, or silicon lubricant found at most hardware stores (i get mine at ace, never wears off awesome stuff in a spray can) i mistakenly did that to my first "Microsoft optical mouse" way back when, and 1 slight movement of the finger would send the really lightweight plastic mouse wheel flying, if you rigged it up with some sort of tensioning mechanism you could replicate what i like to call the "1970's home stereo effect" where it glides super smooth and free, but also lets you have precision control

osgeld (author)nubie2008-08-26

i want to do this with a VCR head, but instead of a basic scroll function some improved software could make this into a very useful A/V editing attachment

JellyWoo (author)2008-08-26

hey! someone else made something like this too.

42ndOddity (author)JellyWoo2008-08-26

Yes, yes they did. That would be the person known as whatsisface, who did the instructable I linked to in the intro, and also in the first step.

JellyWoo (author)42ndOddity2008-08-26

what's the difference between the 2 scroll wheels besides this one looks nicer?

42ndOddity (author)JellyWoo2008-08-26

I haven't used the other one, so I can only guess at the differences. But I suspect the extra weight allows this one to be spun and maintain it's momentum for longer. The bearing will also make it more robust and not 'wobble' as a heavy wheel may do when spun, if only supported at the bottom of the rod.

whatsisface (author)2008-08-25

Nice work! I'd have had a go at turning my own wheel (and possibly a base) if I had access to a metalworking lathe. Improvements-wise, (although it would mean re-doing the project completely, maybe someone else should take this up) you could use a 5-button mouse with back and forward hotkeys on them, then there's even fewer excuses to have to use the full mouse. Thanks for thr references too.

42ndOddity (author)whatsisface2008-08-26

Thanks for the comments, I nearly did a 5 button mouse just for the back and forward buttons (was going to have them hidden under the leather, so it's still minimalist) But I couldn't find a suitable mouse I was willing to sacrifice. If I make another one, then it'll be a wireless version with at least a back button.

kerowhack (author)2008-08-24

Nice machining work on the knob. I have been considering building one of these on a joystick, and maybe with a button or two on top. I know that would be starting to move out of the realm of cheap and easy, and would probably require a driver, but it sure would be nice for Google Earth and AutoCAD to control all the view and zoom with one device.

ac1D (author)2008-08-24

you are god but you use yout invention for a wrong idea! Download a music program, and use this as a scratch table!

42ndOddity (author)ac1D2008-08-24

I thought about that when I saw the hand photo resized to a thumbnail...and yes, if you find the right software it'd probably work quite well as a record deck. Incidentally, god or good? I'm happy with both.

ac1D (author)42ndOddity2008-08-24

It was meant to be GOD, becose i know you would think i said GOOD with a mistake and it would make a confusion

thearchitect (author)2008-08-24

Hah, just yesterday I scavenged a VHS player head for this purpose... This will be a looong project. Great job! Thanks for sharing! K.

About This Instructable




More by 42ndOddity:Large log slice tableMetal leaf cutter ant sculptures, largeCreating a bush knife with layered wood handle
Add instructable to: