Kodi 17 - xbox 360 controller problems

  Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
terrestrial Offline
Junior Member
Posts: 22
Joined: Aug 2009
Reputation: 0
Location: The Netherlands
Post: #1
I have been using a Asrock ion 330 for years now with a Xbox 360 controller. At first i ran ubuntu with xbmc installed and a special driver for the controller. Later i ran KodiUbuntu and after that openelec and libreelec which both had support for the controller. I only had to change the keymap settings when updating to the latest kodi 16.x version and that's what i'm still running and it's fine.

Because my asrock ion 330 is almost 9 years old i've been thinking to replace it with a Asrock Beebox-S 7100 (kabylake) so i would be able to play HEVC and 4K but i need the controller support!

So before i go ahead and spend 500 euro's on a asrock beebox i decided to test first with my HP Core i3 Skylake laptop just to see how good or bad kodi 17 works and what to expect because usually when you update there is alot of problems.

So at first i tried the Windows 10 kodi 17 version from the windows store. It does not seem to be super stable but plays 4K nicely and the xbox 360 controller gets reconized immediately and works, but when i tried to put in my own keymap.xml that does not work!! I put it in the right folder but it does not seem to read the file. It's the same keymap i have in my libreelec. Does it need to be different for windows?

For the record, i don't want to run KODI on windows 10 anyways because i don't like the spying but just for test it's fine.

So secondly i downloaded libreelec 8.x and "installed" on a USB stick, not my laptop's SSD. But when i boot it... it reconizes the controller but it does not work!! it says. Do you want to configure your controller? So i'm wondering does librelec 8.x support xbox 360 controllers ? I also put in my own keymap.xml but nothing changes... the xbox 360 controller just does well nothing. The light on the controller ring burns but that's about it. Any ideas ?

I also tried openelec.. but that does not fully boot for some reason.

Point is...i wanna make sure i can get the xbox 360 controller to work before i order a new box.
(This post was last modified: 2017-04-20 17:31 by terrestrial.)
find quote
wsnipex Offline
Team-Kodi
Posts: 6,433
Joined: Jun 2011
Reputation: 166
Post: #2
Kodi 17 has a completely rewritten input and joystick handling, so old keymap likely won't work anymore.
BUT you can configure the controller in the kodi GUI
find quote
terrestrial Offline
Junior Member
Posts: 22
Joined: Aug 2009
Reputation: 0
Location: The Netherlands
Post: #3
Yeah i noticed that but that only seems to work on windows. On Libreelec the controller doesn't do anything anymore. (any ideas on how to fix this?)

And what should i do with the keymap then? Is there any documentation specific for kodi 17 on how to adjust it and make it work again.

Basicly if i order a asrock beebox i'm obligated to use kodi 17 because i don't think kodi 16 fully supports all the hardware and then if my controller doesn't work in kodi 17 well forget the hardware upgrade because i need my xbox 360 controller to fully work.
find quote
wsnipex Offline
Team-Kodi
Posts: 6,433
Joined: Jun 2011
Reputation: 166
Post: #4
Dunno about LE, but on ubuntu controllers work perfectly fine:
1.) make sure kodi-peripheral-joystick is installed
2.) go to settings -> addons -> my addons -> Peripherals -> Joystick and enable it
3.) settings -> System -> Input -> Configure Controllers

LE should work very similarly
(This post was last modified: 2017-04-21 08:20 by wsnipex.)
find quote
terrestrial Offline
Junior Member
Posts: 22
Joined: Aug 2009
Reputation: 0
Location: The Netherlands
Post: #5
Unfortunately it doesn't work so i made a post at the libreelec forum.. just hoping they will solve this bug.

But that still leaves the keymap.xml... it's the support for keymaps really gone in kodi 17 ?
(This post was last modified: 2017-04-22 14:03 by terrestrial.)
find quote
Derek Offline
Posting Freak
Posts: 1,730
Joined: Aug 2009
Reputation: 23
Location: Bonnie Scotland
Post: #6
as far as i know no its not gone?
find quote
terrestrial Offline
Junior Member
Posts: 22
Joined: Aug 2009
Reputation: 0
Location: The Netherlands
Post: #7
Ok so i bought my new Asrock Beebox-S 7100 and at first tried to run LibreElec 7.0.3 on there but due to the very new hardware i got a "Failed to run X server" or something. So i'm obligated to run The newest openelec/librelec with kodi 17 it seems.

So now i installed OpenElec 8.0.2 And the Xbox 360 controller actually does something. Yeah but i still have the problem that my own keymap does not work anymore so the controls are not what i want. What am i suppose to do to make this work?

It looks like kodi makes some totally different XML file in

//Userdata/addon_data/peripheral.joystick/buttonmaps/xml/Linux/Microsoft_X-Box_360_pad_11b_8a.xml

<?xml version="1.0"?>
-<buttonmap>
-<device axiscount="8" buttoncount="11" provider="linux" name="Microsoft X-Box 360 pad">
-<configuration>
<axis range="2" center="-1" index="2"/>
<axis range="2" center="-1" index="5"/>
</configuration>
-<controller id="game.controller.default">
<feature name="a" button="0"/>
<feature name="b" button="1"/>
<feature name="back" button="6"/>
<feature name="down" axis="+7"/>
<feature name="guide" button="8"/>
<feature name="left" axis="-6"/>
<feature name="leftbumper" button="4"/>
-<feature name="leftstick">
<up axis="-1"/>
<down axis="+1"/>
<right axis="+0"/>
<left axis="-0"/>
</feature>
<feature name="leftthumb" button="9"/>
<feature name="lefttrigger" axis="+2"/>
<feature name="right" axis="+6"/>
<feature name="rightbumper" button="5"/>
-<feature name="rightstick">
<up axis="-4"/>
<down axis="+4"/>
<right axis="+3"/>
<left axis="-3"/>
</feature>
<feature name="rightthumb" button="10"/>
<feature name="righttrigger" axis="+5"/>
<feature name="start" button="7"/>
<feature name="up" axis="-7"/>
<feature name="x" button="2"/>
<feature name="y" button="3"/>
</controller>
</device>
</buttonmap>


I put my own keymap in //Userdata/Keymaps but it totally ignores it and it also looks different... i cannot paste it here completely but here is a part of it.. so you get the idea.

-<PlayerControls>
-<joystick name="Controller (XBOX 360 For Windows)">
<altname>Afterglow Gamepad for Xbox 360 (Controller)</altname>
<altname>Controller (Gamepad F310)</altname>
<altname>Controller (Gamepad for Xbox 360)</altname>
<altname>Controller (Rumble Gamepad F510)</altname>
<altname>Controller (Wireless Gamepad F710)</altname>
<altname>Controller (Xbox 360 Wireless Receiver for Windows)</altname>
<altname>Controller (Xbox wireless receiver for windows)</altname>
<altname>Controller (XBOX360 GAMEPAD)</altname>
<altname>Controller (Batarang wired controller (XBOX))</altname>
<altname>Wireless Gamepad F710 (Controller)</altname>
<altname>XBOX 360 For Windows</altname>
<altname>XBOX 360 For Windows (Controller)</altname>
<altname>Xbox 360 Wireless Controller</altname>
<altname>Xbox Receiver for Windows (Wireless Controller)</altname>
<altname>Xbox wireless receiver for windows (Controller)</altname>
<altname>Gamepad F310 (Controller)</altname>
<altname>Razer Sabertooth Elite (Controller)</altname>
<altname>Controller (XBOX One For Windows)</altname>
<button id="3">Close</button>
<button id="8">Close</button>
<button id="9">Close</button>
<button id="10">Close</button>
</joystick>
-<joystick name="Microsoft X-Box 360 pad">
<altname>BigBen Interactive XBOX 360 Controller</altname>
<altname>Generic X-Box pad</altname>
<altname>Logitech Chillstream Controller</altname>
<altname>Mad Catz Wired Xbox 360 Controller</altname>
<altname>Mad Catz Wired Xbox 360 Controller (SFIV)</altname>
<altname>Pelican 'TSZ' Wired Xbox 360 Controller</altname>
<altname>Pelican PL-3601 'TSZ' Wired Xbox 360 Controller</altname>
<altname>Xbox 360 Wireless Receiver</altname>
<altname>Xbox 360 Wireless Receiver (XBOX)</altname>
<altname>Razer Sabertooth</altname>
<button id="3">Close</button>
<button id="8">Close</button>
<button id="10">Close</button>
<button id="11">Close</button>
</joystick>
</PlayerControls>
-<Visualisation>
-<joystick name="Controller (XBOX 360 For Windows)">
<altname>Afterglow Gamepad for Xbox 360 (Controller)</altname>
<altname>Controller (Gamepad F310)</altname>
<altname>Controller (Gamepad for Xbox 360)</altname>
<altname>Controller (Rumble Gamepad F510)</altname>
<altname>Controller (Wireless Gamepad F710)</altname>
<altname>Controller (Xbox 360 Wireless Receiver for Windows)</altname>
<altname>Controller (Xbox wireless receiver for windows)</altname>
<altname>Controller (XBOX360 GAMEPAD)</altname>
<altname>Controller (Batarang wired controller (XBOX))</altname>
<altname>Wireless Gamepad F710 (Controller)</altname>
<altname>XBOX 360 For Windows</altname>
<altname>XBOX 360 For Windows (Controller)</altname>
<altname>Xbox 360 Wireless Controller</altname>
<altname>Xbox Receiver for Windows (Wireless Controller)</altname>
<altname>Xbox wireless receiver for windows (Controller)</altname>
<altname>Gamepad F310 (Controller)</altname>
<altname>Razer Sabertooth Elite (Controller)</altname>
<altname>Controller (XBOX One For Windows)</altname>
<button id="1">Pause</button>
<button id="2">Stop</button>
<button id="3">ActivateWindow(MusicOSD)</button>
<button id="5">ActivateWindow(VisualisationPresetList)</button>
<button id="6">Info</button>
<button id="10">ActivateWindow(MusicOSD)</button>
<button id="11">SkipNext</button>
<button id="12">SkipPrevious</button>
<button id="13">PreviousPreset</button>
<button id="14">NextPreset</button>
<axis id="3" limit="+1">AnalogRewind</axis>
<axis id="3" limit="-1">AnalogFastForward</axis>
<hat id="1" position="up">SkipNext</hat>
<hat id="1" position="down">SkipPrevious</hat>
<hat id="1" position="left">PreviousPreset</hat>
<hat id="1" position="right">NextPreset</hat>
</joystick>
-<joystick name="Microsoft X-Box 360 pad">
<altname>BigBen Interactive XBOX 360 Controller</altname>
<altname>Generic X-Box pad</altname>
<altname>Logitech Chillstream Controller</altname>
<altname>Mad Catz Wired Xbox 360 Controller</altname>
<altname>Mad Catz Wired Xbox 360 Controller (SFIV)</altname>
<altname>Pelican 'TSZ' Wired Xbox 360 Controller</altname>
<altname>Pelican PL-3601 'TSZ' Wired Xbox 360 Controller</altname>
<altname>Xbox 360 Wireless Receiver</altname>
<altname>Xbox 360 Wireless Receiver (XBOX)</altname>
<altname>Razer Sabertooth</altname>
<button id="1">Pause</button>
<button id="2">Stop</button>
<button id="3">ActivateWindow(MusicOSD)</button>
<button id="5">ActivateWindow(VisualisationPresetList)</button>
<button id="6">Info</button>
<button id="11">ActivateWindow(MusicOSD)</button>
<button id="12">PreviousPreset</button>
<button id="13">NextPreset</button>
<button id="14">SkipPrevious</button>
<button id="15">SkipNext</button>
<axis id="3">AnalogRewind</axis>
<axis id="6">AnalogFastForward</axis>
<hat id="1" position="up">SkipNext</hat>
<hat id="1" position="down">SkipPrevious</hat>
<hat id="1" position="left">PreviousPreset</hat>
<hat id="1" position="right">NextPreset</hat>
</joystick>
</Visualisation>


For example i have it like when you press the button Y on the controller it resizes or zooms the picture. The Right Shoulder button gets me the Video/Audio Information and so on.

So can someone help me to get this working again?
(This post was last modified: 2017-04-29 15:29 by terrestrial.)
find quote