Do PS3 controllers use SPP to send the state of the buttons?
I did something similar with the original Xbox controller. That used a "proprietary" USB connection. It was USB 1.1 plus a fifth wire that was used as an identifier or something. I just ignored it. The USB just sent HID packets which were easy to interpret.

The PS3 controller seems very similar but looks to use just standard USB communicating in HID (Human Interface Device) format or Bluetooth communicating over HCI (Host Controller Interface) and again sending HID formatted commands. So you can connect the PS3 controller directly over USB to the Arduino Host Shield or connect over Bluetooth using a Bluetooth dongle.

This article gives a detailed overview of both types of connections including links to the various standards and LGPL source code for you to try. Here is another article where the USB section links back to the first article. But the Bluetooth section gives a quick view of the HCI packet format and a step by step on how to pair with it.