I finally managed to make the PS3 controller function with the USB Host controller v2.4 through I2C
http://www.hobbytronics.co.uk/ps3-controller-bluetooth
The issue is that the Ultratronics pro v1.0 board is an Arduino Due in disguise. This PS3 controller functioned normally on my Arduino mega but failed on the Due.
The first mistake seems to be that I used the 2x4 pin headers I2C on the Ultratronics board. Only later I realized that there was another one on the analog 2x6 pins.
It is not marked on the board only to be found on its documentation.
However the story is incomplete since I did try these pins and I had no working PS3
Temporarily I have stuck them into the header (hidden in the blue plastic so they don't cause shortcuits)
I also had a 0.5 second response time when I pressed the controller and received the command but that was resolved by hooking it up to a USB to serial adapter, (Rx to Tx and Tx to Rx) and send the command "SERIAL OFF".
The lagging was probably because of the 9600 baud data transmission. It was sending the data both to the Serial and the I2C.
Still one mystery left that only seems to exist when I use this USB Hub controller. The code that pulls the I2C data may cause hangs of the ultrasonics board. It is unclear because without the controller it appears to function normally.
To be resolved....
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.