KeyBall Controller V2
This is the second PC KeyBall controller I’ve made. There was a lot I wanted to change after the first KeyBall controller, and I think it’s about perfect with this design.
- USB plug and play. Universally works with any PC game.
- Optical 1600 DPI trackball mouse, with backlit scroll wheel.
- Screw in detachable analog stick for the D-pad. Great for games like WoW or anything where all you do is hold forward (W) for hours.
- D-pad uses mouse micro switches for a quick, light, tactile response. I love this D-pad. Every D-pad should use these switches.
- Both triggers, as well as the left and right bumpers use mouse micro switches as well.
- Keyboard has all PC functions, and is backlit for playing at night.
- 10 foot long braided USB cord. Long enough for using in the living room to play games with a huge TV. It also doesn’t tangle which is sweet.
- No hot glue! Everything has it’s own custom made board with screwposts. This way it is easily serviceable should someone get nacho bits in the buttons.
This is the button layout. It’s pretty simple, and for most games nothing needs to be remapped. The design is similar to the first KeyBall on the bottom. On the top I changed the layout a bit, and moved the scroll wheel to the top face. It also has two more buttons (Z, X) than before.
I made one of the top buttons middle mouse-click, but the scroll wheel still has the middle mouse click if you push it. I just wanted to make it easy for the right thumb to reach it quickly, since I use it a lot when I’m on the web and I open new tabs every time I click a link. My name is Gabe, and I’m a tabaholic.
The keyboard is similar to a BlackBerry phone keyboard, so it’s fairly intuitive to use. A great improvement over the PS2 keyboard from the first KeyBall. The backlighting turns on or off with the push of the RF button.
The trackball is 1600 DPI and the ball is 1″. This gives just the right amount of sensitivity. For most games you don’t need to adjust anything. Quite a nice trackball, and cheap too. The size of the ball is nice because I have found a few balls that are 1″ and I can use them in place of the red one if I want. I tried using a black 1″ marble, but the optical eye can’t “see” it well enough, so I left it with the stock red one for now. It has a ring cover that screws off to let you clean the inside if it gets dirty.
WARNING BORING EXPLANATION/ There are 4 push in/push off locking switches around the “hump” area of the controller. The top-left-hand button, when pushed in, switches the numbers 1-10 on the top row of the thumb keyboard to the F1-F12 keys (B,N are F11, F12). Push it again, and they’re back to being the numbers.
The other buttons switch around mouse wires. This is because on a console the right trigger is always the shoot button, but on a mouse the Left button is always shoot. So in order to make it work the way I am used to a console controller working, the triggers are opposite what the mouse buttons are. So L trigger=Right mouse click, R trigger=Left mouse click . No problem… Until you have a FPS with dual-welding of guns where the Left and Right mouse buttons act as each gun, such as in Halo 2. Or a sequence in Call Of Duty where you have to swing icepicks with one mouse button for each arm. It gets very confusing trying to work out what the opposite of what is onscreen is on the controller. I had this problem with the first KeyBall, and it got frustrating after a while.
So to fix this problem I added in these switches. There are now two options to choose from. If you push the top-right-hand button, the triggers will switch back to a normal left/right mouse buttons. Push it again, and you’re back to the reversed right/left mouse buttons. The bottom two buttons are for switching the bumpers to mouse buttons. The bottom-left-hand button switches G bumper to Left mouse click, and the bottom-right-hand switches R bumper to Right mouse click.
So for example if you were playing an FPS and were using shotgun with the bottom triggers where the left trigger would be iron-site, and right trigger is to shoot. Then you pick up dual uzi’s. Now it gets confusing which button fires which. So you could hit the bottom two buttons in and then use the bumpers for each hands uzi, then if you change back to the shotgun use the triggers. Or if it’s only for a short while you could just reverse the triggers until you don’t need to dual-weld and then switch it back. It’s confusing to explain, but it works great if you need it. Keep in mind this can be done on the fly, since it’s all mechanically switched there is no software to deal with. /END
- Generic Xbox S controller (ebay $10)
- Generic SNES controller (ebay $3)
- Generic PC gamepad (PSX style) (ebay $4)
- iPazzport wired USB keyboard (ebay $16)
- Generic black “dolphin shape” wired USB trackball (ebay $16)
- Sony PS3 10′ controller extension cable (Wal-Mart $10)
- Logitech K120 USB keyboard (Wal-Mart $12)
- Targus 4-port USB hub (Wal-Mart $12)
- Mouse micro switches (ebay $5 for a ton of them)
- Rubber board mount pushbuttons (ebay $5)
- Square locking board mount pushbuttons (ebay $3)
- PCB board (Radio Shack $6)
- Small sheet of craft foam (Wal-Mart $2)
- Harvey’s Plumbers Epoxy Putty (Menards $5)
- Bondo Spot Putty (Wal-Mart $5)
- Hard drive cable. The solid wire kind. (just laying around)
- Red surface mount (SMT 0603) LED’s (ebay $2)
- 8-32 wood insert brass nut, and matching brass screw (Lowes)
- Spray Paint: Dupli-Color Automotive High-Build primer, Rust-Oleum textured black, Rust-Oleum textured white, Rust-Oleum gloss black for plastic (Autozone, and Wal-Mart, $5 each)
First I cut out and sanded all the components I needed from the PC and SNES controllers, iPazzport keyboard, and trackball. Then I cut out matching holes in the controller case. I didn’t do all this in one step as you can see in the pictures, it was a check-if-this-will-fit-as-you-go kind of process. All the components were then superglued to the shell. Then all the gaps were filled with plumbers epoxy and rough sanded smooth.
Next I had to cut, sand, superglue and epoxy screwposts in, along with matching button boards and holders for everything. Oy, what a pain that was. But it was nice to see everything fit and installed before paint, so I quite like this way of mounting stuff VS just hotglueing the heck out of everything. One benefit of making screwposts is you can fine tune the height of the buttons. That means you can set how loose or how tight you want the buttons to feel. Simply remove or add to the post until it’s right.
I used tact switches for the escape and enter buttons, just like the Xbox S controller had. The D-pad, bumpers, and triggers use mouse micro switches for that short travel clicky feel. All the other buttons use rubber dome “mushy” buttons. The same type buttons used on normal controllers. I used two rubber buttons per button on the PSX shoulder buttons (space, shift, ctrl, C now) since they are so wide. Now even if you only push one end of the button down it will still connect. It also gives it much better sturdy feel, unlike the center wobbly feel you get with one switch.
All the insides of the buttons were filled with epoxy putty, and sanded flat. This was to make them work with the much shorter buttons, as well as make them feel more sturdy than before.
I had an old Gravis gaming pad back in the 90’s that had a D-pad and a screw-in stick, and I loved that thing. So I wanted the same thing on this controller. To get the screw threads into the D-pad I used a brass threaded wall insert made for wood. First I drilled the center of the D-pad to have a starting hole, being careful not to remove the pivot point in the center. Then I cut down the insert to just under the height of the D-pad. Then I heated the insert with a lighter and screwed/melted it into the center of the D-pad. I also added superglue to the sidewalls and epoxy putty over the edges to make sure it was solid and strong. Next I had to make a matching analog stick piece. I took a matching brass screw and cut it to the length I needed, and cut notches into the screw head so it couldn’t break free and spin once in place. Then I hollowed out an analog stick, heated the screw and melted it into the stick. Then added a small amount of superglue and filled with epoxy putty. Now I had matching pieces.
The back cover for the thumb keyboard was made from scratch out of plastic from the Logitech keyboard. I used craft foam from wal-mart for inbetween the board and the plastic backing. This way it is pushed firmly up into place, and won’t damage the board. I ran out of screwposts to glue in, so I just screwed right into the epoxy putty while it was still curing and the screws made their own holes.
Once all that was done, the entire case got covered in spot putty to fill any small cracks or sanding scrapes. Then fine sanded smooth. Then came high-build automotive primer, sanding, primer, sanding, until the case was flawless.
I made the new cover for the memory card area from scratch out of acrylic. I heated it up and molded it to shape, then sanded the edges until it fit perfectly. I also came up with an easy way to cut out square shapes. To get the USB hole, I took a spare metal USB port, heated with a torch, then pushed it through and melted a perfect square right through. Much faster and easier than dremeling and sanding.
Next I put on several coats of paint. I used rust-oleum gloss black on the buttons, which after some testing I found to be immensely stronger and more durable than the Krylon paint I used on the first keyball controller. I used textured black on the back which is very similar to the finish on my Logitech G500 gaming mouse. The textured paint is tough and feels great. I really like it. I used textured white on the front. I used white so that they thumb keyboard would blend into the shell. Then it was just time to screw everything in. There were a few places where paint build up made a couple buttons stick, but a little bit of sanding and it was perfect. I anticipated that would happen, so I lightly drilled/sanded all the button holes before the final coat of paint. Had I not done that, a lot more would have been sticking.
The circuit boards had to be cut up quite a bit to fit. The iPazzport board originally had a crappy touchpad that was part of the upper circuit board. Fortunately, I found it could be cut off with only one trace needing to be reconnected (the “5” key). If you plugged in the board to a PC and ran your finger along the edge of the cut traces the mouse would move random places which was cool. I also had to make a cutout in the lower center of the board for the case screw post to go through, and then rewire those traces. I also changed the original orange backlighting LED’s on the ipazzport keyboard to red ones because the orange just looked bad. Plus everything I own for my PC uses red LED’s so I wanted it to match.
The mouse board got cut down and rewired to a fraction of the original size. During test fitting pieces I found the LED for the mouse stuck out quite a bit and was hitting the bottom of the case, so it needed to be moved inwards. I wondered if the plastic optical prism piece was really even needed as long as there was sufficient light from the LED. To find out, I drilled a hole through the optical plastic piece and stuck the LED through, so it was only a few millimeters from the track ball, but still illuminating it enough for the optical sensor. It worked perfectly! Love it when a problem is solved easily. It helps that chinese tech is so simple to work with. I also had to remake the scroll wheel using PCB and a paper clip. Worked great.
Then I traced the keys from keyboard plastic and wired the buttons to the circuit board. Then all the USB wires were connected to the USB hub.
You can see the D-pad board has different solder points in some of the pics. That is because originally I had rubber switches for the D-pad. Once I finished I found they didn’t work responsively for angled hits from the D-pad, only straight direct ones. So I took the board out and replaced them with mouse micro switches. I’m glad I did. They work so much better, and have a really great feel.
I did cheat in the end and use hot glue to secure the USB hub board in place, but that is the only thing that’s not connected with screws.
It works very well I’m happy to say! I have had no trouble coming up with a good controller layout for every game I have tried. Works well for navigating the web as well. All the issues I had with the first KeyBall are fixed on this. There are some things I may change around on the next one, but the general design works very well.