The BTD.cpp, BTD.h, SPP.cpp, SPP.h, PS3BT.cpp, PS3BT.h, PS3USB.cpp, PS3USB.h, XBOXUSB.cpp, and XBOXUSB.h is developed by Kristian Lauszus For more information regarding the PS3 protocol etc. visit my blog at: http://blog.tkjelectronics.dk/ or send me an email at kristianl at tkjelectronics dot dk. You could also visit the official wiki: https://github.com/TKJElectronics/USB_Host_Shield_2.0/wiki for information. All three PS3 Controllers are supported (Dualshock 3-, Navigation-, and Motioncontroller). They communicate with the Arduino via Bluetooth or USB using the USB Host Shield from http://www.circuitsathome.com/ A special thanks go to the following people: "Richard Ibbotson" who made this excellent guide: http://www.circuitsathome.com/mcu/ps3-and-wiimote-game-controllers-on-the-arduino-host-shield-part-1 - It inspired me to get starting and had a lot of good information for the USB communication "Tomoyuki Tanaka" for releasing his code for the Arduino USB Host shield connected to the wiimote: http://www.circuitsathome.com/mcu/rc-car-controlled-by-wii-remote-on-arduino - It helped me a lot to see the structure of the bluetooth communication Also I would like to thank all the people behind these sites about the Motion controller: http://thp.io/2010/psmove/ http://www.copenhagengamecollective.org/unimove/ https://github.com/thp/psmoveapi http://code.google.com/p/moveonpc/ All the information regarding the Xbox 360 controller protocol are form these two sites: http://tattiebogle.net/index.php/ProjectRoot/Xbox360Controller/UsbInfo http://pingus.seul.org/~grumbel/xboxdrv/ To implement the RFCOMM protocol I used a bluetooth sniffing tool called PacketLogger developed by Apple. It enables me to see the bluetooth communication between my Mac and any device. And at last I would like to thank Oleg from http://www.circuitsathome.com/ for making such an awesome shield!