RetroPlayer Nvidia Shield controller support
#1
Installed the RetroPlayer 18 beta2 2018-09-14 build on a new Nvidia Shield 2017, and having problems getting the controllers to work in emulator games. It seems the input from the controller is being locked to Kodi, and not working in the emulator. I can use it to navigate the menus for configuring controllers and such after launching a game, but it doesn't work for controlling the game. I have tried remapping the controls using the gui, and still no go. 2048 doesn't work either, but oddly Mr Boom seems to work (at least until it crashes). When in an emulator game, or 2048, hitting the B button takes me back to Kodi with the game running in the kodi background process that I can rejoin by hitting B again. 

RetroArch works outside of Kodi just fine though. 

Any help is appreciated.
Reply
#2
I also had a similar problem with a PS4 controller connected to my Android TV. Controller works for Kodi, but not for emulators. Almost like I need to disable it for Kodi before it will work in the Emulators.
Reply
#3
Same here, running on Nvidia shield TV as well, with 8bitdo sf30pro controller connected to it via Bluetooth. Retroarch and all other emus running just fine, Kodi runs fine with the controller, Mr. boom and other integrated games run fine as well, controller stops taking input when launching any emulator game (besides the return to Kodi shortcut). Iwill try to see if I can find something in the log to post here.
Reply
#4
would you guys be so kind and share the button maps from your Android devices? See https://forum.kodi.tv/showthread.php?tid=335815
Reply
#5
<?xml version="1.0" ?>
<buttonmap>
    <device name="NVIDIA Corporation NVIDIA Controller v01.04" provider="android" vid="0955" pid="7214" buttoncount="18" axiscount="8">
        <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="left" axis="-6" />
            <feature name="leftbumper" button="12" />
            <feature name="leftstick">
                <up axis="-1" />
                <down axis="+1" />
                <right axis="+0" />
                <left axis="-0" />
            </feature>
            <feature name="leftthumb" button="16" />
            <feature name="lefttrigger" axis="+5" />
            <feature name="right" axis="+6" />
            <feature name="rightbumper" button="13" />
            <feature name="rightstick">
                <up axis="-3" />
                <down axis="+3" />
                <right axis="+2" />
                <left axis="-2" />
            </feature>
            <feature name="rightthumb" button="17" />
            <feature name="righttrigger" axis="+4" />
            <feature name="start" button="11" />
            <feature name="up" axis="-7" />
            <feature name="x" button="3" />
            <feature name="y" button="4" />
        </controller>
    </device>
</buttonmap>
Reply
#6
My controller works just fine for Kodi, it does not however work for emulators. It seems that after going into the emulator, the controller is still bound to Kodi, and the commands from the controller are sent to the Kodi interface, and not the Emulator. This is true before and after configuring the individual controllers on the emulators from within the gui.
Reply
#7
(2018-09-25, 08:44)aesop999 Wrote: My controller works just fine for Kodi, it does not however work for emulators. It seems that after going into the emulator, the controller is still bound to Kodi, and the commands from the controller are sent to the Kodi interface, and not the Emulator. This is true before and after configuring the individual controllers on the emulators from within the gui.
  
This looks like a bug instead of a missing buttonmap. Can you upload a debug log showing buttons pressed in-game?
Reply
#8
(2018-09-25, 08:43)aesop999 Wrote: <?xml version="1.0" ?>
<buttonmap>
    <device name="NVIDIA Corporation NVIDIA Controller v01.04" provider="android" vid="0955" pid="7214" buttoncount="18" axiscount="8">
        <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="left" axis="-6" />
            <feature name="leftbumper" button="12" />
            <feature name="leftstick">
                <up axis="-1" />
                <down axis="+1" />
                <right axis="+0" />
                <left axis="-0" />
            </feature>
            <feature name="leftthumb" button="16" />
            <feature name="lefttrigger" axis="+5" />
            <feature name="right" axis="+6" />
            <feature name="rightbumper" button="13" />
            <feature name="rightstick">
                <up axis="-3" />
                <down axis="+3" />
                <right axis="+2" />
                <left axis="-2" />
            </feature>
            <feature name="rightthumb" button="17" />
            <feature name="righttrigger" axis="+4" />
            <feature name="start" button="11" />
            <feature name="up" axis="-7" />
            <feature name="x" button="3" />
            <feature name="y" button="4" />
        </controller>
    </device>
</buttonmap>
 I've added this buttonmap to Kodi. It will be included in the next release. Thanks for uploading!
Reply
#9
I installed a fresh copy of RetroPlayer 18 beta2 2018-09-14 build on the Nvidia Shield (2017) model. Upon loading I was prompted to map the new controller, which I did, and it works perfect for the interface. (Even though it shows up as a Xbox controller. It would be nice to have a shield controller show up, and not have the guide button)

I then loaded a rom file, and picked the emulator. None of the buttons work for the game on the controller. I then used the other shield remote to open up the dialog and configure the controller. Still doesn't work. Hitting the B button on the controller puts the emulator in the background and returns to Kodi. Seems like Kodi is accepting the control and not passing them to the Emulator.

Here is a complete log.
https://pastebin.com/Zg4UrfXh

Thanks!
Reply
#10
(2018-09-26, 07:46)aesop999 Wrote: Upon loading I was prompted to map the new controller

An earlier Android PR broke compatibility with button maps. I submitted a new one for this controller, so the next build will have it working out of the box.

(2018-09-26, 07:46)aesop999 Wrote: None of the buttons work for the game on the controller.

Thanks for the log. I think I know where to look for this bug, but I'll need a Shield to reproduce. I've got Kodi's devcon this weekend and GSoC following that, so it might be a week or two before I have access to one.
Reply
#11
@garbear I can bring my Shield to devcon (if I have some space left). But I also seem not to be able to use the controller in games (like 2048) in recent nightlies. I suspect it could be related to the OSD dialog for the in-game menu that was recently added? Just a suspicion.
Reply
#12
(2018-09-26, 08:59)da-anda Wrote: @garbear I can bring my Shield to devcon (if I have some space left). But I also seem not to be able to use the controller in games (like 2048) in recent nightlies. I suspect it could be related to the OSD dialog for the in-game menu that was recently added? Just a suspicion.

Thanks, but i also need a beefy machine with enough storage that can build for Android and a network for remote debugging. My MacBook lacks the storage, and my aluminum tower didnt fit on the plane Smile

I remember changing some input stuff for the osd. I'll start looking there.
Reply
#13
any luck with this. Ive got everything up and running but no controller at the moment.
Reply
#14
Been busy with work, I'll try to find time to reproduce this next week.
Reply
#15
I haven't had an opportunity to test on any later build (if there are any) - has there been any movement on this?
Reply

Logout Mark Read Team Forum Stats Members Help
RetroPlayer Nvidia Shield controller support0