Defaults on Android TV are awful

While the technical side of RetroArch is amazing, the way it’s configured by default is quite unfriendly on Android TV devices. My experience is on the Nvidia Shield, with the default RetroArch build downloaded from the Google Play store, but I imagine most points apply to other Android TV devices.

[ul] [li]Retroarch presents a touch screen overlay for controls when running games by default. Android TV devices don’t have a touch screen (https://developer.android.com/design/tv/patterns.html), so this is unusable and gets in the way.[/li][li]The back and ok buttons are swapped in RetroArch’s UI compared to everything else on the Shield. This is particularly jarring since the control pad comes with the Shield and is used to navigate its normal UI, but button functionality is swapped as soon as RetroArch is opened. I also couldn’t find a GUI option to fix this behaviour (manually editing configs is required, which is difficult for typical novice Android TV users since it doesn’t ship with a text editor or a physical keyboard).[/li][li]I found it impossible to quit a game once started with the default configuration (can be fixed via the GUI by mapping this to start+select or whatever). Using the Nvidia button to quit to the shield hub doesn’t work around this (RetroArch is suspended and is still running the same game when reopened).[/li][li]RetroArch 1.3.6 has a “Shield” menu color theme - shouldn’t it use this by default when running on the Shield?[/li][/ul]

Since as far as I’m aware the Play Store on Android TV is separate to that on standard Android, shouldn’t it be possible to fix most of the above just by distributing the Android TV version of RetroArch with slightly different defaults?

I realise most of these things just require a little tweaking to avoid and won’t bother advanced RetroArch users, but for a novice who’s just downloaded it, this could make the difference between “RetroArch is great” and “Nothing works properly, PANIC!”

heh, I just got a shield ATV last week and thought the defaults were awesome. Anyway: 1.) I didn’t have this issue. There was no overlay enabled when I started up. 2.) this takes some getting used to, yeah, but it’s just how we do things. I’m not against a GUI option for swapping, though, and I’ll shop that idea around. 3.) You just have to hold the nvidia button for a second or 2 and it’ll get you back into the menu. I actually think this is superior to just pressing it because it’s a bit trigger-happy at times 4.) That’s only on the MaterialUI menu. We could change XMB to use the ‘apple green’ color scheme but that’s debatable

Hunterk its great that you have the ATV now and i def dont think the defaults are awful, that really is a bit over the top for a topic title imho.

1.) Every build i have tried comes with overlay enabled and default is retropad i think 2.) the enter, exit button is a head spinner when quickly going between retroarch and other apps. That GUI option sounds like a really good idea. myself and a few other Hyperspin users had problems swapping this 3.) Agreed the longer press is better than the trigger happy button of the past version 4.)I really like the default XMB look that my 1.3.6 download came with

I do agree about being able to swap the UI buttons, I always goof that up.

Fair point that the title is a bit provocative - however the first experience I had when installing RetroArch a week or two ago as a new user wasn’t great, and it reflects that. It’s already pretty daunting app due to its sheer power and configurability, so any additional inconsistencies on top of that can make things quite frustrating for novices. It’s also not just my opinion, I’ve seen a number of posts on various forums from users who found RetroArch hard to get to grips with or who are recommending alternate frontends like Gamesome or Hyperspin due to frustrations with it.

I’m finding RetroArch very good after persevering and doing a bit of tweaking, and think it’s a great project. However I wanted to offer some feedback on the things I initially found awkward since many people would just move on and never bother to do so.

Must admit I hadn’t tried the color scheme - I saw the screenshot on the Libretro blog and assumed it was designed for Shield. Having a look now and it seems I can’t select the materialui driver on 1.3.6. Is there something I’m missing, or is it just not available on the Android build?

It defaulted to XMB with no overlay on my Shield TV.

I’ve been using ARC Browser as a frontend, it’s a WIP but works pretty well. If I could get Retroarch to save state when I exit it would work even better.

I also use ArcBrowser… Set it up with a bunch of cores including consoles, handhelds and quake, doom and Cave Story which took some parameter tweaking.

I’d just like to point out that holding the NVidia button to bring up the menu on the Shield TV seems kind of like a bad idea. Holding this button is how you initiate a re-pairing of the controller. So, if you hold it too long, the controller re-pairs and this causes RA to remap the controller under the next controller index (default #0, after re-pair #1). This leaves you unable to do anything but force close the app and relaunch it since you now can’t control anything when all the mappings are bound to controller #0.

I’ve had very spotty success with bringing up the menu with this as the default, so I normally enable the L3 + R3 hotkey for the menu and use that instead.

Maybe other people have better luck with it, but it fails to bring up the menu enough for me that it’s not even useful. As I keep trying longer lengths of time holding it in order to hopefully get it to work, I end up eventually holding it long enough to re-pair it. The touch buttons seem rather flakey at times, in general, so this may not even be a legitimate RA issue. I really wish they had just used normal buttons instead of these touch buttons, especially when it’s easy to accidentally brush near one and trigger it without meaning to.

From my experience, at least, the button combo hotkey is a much more reliable option on the Shield TV.

The longer press to bring up the menu is pretty great IMO. It’s very easy to trigger the back or start touch buttons on the controller when playing. And I’ve found that if you’re holding down the shield touch button longer than 2 seconds and it isn’t bringing the menu up, a quick release and hold again normally brings it up fine the 2nd time. I’m also not against having more options for the function, but definitely keep the current setup as the default.

I use the L3 + R3 button combo to get back into XMB myself; I find the nVidia button pretty touchy even knowing to hold it in a bit longer myself. :stuck_out_tongue:

Despite my frustrations getting it to function without a controller on the initial setup before Android M ruined RA’s touch function,I have it where I really like it and enjoy using it,and on XMB without the animation,because I want ALL of the performance I can squeeze out of the UI with a minimalistic setup. If I ever lose my copy of RetroArch,I will be screwed from having no way to navigate (RA’s touch broken by Android M in some devices) and map my inputs on a clean install of it,actually making it unusable for me.

In future-proofing,it would require something to make it NOT absolutely require a controller such as global input commands by default like it should’ve been for Android from the start. For example,the global input allows me to use several things on my K400 Plus keyboard to navigate everything by default without any configuration,I can use the arrows/cursor keys to move,the enter key to select things,and escape or back via F1 to get out of something then F4 is the menu button. With those global inputs in place,I could easily navigate to the input settings and map them to my heart’s content,and if fully global,it would also allow easy cheat entering with the ability to type the : for Sega Genesis PAR cheats (FFFFFA:0100) which the keyboard overlay can’t do as per my failed attempt before the OTA with Android M broke it.

But…maybe if the Android M touch issue was fixed by using the same method as other apps use such as Mupen64Plus AE with its onscreen controls and the touchscreen on DraStic,then it could once again be fully configurable via the retropad using a keyboard’s touchpad mouse to map everything for those of us stuck without the use of a controller because reasons.

There is actually some functionality in place to set this up.

It’s not exposed in the GUI but in retroarch.cfg you can use these settings: menu_cancel_btn menu_ok_btn

I have mine set to: menu_ok_btn = “0” menu_cancel_btn = “8”

This makes the Retroarch GUI handle the OK and BACK button in the same way as in other applications on the SHIELD TV.

If you mean by running the whole thing through Java to allow for native Android controls, that’s probably not gonna happen.

“in some devices” Shield TV for one (Shield TV Pro) and a few other members replied with their actual touch-based devices not working with touch on RetroArch. As stated,the touch used for other apps works fine for MupenAE’s controller overlay and even DraStic’s touchscreen works fine.

But what does DraStic use for the DS touchscreen detection? (hmm…I haven’t tried the desmume core for the touchscreen just yet,curious) Edit: Dammit! The DeSmuME touchscreen also fails to work on any mode. I also tried enabling “use mouse” but I can’t get it to move no matter what I button try (even after mapping grab mouse),how does it normally move?