I’m quite pleased to announce that ever-popular Sony PS3 game controllers are now supported by current (rev.2.0) USB Host Library. Kristian Lauszus from TKJ Electronics developed a library to interface with Dualshock 3, as well as Move Navigation and Motion controllers via a Bluetooth dongle (only CSR-based ones are supported at the moment). This library has been merged into the main code and I will start maintaining it as soon as my Dualshock 3 arrives.
Sony PS3 controllers are advanced versions of ordinary HID joysticks. They can be interfaced via USB or Bluetooth, the buttons can be read as analog or digital and controller contains rumble motor which can be activated remotely to indicate a hit, for example. The controller also contains a gyroscope and accelerometers so it is possible to control a robot by simply waving and/or rotating the controller.
Kristian got his inspiration from Richard Ibbotson’s articles, as well as works by Tomoyuki Tanaka and others (full list can be found in PS3README file). His Wiki page gives implementation details, communication protocol, differences between controllers, as well as plenty of links to other sources of PS3 controller interfacing knowledge.
Kristian developed this library as a part of his Balancing robot project. The project is very well documented – if you are interested in robots, PID or remote control, please take a look. I also enjoyed watching this video presentation, give it a shot to see balancing robot in action.
- Wireless Xbox360 controller support for USB Host 2.0 library
- Bluetooth RFCOMM/SPP service support for USB Host 2.0 Library released!
- A documentation project for USB Host Library 2.0 has begun!
- Balanduino – Balancing Robot Kit on Kickstarter
- USB Host Shield library Version 2.0 released.
- USGlobalsat ND-100S GPS receiver works with USB Host library
- Google Open Accessory Interface for USB Host Shield Library 2.0 released
- Arduino 1.0-compatible USB Host Library released
- Andriod ADK-compatible USB Host Library release.
- PS3 and Wiimote Game Controllers on the Arduino Host Shield: Part 1