2014-05-29, 09:43
So kernel updates still do disable the steamos-xpad driver. Also using the stock xpad driver the controller is usable in xbmc immediately after turining it on (although it goes nuts until I press a button), unlike with the steamos driver. Not sure why and Ill wait till the driver is mainlined before digging deeper. Unfortunately it looks like the driver isnt in 3.15rc6 For now I have a hackish workaround - a udev rule to disable/enable xbmcs joystick support via a udev rule and jsonrpc (when a js* device is connected that uses the xpad driver) which gets the controller with steamos-xpad wrking without restaring xbmc. Enablng/disabling gamepad support seems to stop having an effect after a few connect/disconnects but that shouldnt really pose a problem if youre quitting xbmc when running steam. You need to enable jsonrpc in xbmc + modify the ip address, port and script location to suit.
/etc/udev/rules.d/99-joysticks.rules
xbmc-xbox360-pad-fix.sh
Make xbmc-xbox360-pad-fix.sh executable with the chmod +x command.
/etc/udev/rules.d/99-joysticks.rules
Code:
ACTION=="add", KERNEL=="js*", DRIVERS=="xpad", RUN+="/usr/bin/.scripts/xbmc-xbox360-pad-fix.sh"
xbmc-xbox360-pad-fix.sh
Code:
#!/bin/bash
curl -v -H "Content-type: application/json" -X POST -d '{"jsonrpc":"2.0","method":"Settings.SetSettingValue", "params":{"setting":"input.enablejoystick","value":false},"id":1}' http://localhost:9191/jsonrpc
sleep 1
curl -v -H "Content-type: application/json" -X POST -d '{"jsonrpc":"2.0","method":"Settings.SetSettingValue", "params":{"setting":"input.enablejoystick","value":true},"id":1}' http://localhost:9191/jsonrpc
Make xbmc-xbox360-pad-fix.sh executable with the chmod +x command.