This is the story of how I crammed a WiiMote and Wii Nunchuck into an airsoft MP5.
Why do it?
While this kind of thing has been done before, they've always left something to be desired, like the implementation isn't seamless. I also didn't have one of my own, and I found the Wii Zapper to be complete rubbish:
The Zapper has no sights.
The Zapper has no stock, holding it in the air just feels weird.
The Zapper's fire button is B rather than Z, placing the trigger in the foregrip, normally held by your left hand.
After playing Ghost Squad for about five minutes I decided the Wii Zapper wasn’t up to scratch, and that's how this whole business began..
I've had an ICS airsoft MP5A5 Sub-machinegun knocking about in my airsoft collection for a while now. Unfortunately this particular gun was a Revision 1 model, and suffered from a range of mechanical issues. Despite several attempts to fix it, the little bastard had never worked correctly since day one, and I decided trying to turn it into a WiiMote couldn't do any harm!
I'm not one for diving in blind, so I planned out fairly precisely what I was going to do for the more tricky areas of construction.
Foregrip button placement
I decided to have the WiiMote buttons on the left side of the gun, keeping the “Nintendo layout” from the WiiMote itself. I also wanted the joystick from the nunchuck to be on the left side of the foregrip so I could use it with my thumb. On the right side would be just the nunchuck buttons, but I wanted them still to be accessible by the same hand, without having to change my grip on the gun.
I first needed to measure out where the buttons would go, and to do this I simply held the gun as normal and drew around my hand with a pencil. I repeated this multiple times until I was sure I had a sample of my “natural” hand placement on the foregrip. Once the button placement was laid out, I then simulated the height of the buttons and joystick by taping some small pieces of foam onto the foregrip. I got the height of the buttons from RS catalogue's spec sheets, and adjusted the placement until I could comfortably hold the gun and press the buttons at the same time.
I was a little concerned about the foregrip not having enough internal space for the multitude of buttons and the nunchuck PCB, so I fired up 3d Studio Max and modelled the foregrip with all these buttons (for which I had the specs from RS). Conveniently I had a half-finished MP5K model from a previous project, so all I needed to do was model the foregrip and buttons (pictured below).
To clarify the layout - the right hand side has the A Button on the tip of my index finger, while the Z and C buttons can be pressed individually by different parts of my middle finger. Power and Sync buttons are also on click switches, well out the way.
Inside the foregrip there was surprisingly enough room for the switches and nunchuck, however there are a couple of areas (circled in red) where components come very close to parts of the MP5 gas chamber upper assembly. These parts “touch” but don't actually intesect by more than 0.2mm. Conveniently this is well within my margin for error, so I decided to continue assuming they could be “forced” if there were any complications.
Disassemble Johnny 5
To disassemble an MP5 you must first release two locking pins at the rear of the gun. The lower receiver then slides out the back of the upper receiver.
To remove the foregrip you release a locking pin at the front of the gun, then tilt the foregrip down until it releases.
This is the only way these two parts can be removed and reassembled, so any changes I make must allow for this assembly method.
Pictured above are the two upper and low receivers separated. You can see the pot-metal gearbox connected to the lower receiver, as well as the brass airsoft barrel running through the middle of the upper receiver.
At the base of the lower receiver's grip is a base plate which can be unscrewed. Inside the grip is the motor for the airsoft gun, which can be disconnected and pulled out of the grip. We won't be needing the motor any more.
The fire selector must then be removed before the gearbox can be taken out of from the lower receiver. A small screw in the fire selector holds it together, so simply undo that screw and the fire selector can be separated and removed.
Deep inside the grip, below the motor, are two screws which connect the lower receiver to the gearbox. Once these two screws are removed, the gearbox can be removed from the lower receiver.
Pictured is an example of what you'll see inside a “Version 2” airsoft gearbox, suitable for MP5s and AR-15 style rifles. the gearbox can be opened by simply undoing the screws on the side, and the two half split apart.
Much of these gubbins will be removed, however we'll keep the trigger assembly and use the empty space where the gears were to house a solution for the fire selector.
For the upper receiver, a single screw just above the barrel lets you detach the front gas block and cocking handle assembly.
Only three more screws hold the receivers two halves togeather, after which the two half come apart easily.
As none of the previous pictures show how the WiiMote is to fit into the MP5, I've provided an illustration.
The PCB for the WiiMote fits almost perfectly between the two halfs of the MP5 where there are indentations in the side.
Unfortunately about 2mm of metal also needs to be removed to compeltely fit the WiiMote PCB correctly, so some extremely careful dremmeling will be required.
The cuts I had to make involved trimming a section from the inside of the upper receiver. Cutting by 2mm too far would result in the cut exiting the other side - not something we want.
To avoid mistakes I used some bright electircal tape to mark out what line I should be cutting, and repeatedly checked my cut with a ruler to ensure it was the correct depth and not too deep, without missing sections or leaving bumpy sections.
Gearbox, and fire selector
One of the key features I wanted was a working fire selector, toggleable by my thumb and wired to one of the WiiMote buttons. By using a pair of lever-arm switches I could toggle the firemode in games like Ghost Squad.
The gearbox would need modifications so that it could still slot into the upper receiver, a necessary element to the guns assembly, and I wanted to leave as much of the gearbox housing as I could to ensure a snug fit between it and both receivers.
With the areas for removal marked out on the gearbox, this left ample room for a fire selector solution.
I decided the easiest mechanism would be to attach a 3mm Bore Collar to the fire selector shaft, and use an extra-long bolt so that the collar would have an arm.
The arm would then pivot up and down inside the gearbox and make contact with a pair of micro lever-arm switches to change fire modes.
Springs would also be attached to the arm to provide a re-centering mechanism.
With all that in mind, it was time to start cutting out segments of gearbox I wouldn't need, and flatten those around where the fire selector needed to go.
Pictured right, my first attempt removed as little of the gearbox as possible to accomodate the WiiMote PCB (but later on I'd discover more would need to be removed). There are also markings for where the collars arm can reach, plus crosses to show where screws will be needed. Two pairs will hold the microswitches in place, which two more will anchor the re-centering springs.
My first mistake in the whole project was to be made when adding the microswitch screw holes. For head hole I marked the location on the gearbox as a cross, then used a punch to smack indents in these locations; the indents make it easier to drill the holes as it stops the drill bit “wandering” across the surface before it eventually bites into the metal.
After drilling the second hole for the first microswitch I discovered that I hadn't properly confirmed the location, and the hole was too far over! Thankfully it was just far enough out that I could drill a second hole and put in the thread.
Just to prove a point, mistake #2 showed up almost instantly. While tightening a screw for one of the micro switches, I tightened too far and cracked a chunk out of the microswitches case. Again, thankfully, the chunk taken out didn't impede the function of the switch, and the screw still held the microswitch in place.
Tightening your collar
After attaching the switches and anchors I tried to close the gearbox and attach the fire selector for the first time. It soon became abundantly clear that there is no way in hell the collar or spring mechanism were going to stay in place long enough for me to fit the fire selector rod. Let’s not forget that the way the gun goes togeather, the gearbox must be closed and attached to the lower receiver before the fire selector can be attached to the collar, which is inside the gearbox.
My soltuion to this problem would be to fabricate a “cover” for the collar; a plate of metal would sit ontop of the collar and hold it in place to one half of the gearbox, ensuring it stayed in position the entire time.
Four very short screws around the collar would ensure it stayed in place and didn't wander, while the spring anchors would hold the plate to the gearbox.
I fabricated the metal cover from one of those murderously sharp pieces of aluminium that cover the 5.5 inch drive bays on a new PC case.
It was only after creating the piece that I discovered the spring anchors interfere with the trigger mechanism! I had to modify the collar plate and relocate the spring anchor to somewhere else.
The final collar plate was mounted, switches wired up, and the trigger mechanism ready for the two half to be closed up.
One mistake I made and didn't spot however; when I moved the collar anchor further up, I didn't adjust the other anchor. The fire selector would now be slightly offset, biased towards the top microswitch. this turned out not to be a problem, but it is noticable.
Cracking open the WiiMote
There are guides all over the internet on how to open up the wiimote – a tri-wing screwdriver and a little determination, although what most guides neglect to mention are the difficult-as-fuck-to-remove clips at the front of both the WiiMote and nunchuck. The best way to deal with these clips is a good penknife and some leverage. Remember to point the blade away from you, and the top should be levered outwards or you'll cut your hand of..
I managed to get my WiiMote innards free with minimal damage to the casing, so I might turn it into WiiTorch or something like that, I don’t know (edit: this never happened).
The WiiMote itself posed no real threat, I would just be removing switches and adding cables all over the place. The nunchuck however needed to be attached to the foregrip inside the foregrip.
Cutting the Foregrip
My approach to cutting into the foregrip was to do as little as possible and double check everything. I used an electronic caliper and measured distances from the 3d design I had created earlier, and put indentations into the plastic for each button position.
Clamping the foregrip to my workbench and wedging a piece of wood between the left and right sides to dampen vibrations, I slowly drilled into the plastic with a small drill bit, and scaled up the hole with the next size bit each time. This reduced the effects of the drill bit biting into the plastic and wandering off course, keeping my hole fairly central.
Cutting out the hole for the analog stick was done in much the same way, however once I got up to the 10mm bit (the largest I had) it was time to crack out the dremel and a sanding attachment. In order to cut out a “perfect” circle, i measured the joystick opening from the original wiimote and then scored that fixed radius into the foregrip plastic. I then used tape to mark out the edges of this circle more obviously, and I would dremel up to the tape and then carefully refine the edge.
Once the rough circle had been sanded out, I used a fine sanding attachment to repeatedly go around the edge. I placed the detatched analog stick inside the hole and rotate it to its extremes, and looked for any edges which were not angled correctly. I also looked to see if any light was showing through between the analogue stick and the foregrip, and would sand down any high points until the entire circle met the joystick.
To hold the nunchuck PCB in place I had originally planned to use a series of threaded nylon bolts, and long nuts which could be extended to hold the item in place via friction. This seemed like a great idea in my head, but in practice it had several failings;
The legs needed to be attached before putting the PCB into the foregrip.
The legs needed to be extended once the PCB was in place. This is incredibly fiddly and frustrating.
The nylon bolts provided zero friction, and the whole thing would slide out of alignment unless done up tight.
Once done up tight, the joystick was under too much friction to use correcly.
With all these problems I decided that it wasn’t worth the hassle, and thus drilled and threaded another two holes into the foregrip. The bolts could then be run through these holes and into the assembly, holding the PCB in place. This worked way better than I was expecting, and made the nunchuck 100% usable and secure.
I glue-gunned the remaining loose threads in place, as the legs leading to the right hand side were not threaded into the foregrip body. This stopped them moving around when weight was placed on the joysick.
Pictured is one of the few views of the right hand side of the foregrip. This helps to illustrate how little space there was to play with.
Shortly after this picture was taken, while wiring up one of the red switches I accidentally overheated the switch with my soldering iron - the plastic body melted with the leg sliding up inside the switch, breaking it rather spectacularly.
Another was quickly ordered from RS, and all future switches were soldered with a heatsink (crocodile clip) attached.
Each switch was attached to two wires, and 5 wires were attached to the Nunchuck PCB itself. This lead to a total of 29 wires leading from the foregrip (pictured left). Each wire was labelled and ready to be attached to the WiiMote.
This picture actually represents a major cock-up in my wiring of the WiiMote; I'd used solid core wire, where each wire is approximately 1mm in diameter. This would end up being way too much wire, and way too inflexible to get into the MP5 upper receiver, and would all need to be replaced. But more on that later..
Hiding 2AA batteries in the MP5 was an amazingly simple thing to do. The magazine is a perfect size to locate an AA battery pack, and was easily wired up with a 9v style connector for ease of disconnecting the battery when not in use.
The original internal BB-feeder was cut in half, and a single small metal rod holds the entire assembly to the magazine.
The AA battery weight actually helped with the realism, giving the magazine a little extra weight.
Simply extending the WiiMote buttons via wires to elsewhere shouldn’t be that difficult, right?
Both the WiiMote IR-sensing Camera and the Nunchuck socket were painful items to remove; their tiny pins were easily desoldered, but neither of the larger mounting legs wanted to come loose. In the end I had to heat up the mounting legs while applying significant force to detach both items, which lead to burnt fingers and bent legs.
I was also tip-toeing around the camera itself, worried I'd overheat the delicate components, but there was really no option but to go for broke.
During the process of desolding the camera I must have waved my soldering iron too close to the speaker, as it proceeded to leap off the table and attach itself magnetically to the soldering iron, melting a hole the diaphram. Gutted.
While soldering wires onto where surface mounted componenets once were, I had another startling realisation; soldering onto flat surfaces is really hard.
My recommendation for soldering on surface mounts is to use plenty of flux. Then use even more flux. Then use lots of glue to make sure they don't peel off.
I had origionally intended not to desolder the flat buttons on the wiimote, but when one came off by accident I decided to remove all of them, as I could then solder the cables directly to the points on the board, rather than frankenstein them onto the legs.
During one of these I overheated the track causing it to raise up from the board. Immediately I was paranoid and gluegunned this bugger and all his friends down to the PCB.
I also had to relocate the WiiMote capacitor as it's onboard location was occupied by large pieces of metal in the MP5 Receiver.
I actually had to relocate this thing twice as my first attempt put it in an even worse location then where it started.
With all the wiimote cables now attached, the WiiMote was looking rather intimidating. It was about this time I had the realisation that all these solid-core wires were not going to fit in the Receiver.. but I would cross my fingers and that bridge when I assemble the gun.
Smile for the camera
In order to put off dealing with the new issue of all those cables I decided to get to work on making the camera assembly. After doin this all the components would be “ready” and I could test the mod before putting it all togeather, and tell me if I should continue to completion, give up, or look for splashed solder all over the PCB.
It was clear to me pretty quickly that there would not be enough room anywhere in the MP5 for the relatively bulky camera - it was far too big and square, so any place I tried to put it would be glaringly obvious or unsightly.
To this end I rummaged around in my draw of goodies and found a SOCOM type suppressor.
An airsoft suppressor is fairly simple in its design; it has an outer casing which attaches to your rifle via a 14mm counter-clockwise thread, and inside this casing are donut shaped foam inserts. My plan was to remove some of this foam and place the camera at the further forward position inside the supressor and this would give me ample space to work with.
My intention was to take the WiiMote camera and sandwich it between some more plate metal and the plastic IR filter which came with the WiiMote, using two bolts to secure the two together.
This was a good plan except as soon as I tried to drill into the IR filter it promptly split clean in half. Luckily one side was bigger than the other, and I could try again.
Pictured is the WiiMote camera assembly I devised - the lower half was supposed to attach to a piece of 14mm dowel, while the camera would be sandwiched up against the foam by two bolts.
With every other task complete on the road to getting the WiiMote back in working order it was high time I actually got on with the troublesome and angering soldering. The WiiMote camera proved to be an absolute bastard to solder, the combination of tiny legs in close proximity to eachother led me to much worrying about overheating the camera itself or accidentally snapping one of the legs clean off.
Once the camera was soldered securely I taped these thin wires to the 14mm dowel and soldered on longer, thicker cable. It's also worth mentioning that when labelling wires, 9 and 6 look a hell of a lot alike.
At this point I attached some connectors so parts of the mod could be connected up, in preparation for the next stage…
Almost scared of the result I plugged in the camera and battery onto the WiiMote. I shorted the power switch and the Wii blinked and turned on.
Shorting the “A” button the main screen came on. Looking good so far!
Waving the camera at the TV yielded little result. Dismay. Looking at the connector layout I soon realised I had confused two of my wires - trying to be a smartass and label them U V and W lead to some obvious confusion.
A quick disconnect and reboot, and a pointer showed up on screen, albeit way off in the corner.
Some (re)assembly required
In order to get the gun back togeather it required a hell of a lot more work then I had expected. Originally I expected it to take 48 hours, but this turned into almost two weeks.
The first and biggest problem was due to the sheer number of cables going through the receiver, as spotted earlier, was way too vast to close the gun.
Firstly the gearbox had to be modified to accomodate all the cables coming from the WiiMote - a section needed removing at the front to allow the cables to run through to the hop-up unit - also where the chamber would be on a real gun.
The hopup itself (not pictured) needed to be cut in half to make way for these cables also, however the hop-up was still required as it helped to secure the MP5's magazine in place.
Making further cuts to the gearbox would require stripping all the components, cleaning out the cuttings and reassembly. Ugh.
With all the wires connected and parts installed, it was now time to try putting everything together. First order of business was to figure out how long the wires really needed to be, trim them, and attach connectors for each.
I discovered I needed to take a 1cm square chunk out of the front of the receiver to allow the cables to fit through, and even this wasn't really enough room.
This was the first obvious indicator that something bad was about to happen, as next I would need to try fitting the wires into the foregrip.
Once I'd cut all the cables to length and added the connectors, it was abundantly clear how much of a squeeze it would be to make all the cables fit.
As soon as I attempted to attach the foregrip to the receiver I remembered how little clearance there was in the original design between the switches and the receiver. There was absolutely no way this was going to fit with solid core cables.
There were also some other problems; the camera cables were too long, fat and inflexible, and the power cable was too long. Obviously I had a lot of tweaking and resolding to do before this gun could be assembled.
I sat and thought long and hard about what I was about to do. Then I got up, went to Maplins and bought some green 10-strand 0.1mm wire, and set about rewiring all the switches and connectors.
This meant unscrewing each switch, cutting away the heat wrap, unsoldering the connector, unsoldering the switch, cutting cable, marking cable, solding cable to the switch, soldering connectors to the cable, and adding heat wrap.. 24 times.
I chose not to try and remove the nuchuck and instead simply cut the solid core wires in half and attached flexible wire to that. This took all day, but on the plus side my soldering this time around was top-notch.
Finally my work was complete, and the foregrip now sat with loose cables dangling out the end. Changing from solid core to multi-core wire felt like two thirds of the cabling has been removed.
Putting it all together
As you may remember from earlier, the lower receiver had to be fully assembled before the fire selector could be attached to the collar inside the gearbox.
Pictured is my solution to this problem - the collar would be held, untightened, with an alan key in the gearbox during assembly. The fire selector (which I'm holding in the picture) could then be inserted into the body, and the collar tightened with the alan key.
I ran into some trouble at this point - the thread on the collar, and what the anchor springs were attached to, would sometimes catch on the springs and cause them to ping off inside the gearbox. My solution was to once again disassemble everything, then dremel the thread off the end of the collar, making it smoother and giving the spring hoops nothing to catch on.
Finally all the problems were solved, and the pieces were ready to be assembled.
Both halves of the upper receiver were attached (two screws),
The gas block assembly and suppressor (with camera) were attached to the upper (one screw, 5 connectors).
The lower was then attached to the upper receiver (2 locking pins, 3 connectors),
Then finally the foregrip slid onto the upper/front assembly (one locking pin, a biazillion connectors).
With the gun assembled I took it to the living room and tried to turn it on. The follow is a quick catalogue of mistakes that needed to be fixed;
The power cable from the magazine had an additional connector between the 9v connector and the WiiMote PCB. This was to prevent an accidental tug on the magazine putting force on the cable and risking the PCB connection being torn off. Unfortunately this intermediate connector kept falling off for no reason, so I removed it from the equation entirely.
The “power” and “a” button was swapped around thanks to my markings on the connectors being rubbed off.
The three nunchuck connectors were marked “UVW”, and I ended up connecting them all incorrectly. U and V look a lot alike when the pen starts rubbing off, and W hardly fits on a 1x2mm space.
For whatever reason the MP5 would not power on at all. I immediately disconnected the gearbox (it's metal and it's very close to the PCB) and tried it again without that component, and the gun booted up no problem.
For a moment I considered disassembling the gun, figuring out where the problem lie, and taking the gearbox back to the garage and dremmeling off the offending item.. however a moment later I had a much, much better idea.
Cover the whole thing in a layer of electircal tape. For electrical tape is awesome.
Reassembled, connected and eagerly switched on, the gun came online and worked like a charm.
Of course I quickly discovered I could mount a red dot scope on the top of the gun, which gave me a shocking advantage in Ghost Squad.
I did encounter one problem when reconfiguring the gun - the sensor bar needed to be below the TV to keep any kind of accuracy. This is likely due to some cockup in the placement of the camera within the suppressor, but as the gun was working I didn't want to fiddle with it and find out why.
Even with the airsoft innars mostly removed, the MP5 isn't a light piece of equipment. I can get through maybe two levels of ghost squad before my arms start to get tired, which I mostly blame on the fore-weight of the suppressor.
I was surprised to get this finished with so few hiccups. Three dremmel disks were lost to the cause, one of which shattered into shribbons. Always wear eye protection!
The MP5 Wiimote an is incredibly cool piece of kit for playing games - really nothing beats the weight and feel of an imitation firearm. I also hope that my inclusion of the nunchuck means I'll have “future proofed” the gun for future games.
I also need a bigger room to play in, as the MP5 Wiimote is far longer than the Wii Zapper.
Build Time : 23rd January 2008 to 18th February 2008.
Cost : £79.50 (not including things I had, like the MP5 itself!).