Desktop Scroll Wheel and Volume Control!

79,439

241

140

Posted in TechnologyComputers

Introduction: Desktop Scroll Wheel and Volume Control!

Make Magazine's weekend project, 3/4/09

Some Background

Recently, I've been reading a lot of different blogs. Each day I'll read the latest posts on engadget, lifehacker, hackaday, BBG and the MAKE: blog. The problem for me came when I realised that only some of the posts were interesting to me, and to get to the interesting ones took a lot of scrolling.

For this, there are several solutions. I could have set my RSS reader up with each of the blogs that I read and go through the titles daily, or I could have set up a Yahoo! Pipe to filter by words in the title. I didn't much fancy this though, so I set about looking for easier ways to scroll long distances. In my searching, I came across this: http://www.griffintechnology.com/products/powermate - The Griffin PowerMate. The PowerMate is an assignable controller that you can set up for many things, browsing Google Earth, scrolling, Controlling volume etc..

I took a look at some YouTube videos of it in use and thought it was literally a scroll mouse on it's side with a fancy knob and some software. A few googles later, and I found a post on the bit-tech forums about a guy who made his own from a VCR spindle and an old mouse. I fancied a bit of that, so away I went and this is what I came up with. I call it the Griffin PowerFake.

It's made from an old PS/2 Mouse, a project box and, yep you guessed it, an old R/C car.

Step 1: What You Will Need

To build your own, you'll need the following (note that some of the parts are interchangable, say the R/C car wheel, while some are very specific, like the type of mouse you use):

  • An old PS/2 Mouse, preferably one that has a ball rather than an optical one, and one that uses a Rotary encoder as a scroll wheel, not one that uses an IR Transmitter/Detector. If you don't know what a rotary encoder looks like, see the last image of this step.
  • An old R/C car/ Other circular object you can use for rotating that fits in your hand easily. Other suggestions are the spindles from an old VCR or maybe even an old CD-ROM drive, spinning the CD like a record on a turntable.
  • A project box of your choosing, I used an old one I had lying around.
  • A metal rod of suitable length to go through your R/C car wheel, project box side and the rotary encoder.
  • Solder
  • Soldering Iron
  • Solder Wick/ Desoldering pump
  • Tape/Glue/Double sided foam pads/ Pressure sensitive tape to mount the encoder.
  • Superglue
  • Drill
  • Screwdriver
  • Small piece of strip board (Optional)

Step 2: Gut the Mouse

Time to rip apart your beloved mouse. Usually these just come apart with one screw, but maybe your manufacturer has decided to be a bit sneaky and put screws under stickers as a way of telling if the warranty should be void.

Now is where you'll find out if you have a rotary encoder or an ir transmitter as a scroller. If you have a rotary encoder, well done and carry on. If you have an IR Transmitter (As is the case with cheapo mice) then it's no good for this. Go directly to jail, do not pass Go, do not collect £200. OK, bail yourself out and try with a different mouse.

I don't have any pictures of this step because it's a bit obvious (and I forgot to take some), but I do have a picture of my board after the rotary encoder has been removed, and one of the rotary encoder soldered to the piece of protoboard I used to mount it.

Step 3: Desolder the Encoder

Right, now it's time to pull out the mouse wheel from the hole that it sits in and bin it. Now flip over the board and find the holes where the encoder is soldered in (there should be 3 of them in a row). Make a note of which way the encoder points, or you'll solder it backwards and it won't work properly. Heat the solder points with your iron and use either solder wick or a desoldering pump to pull off the solder from the board, releasing the encoder.

Now in each of the holes that the encoder was sat in, solder a different colour of wire. These will need to be about 3-6 inches long depending on your project box size. Now you have a choice. You can either solder the wires directly onto the corresponding pins of the encoder or you can go into the magic cave and look for the chest of mystery (Page 132). No seriously, your second option is to use a piece of stripboard to connect the pins to the wires, as I did. This is a bit more durable than directly soldering the wires. In my picture I have bent the tabs on the encoder at right angles to the actual component and have already glued in my metal rod.

Step 4: Glue the Rod In

Now you'll need to find a metal rod that will fit through the middle of your encoder (I used a piece that I had lying around, you could maybe use a thin nail or some thick and quite stiff wire, maybe from one of those massove paperclips).

Once you have your rod, cut it to about 3 inches long or shorter. It needs to be long enough to fit through the encoder, one side of the project box and a good way into the wheel of your R/C car.

Glue it in to the rotary encoder by putting a small dab of superglue onto the rod and sliding it in to the hole in the encoder's centre. Let it dry, and if the metal rod can turn the encoder, you're in business. Otherwise, use a knife to scrape away where you've stuck the rod to the edge of the component and try again. You'll find it turns very easily with the rod stuck in it.

Step 5: Mount the Encoder

On my encoder it is worth noting that there were 2 tabs on the sides that were also soldered to the curcuit board for stability. I desoldered these and used them to mount the encoder to the project box lid. YMMV.

First off, drill a hole in your project box that's the same diameter as your metal rod, and stick your rod through it. Now you need to mount your encoder to the inside of your project box. For this, I used pressure sensitive tape, which is double sided and very sticky. I then went over this with a little tape just to be certain.

Step 6: Stick the Wheel on and Mount the Board.

Time to rip the wheel from your R/C car. If it comes with a gear in it as mine did, then you might want to keep it in to act as a spacer/ washer for your wheel.

I used a little superglue again to mount my wheel, the same way as I did the encoder. You may have a different diameter hole in your wheel to your rod, so I reccommend you roll up some paper to pad out the hole, or gum it up with some Blu-tac. I don't have any pictures of ripping the wheel out, partly because they're all different and partly because mine was found at the bottom of my parts bin.

Now all you need to do is stick the board to the bottom of the project box (pressure sensitive tape again) and drill a hole in the side of the case for the cable to escape from. Then clip/screw the two halves of the box together and test it!

Step 7: Test It

Plug it into your computer and give it a whirl. Please note that I use a USB mouse with my PC, so the PS/2 port was free. If you used a PS/2 mouse like I did, you'll have to reboot your PC after plugging it in for the BIOS to recognise it.

Fire up something scrollable, be it your Winamp library, your browser or a massive Ebook and give it a test. If you find it's too sensitive or not sensitive enough, then go into your Control Panel and adjust your mouse properties, more specifically, how many lines you scroll with one turn of the wheel.

As an added bonus, see if your wheel has enough momentum to scroll under it's own weight with a flick of the wrist, like mine does.

Step 8: Take It a Step Further

I wanted to emulate the PowerMate as far as I could, so a little googling later turned up this awesome piece of software called Volumouse: http://www.nirsoft.net/utils/volumouse.html

Basically it lets you adjust the Volume of your PC by holding a keyboard button and scrolling up/down. As well as this, it will show a little slider that shows the percentage volume that your PC is at. It will also resize windows using the wheel and change brightness, all according to the conditions you give it.

Here's a demo video of the wheel with Volumouse installed and running, with the Window Resize plugin installed.



And that's it! If it looks like I've missed anything out, or if you have a question, feel free to comment and rate!

Share

    Recommendations

    • Casting Contest

      Casting Contest
    • Woodworking Contest

      Woodworking Contest
    • Microcontroller Contest

      Microcontroller Contest
    user

    We have a be nice policy.
    Please be positive and constructive.

    Tips

    Questions

    140 Comments

    I made a wireless one, it doesn't go very far, but it works nevertheless.

    Wireless Scroll Mouse.JPG
    1 reply

    hey bro how did you do that man . share with us please :)

    Just finished mine! Woop woop! (i only started it about 15 mins ago, not when i posted my previous comment-just so you know) Thankyou so much for giving instructions on how to do this, it's so useful!

    Capture2803750.jpgCapture2788765.jpgCapture2770812.jpg

    The pictures are not complete and the description isn't clear. Did you just reorient the encoder horizontally? Did you remove it from the mouse all together? Is the other mouse even used? Where do the wires go? What is still connected?

    Is there any other piece of software for this needs? I think the idea is to actually be able to use second mouse INDEPENDENTLY from main mouse. By that I mean using just a wheel without keystrokes or use mouse buttons as modifiers

    1 reply

    By using the guts of a USB mouse (or PS/2 mouse converted to USB) in this instructable, it will be sending USB "Human Interface Device" or "HID" commands over USB. This is a standard for keyboards and mice, and includes only standard commands like "letter A key pressed down", "letter A key released", "mouse X moved +N ticks", and "mouse L button clicked down".

    Virtually all USB *drivers* built into all modern operating systems consider HID commands coming from multiple devices to all be sent to the single Windowing Manager for use in any windowed application (thus the application that received mouse-move events, for example, is controlled by the Windowing system-- generally sent to the active window, sometimes sent to the window overwhich the mouse is positioned). note that it is the Windowing Manager that renders the mouse *pointer* which follows mouse movements (commands coming from the mouse device). Generally this means you can plug in a bunch of mice and any one will move the cursor and no one mouse is the master; and different software does not "claim" any particular mouse nor can distinguish between different mice.

    Theoretically if you program the USB (or PS/2 serial) driver at a low level, you can "read" the events from one USB device and, importantly, also keep those commands from being forwarded to the Windowing System.

    is is possible that I could attach a steering wheel to this and us it in a game like Flatout 2 respond ASAP I AM a N00B

    1 reply

    This is one-hundred percent possible as long as you can steer in flat-out 2 with the scroll wheel, that being said if u are a noob you should get some experience first.

    Thanks for this, it was helpful for my side scroller.

    http://wackomedia.com/giant-scroll-wheel/

    100_3450.png

    No, it's called a rotary encoder, there's a difference.

    Hi Sir,

    Please see attach image of my DELL mouse.but i can't see encoder.Can you please help me where is encoder in this mouse?

    IMG0151A.jpg

    It's the thing next to the left click button.

    I think...i don't have encoder in this mouse.but i think you can see potentiometer near left side button..please describe briefly if my mouse have encoder then where it is and if not then where can i find this encoder?

    If this is a "Rotary Encoder" then PLESE tell us the difference between that and a "Potentiometer". After searching out the web for this part I found a discription for a Rotary Decoder but I have a hard time comparing it to what you've got in the picture.

    ...I'm sorry, but if it's a Duck then lets just call it a Duck.

    A rotary encoder shorts two of the legs protruding from it together, followed by another different pair of legs. By interpreting this, a microcontroller can tell which direction the shaft is turning in, and thus the computer knows whether to scroll up or down.

    I repeat, it is not a potentiometer.

    Really? It has 3 Pins and it looks like a potentiometer...

    And its name is a rotary encoder. Just like a Voltage regulator has 3 pins and a tab for a heatsink, that doesn't make it a MOSFET.

    Funny that you mention that. I've had to remind myself over and over to check the tiny print on those things to keep from confusing them!

    man, i wish i could do this. im too poor to afford a good soldering iron. all i have is an old one from like 1999 that dosnt work =(