FIXED: Joystick CHOP with native MacOS Sequoia support does not read all buttons

Tested on:

  • Touchdesigner 2023.11880
  • MacOS Sequoia 15.1.1
  • Controller: XBOX Wireless Controller Model 1914

Context:
Since MacOS has now native bluetooth gamecontroller support (we waited long for that one, didn’t we?) i thought i give it a shot in Touchdesigner. I connected my controller via bluetooth to my macbook (it shows in the preferences as connected gamecontroller). Then i opened a fresh Touchdesigner project and created a joystick CHOP, selected “Xbox Wireless Controller” from the Joystick Source and started hammering all the buttons.

expected behaviour:
Joystick CHOP should return values for all buttons/sticks

observed behaviour:
Joystick CHOP does only react to the following, with a strange mapping:

  • stick left: leftright mapped to xaxis, updown mapped to yaxis
  • stick right: leftright mapped to zaxis, updown mapped to zrot
  • A = b1
  • X = b4
  • Y = b5
  • B = b2
  • cross: leftright mapped to p1_X, updown mapped tp p1_Y

All other buttons & sliders don’t return values, which is not expected behaviour. Mapping could be fixed easily ofc…

Any ideas how to track this down?
Thank you so much!

Hello @boinappi

Thanks for the report.

This will be investigated.

Best,
Michel

Nice! Feel free to reach out if you need any additional information…

I am also experiencing this on:

  • Touchdesigner 2023.12120
  • MacOS Monterey 12.7.5
  • Controller: XBOX Wireless Controller Model 1914

hey @slickobamba

MacOS 12.7 doesn’t support Xbox controller right out of the box right? so which driver did you download to use the controller?

hey @boinappi

We’re looking into the issue. In the meantime, could you try increasing the length of the Button Array parameter to say b[1-20] or so. It is possible that some buttons maybe getting mapped to higher channel indices.

Thanks,
Varad

Nice catch @varad!
By reading buttons 1-20 i could identify the following buttons:

  • stick push left → b14
  • stick push right → b15
  • LB → b7
  • RB → b8
  • Window button → b11
  • Burger button → b12
  • XBOX button → b13

Now there are only the following missing:

  • Sliders LT and RT
  • The small middle button with “file upload” (or so) icon - mb it’s reserved for XBOX specific behaviour

That’s great!
We’re looking into the behaviour for the LR triggers

Thanks,
Varad

Hey @boinappi,

The reason that the xbox series S controller LR triggers are not working on macOS is that the driver is mapping those triggers to new parameters that the Joystick CHOP currently does not handle. We are discussing how to incorporate this new data into the CHOP.

Thanks,
Varad

This will be fixed in the next official 2023.10000 release

Thanks,
Varad

1 Like

Hey @varad,
these are great news! Thanks for the quick fix!
I’ll mark this as solved.

boinappi