Remote issues - Magic remote + Shield remote

Hey! I’m new here since I just recently bought the AMB6+! :slight_smile:

I had some issues, solved most of them with the help of this forum. Ty!
But I still have one issue, and it’s driving me crazy.

So with my new device, I got two remotes. The default UR01 and the G10S Pro BT. Both of these feel cheap and I don’t like them at all. They also feel unresponsive.

Anyway… I also have my Nvidia Shield 2019 remote that I do like… And It works. Well almost. I can’t power on the device after shutting it down. I also can’t find a remote.conf for it. There is one linked in the forum, but the page it links to is gone. (Why?)

The broken link: https://github.com/CoreELEC/remotes/tree/main/Bluetooth/Nvidia

So, my first question. Does anyone have a working solution for the Shield remote? Like, is there a way to maybe only have it to power down my TV and not the AMB6? I think I need detailed step-by-step instructions. The injection thingy does not work, since the bootloader or whatever is now protected on my unit.

I also tried Alternative suspend option for IR wakeup, when bl301 tool not possible without success.

My TV is an LG C2. Which also brings me to my 4th remote. I have the LG Magic remote. it’s the 2022 version. This would be my 2nd choice after the Shield remote. But I also have issues with this. I can’t make it do anything in CoreElec. I can’t even pair it. I can’t work the menu or anything. Not a single button works. It does turn my TV off tho… But I rather not have to switch between two remotes.

LG remote: Amazon.se

And my third option would be to buy a completely new remote that WORKS. Any suggestions? I don’t mind spending some money. I would prefer if I could buy it in Sweden or at least within EU.

Magic Remote works via CEC

To power on the box, you need a remote with IR learning, that can copy the IR power scancode from the original AM6B+ remote. Powering on the box is handled by the bootloader so it’s out of the hands of CE. You may also be able to trigger power by CEC, but not by Bluetooth.

Well not for me. I spent hours trying to get it to work. Not sure why the issue is. Maybe user error.

Well okay, so forget about powering down the AM6b+, Is there a way to just make it suspend or hibernate by using the power button? Or just turning off the TV itself?

  <global>
    <keyboard>
        <key id="61662">runscript(/storage/suspend.py)</key>
    </keyboard>
  </global>

I just have no idea what to put in the suspend.py file :wink:

The default CE suspend puts the box in deep sleep (suspend-to-ram) which is handled by the bootloader again (similar to power off state).

The script I made was to put the box into suspend-to-idle, which turns off a bunch of hardware and CPUs, but CE maintains control. This makes waking the device more flexible (but less power savings).

Waking from suspend-to-idle still requires an IR button press, but this can be any button that you assign as power in your remote.conf file.

Follow the first post, it doesn’t use a python script, it replaces the default suspend.service. Using this does require that you have a remote.conf file for your remote with the IR power button defined.

Hm. So Im trying your solution with the UR01. It feels like it still powers off all the way. What kinda of settings should I use under cec in kodi?

And just to check so that Im doing it correctly:
I have the autostart.sh, remote.conf and systemd-suspend.service in the right places. And I use my default RED power off button on my UR01? Or do I have to do something with that to trigger your things? xD

The power button still powers off the box. You need to bring up the power menu, and select suspend. Then when you want to wake the device, use the power button on the remote.

The modified suspend.service lets you wake the box with an IR power button press, defined in the remote.conf file. You still need to select suspend, or map another button to suspend.

Hm ok I tried. Not really working.

So now I deleted autostart.sh, remote.conf and systemd-suspend.service.
Deleted the remote.conf in /flash also.

Rebooted and installed the new fresh remote.conf and did a reset on cec settings and made sure keymaps file didn’t have anything bound to anything. Rebooted.

I can’t even make my red power button work this way. I press it once to turn it off, that works, but then I can’t turn it on again without having to do it on the device.

Is this not supposed to work with the original UR01 controller?

It will work with any remote with IR, because the remote.conf file defines what scancode = 116 (power button keycode).

Try this from SSH

systemctl daemon-reload
systemctl enable systemd-suspend.service

Maybe only rebooting doesn’t make the new service file go into effect, I can’t remember. The above two commands will force systemd-suspend.service to take effect immediately, without rebooting.

Also, I’m assuming the Ugoos remote is emitting IR, and not BT paired? I don’t know how this remote behaves specifically. You can look at the remote through your phone camera (phone camera’s don’t have IR filter), to see if the remote IR lights up when you press it. Some IR+BT remotes don’t emit IR when they are BT paired.

Yea, I don’t see an IR signal, and it is BT paired. Using only the IR is when it’s very unresponsive for me. I think I will need a new remote. Been looking around but I really dont know what to get.

This is going to depend on the particular remote. I have a generic AndroidTV remote with BT/IR capabilities. It is BT paired, but as soon as the box goes to sleep loses the BT pairing and falls back to IR. I can then use IR to wake, at which point I press the remote BT pairing buttons and it repairs.

There are some BT remotes where the power button always works in IR, other BT remotes that issue both IR+BT commands at the same time.

Check the Ugoos remote when the box goes into suspend, maybe the remote falls back to IR? Maybe it takes 1 minute or 2 without a BT response from the AM6 to fall back to IR?

One option is to add a command to the suspend.service that disconnects your BT remote when going into sleep. This might make the remote fall back to IR faster, or instantly.

Go to the BT pairing menu in settings, and disconnect your remote. If that sets to IR mode, then it’s just a matter of adding this to the service.
bluetoothctl disconnect remote_mac_address

So I did some reading. The G10S Pro BT actually has IR on the power alone and the rest is BT. So with default settings It works shutting it off and start it again and BT seems to be active faster or maybe the whole time.

Too bad, the buttons on this remote are TERRIBLE. Like instead of them being raised up a bit, they are down so u dont even know when u have the finger on a button or not lol… But I might try your thing now and use it for a few days, maybe i get used to it. Feature wise, it seems like a decent remote.

If you have a Fire TV remote laying around, the power button is always set to IR. It can be BT paired, wake from suspend with IR, and automatically BT reconnects after waking.

This is the remote.conf profile for the newer remotes with channel buttons. The older remotes with only app buttons, and no app buttons would probably work too, because they also have IR power buttons. They may require a different remote.conf file. I hadn’t checked since those have limited IR (power and volume buttons only).

The FireTV remotes can also be programmed with a custom IR scancode, so that you may even be able to get it to match the Ugoos remote, allowing you to use the Fire remote to also power on the AM6 from a power off state. But I think this would have to be done through FireOS equipment control, I don’t know how to program the remote directly.

I thought the newer Shield remotes also had IR+BT capabilities. I don’t have one to test though.

Did you configure CEC through the Peripherals option setting?

There is no pairing needed with MagicRemote. In fact any pairing might actually interfere with CEC. I have friends with your exact TV and CEC works flawlessly.

I was looking at the FireTV remote. Sadly, it seems like it does not have the learning ability, but it has ability to change IR profiles. But they need to be supported within the app, I think, and I doubt Ugoos is.

Nvidia Shield has IR but no learning ability.

I found G20S Pro Plus and it has:
2.4G wireless and Bluetooth 5.0
Built-in 6-axis gyroscope
Backlight
2-key infrared learning function (Power and Mute)
10m Range (Ugoos remotes has 8m)

Looks descent, it’s cheap and available here for me.

Link: https://www.amazon.se/-/en/Bluetooth-Control-Android-Illuminates-Replacement/dp/B0C1TVL8RN?sr=8-1

Yeah sorry, IR learning can only be done on the Fire Cubes. You’d go to equipment control, setup TV, pick a random brand and let all the IR power attempts fail. At that point the UI asks you to point the old remote at the Cube to learn the code, and uses that to program the remote.

Otherwise, it would be a matter of finding another manufacturer that uses the same IR profile as the AM6 remote. That’s a bit harder unless Ugoos already knows of such a manufacturer and is willing to share.

That G20S Pro Plus looks like a decent remote, and the USB dongle option has a couple advantages over BT and IR. If you order it from Aliexpress you can get it for less than half the price.

Well, it was already cheap tbh and I would have to wait like 3-4w to actually get it from Aliexpress, so I don’t mind paying a bit extra. :smiley:

Hopefully it works out!

So I just wanted to get back to you with this. I tried the commands and I got this:

The unit files have no installation config (WantedBy=, RequiredBy=, UpheldBy=,
Also=, or Alias= settings in the [Install] section, and DefaultInstance= for
template units). This means they are not meant to be enabled or disabled using s                                                                                    ystemctl.

Possible reasons for having these kinds of units are:
• A unit may be statically enabled by being symlinked from another unit's
  .wants/, .requires/, or .upholds/ directory.
• A unit's purpose may be to act as a helper for some other unit which has
  a requirement dependency on it.
• A unit may be started when needed via activation (socket, path, timer,
  D-Bus, udev, scripted systemctl call, ...).
• In case of template units, the unit is meant to be enabled with some
  instance name specified.

Anyway… I also decided the best and easiest way was just to copy the IR code from my magic remote, so my power button on the G10S Pro BT just turns the TV off instead of my AMB6… Not sure why I just didn’t do this from the beginning.

And in SEC i just made it so when TV is powered off, it puts the AMB6 in suspend mode… And when I start the TV it starts the AMB6 too. No muss, no fuss.

1 Like