So this is my first project. Though I am not an avid gamer, I do have an xbox360 and enjoy playing FPS games. I recently got an arduino and I'm loving it. I got to thinking that there is no real motion controller for FPS games (that I know of) so I decided to make one.
So what it does:
-Collects IR point locations (up to 4) from the Wii IR camera, calculates the location of said point relative to a zero'd value. Maps this value to a PWM value through a RC filter in order to control the right analog stick - the analog stick on the stock of the airsoft gun overrides the IR camera when the switch below the stock is flipped for menu navigation.
-Wii nunchuck analog stick is used for the right analog stick control similarly to above (RC filter and whatnot)
-AXBY buttons, plus the left trigger, right and left stick click are using two analog pins on the arduino.
-Two buttons from nunchuck are also in use
-Dpad and select/start/xbox button are all hardwired to the controller inside as they rarely are used in FPS games.
-Each button pad on the actual xbox controller within is controlled by the arduino (with the exception of the hardwired buttons and the right trigger)
-Each pressable button/switch is programmed to control any of the players actions.
-Multiple control profiles are able to be selected before startup using the buttons
-There is a program button on the trigger guard which allows you to control when to begin the program, and also to modify the control profile in game.
-Force feedback (rumble motors) are installed still
To use:
1) Turn on (plug it in as of right now)
2) turn on controller within (middle button on stock-the xbox button)
3)press the program button to tell the arduino that the controller is linked
4) select your control profile
5)Play
5a)if you want to change the profile mid game hold the program button for 3 seconds, then press AXBY or any of the other buttons which are mapped to a profile in the software
5b)to reset the IR zero points simply click the program button briefly
I had a lot of fun building this...although there were many obstacles overcome during the process.












If there is people who wants the code and/or schematics, i will provide them via email.
I'm also going to make a little video shortly to show the operation of the controller.
Thanks for looking.
Shawn