Forums > MaxMSP

PS3 Dualshock 3 / Sixaxis problem

March 3, 2011 | 10:54 pm

Hi all,

I’m using a Dualshock 3 to generate a series of MIDI messages to send to any device (in this case a Yamaha Disklavier – mmmm) and I’ve been trying to develop the patch a little further.

I’m polling the data with the [hi] object with the pad just hooked up via usb. Joysticks control pitch/velocity/chord spacing/scale size etc. It’s fairly simple, but when hooked up to the piano, it’s actually fairly expressive.

The buttons on the PS3 are supposedly pressure sensitive, yet they all give either 1 or 0 messages. What am I getting wrong?

Also, does anyone have any tips for connecting via bluetooth? Bluetooth Setup Assistant doesn’t seem to find the controller. FURTHERMORE! I’d love to get sixaxis working, but it probably requires a driver…

Patch attached, though it’s pretty messy, inefficient and embarrassingly amateur.

Also, I’m running OSX Leopard.

===
Link to relevant video, if anyone’s interested:

http://www.youtube.com/watch?v=lId4GbakCgw

Attachments:
  1. ps3.maxpat

March 4, 2011 | 1:55 am

I think only L2 and R2 are pressure sensitive perhaps.
All success


March 4, 2011 | 11:40 pm

Apparently they all are, and in any case the L2/R2 buttons still only seem to output a binary state.

It’s a mystery – I can only imagine that analog data is transmitted in some other way to the digital? Though I can’t imagine how or why, even though my knowledge of this sort of thing is minimal at best…


July 17, 2011 | 6:26 pm

Hi,
Sorry, I wonder – did you managed to get the 10-bit precision from the analogue sticks of the DualShock3?


July 17, 2011 | 7:22 pm

Hi thmsbsh

I guess it has to do with how the driver is programmed

what drivers are you using?

it has been a while since I did this but I seem to remember only getting intigers (0/1) from the buttons (except for the trigger buttons) using this driver: http://www.hardcoreware.net/how-to-playstation-3-controller-64-bit-windows-7-vista/

if you need extra analog buttons though you could solder pressure sensors to the input from the analog sticks – that would give you four pressure sensitive buttons

http://www.sparkfun.com/products/9375


July 18, 2011 | 3:25 pm

Hi edsonedge, I’m not sure if you’re addressing my question but I guess you might be since mine is recent.

I’m on a mac so I was hoping to pair it without a driver.

I believe that if the analogue stick was giving you 0 to 255 then it’s getting 8 bit. If you were getting 0 to 1023 then it was the full 10 bit accuracy.


July 18, 2011 | 4:07 pm

@letraset

No sorry – I was addressing thmsbsh

I seem to remember it being 8 bit


July 18, 2011 | 7:46 pm

OK thanks.


July 18, 2011 | 10:14 pm

Hello,
Actually its true almost all the buttons are pressure sensors, the only problem is that the max "hi" object doesn’t see all the informations…
the only workaround is to use quartz composer to open the hid device and then send the info to max thru osc
:)


July 20, 2011 | 10:53 am

Cool – thanks freeka

makes me wonder if one can build a 16 pressure sensor sampler controller – using the sixacis as a single board computer and soldering pressure sensors to the buttons.

pressure sensors are easy to make: http://www.instructables.com/id/Conductive-Thread-Pressure-Sensor/


July 20, 2011 | 4:32 pm

Hey,
i actually did work on it a bit:

http://www.steim.org/projectblog/?p=1823

the pressure sensors part was tricky, as the sony sensors give really weird values in term of resistance, which wasn’t flexible…
you have to add to that all the pressure/button are on a flex board and the connection with the main board isn’t strong and there is not really any good point to solder your own sensor.

conclusion: fun in perspective if you have time to spend on it. if not, expect loosing your girlfriend if you got one b-)


July 20, 2011 | 4:41 pm

Oh allright

then Ill rather get a Make kit


July 20, 2011 | 4:58 pm

Depend what you want to achieve, FIO + maxuino is a good thing to look at !


Viewing 13 posts - 1 through 13 (of 13 total)