Android Let's get controllers on Android fully working for v20.4
#16
Ok. tried out your test build and you were correct.  The controller now works fine, but my remote no longer works.  Here my log in case it's any help.   ewuconuxad.kodi (paste)
I'm gonna go back to the standard kodi 20.5 as watching media is more important to me than playing games. Thanks for your help.
Reply
#17
Thanks for testing, that's a great data point. And I wish I could finish the joystick work and get remotes working too, but you know, bills gotta get paid. I try to take 2 or 3 months off work for a Kodi feature or other side project, and given that I spent all January on the new Player Viewer, in a few months I'll be due for another Kodi sesh and getting Android input working is my top priority. Check back in a few months and see if there's any progress!
RetroPlayer releases: https://github.com/garbear/xbmc/releases

Donations: eigendude.eth
Reply
#18
I’ve been using kodi since the original Xbox days so I truly appreciate what you and all the devs do. I’ll be happy to help test when you’re able to work on it again.
Reply
#19
Hi @garbear . Sorry it took me so long to test this. Since I've taken so long to reply I wasn't sure what build I should be testing, or if you still need me to test this.

I tried with the last version in the Play Store (20.5 for me right now), the controllers aren't working. But the last build you asked to test in this thread (20.4 rc) everything seems to be working good. For now this is the log with the 20.4rc, and this is the log with 20.5.

Let me know if there is anything else I can do to help. Thank you for working on solving this!
Reply
#20
So in the last two months, I got the joystick fixes perfect for *almost* all controllers, but it broke remotes. So it was reverted in the upstream repo. I still carry the fixes in my test builds, which you have the option of using (at the expense of breaking Android remotes).

My high priority task is to fix controllers *without* breaking remotes, but my Kodi time is currently limited now and in the near future, so it'll be a while before I'm able to do this.

Thanks for helping to test!
RetroPlayer releases: https://github.com/garbear/xbmc/releases

Donations: eigendude.eth
Reply
#21
(2024-04-21, 00:16)garbear Wrote: So in the last two months, I got the joystick fixes perfect for *almost* all controllers, but it broke remotes. So it was reverted in the upstream repo. I still carry the fixes in my test builds, which you have the option of using (at the expense of breaking Android remotes).

My high priority task is to fix controllers *without* breaking remotes, but my Kodi time is currently limited now and in the near future, so it'll be a while before I'm able to do this.

Thanks for helping to test!

Hi Garbear, thanks again for your awesome work.
I relied on the Nexus nightly channel which had your fixes and controllers worked great.
Now with the Omega update it remains broken, I wonder if your fixes are implemented in the nightly channel ? Otherwise we're SOL.
Thanks,
Reply
#22
(2024-05-01, 18:45)janweinreich Wrote:
(2024-04-21, 00:16)garbear Wrote: So in the last two months, I got the joystick fixes perfect for *almost* all controllers, but it broke remotes. So it was reverted in the upstream repo. I still carry the fixes in my test builds, which you have the option of using (at the expense of breaking Android remotes).

My high priority task is to fix controllers *without* breaking remotes, but my Kodi time is currently limited now and in the near future, so it'll be a while before I'm able to do this.

Thanks for helping to test!

Hi Garbear, thanks again for your awesome work.
I relied on the Nexus nightly channel which had your fixes and controllers worked great.
Now with the Omega update it remains broken, I wonder if your fixes are implemented in the nightly channel ? Otherwise we're SOL.
Thanks,

Yes, the "fixes" were reverted in master. Still too busy for heavy Kodi time but when I can get a chance I can cherry-pick the changes that don't break remotes and at least PR those. The more "standard" your controller, the higher likelihood the controller will work. Generic and knock-off controllers are the ones that have the most problems due to Android quirks.

I do builds for my own use, and publish them for others: https://github.com/garbear/xbmc/releases . You can read the release notes, and if it's appealing you can sideload the builds to get working controllers (but it breaks some remotes). If you want any customizations let me know, it's cheap to do another round of builds.
RetroPlayer releases: https://github.com/garbear/xbmc/releases

Donations: eigendude.eth
Reply
#23
(2024-05-01, 20:22)garbear Wrote:
(2024-05-01, 18:45)janweinreich Wrote:
(2024-04-21, 00:16)garbear Wrote: So in the last two months, I got the joystick fixes perfect for *almost* all controllers, but it broke remotes. So it was reverted in the upstream repo. I still carry the fixes in my test builds, which you have the option of using (at the expense of breaking Android remotes).

My high priority task is to fix controllers *without* breaking remotes, but my Kodi time is currently limited now and in the near future, so it'll be a while before I'm able to do this.

Thanks for helping to test!

Hi Garbear, thanks again for your awesome work.
I relied on the Nexus nightly channel which had your fixes and controllers worked great.
Now with the Omega update it remains broken, I wonder if your fixes are implemented in the nightly channel ? Otherwise we're SOL.
Thanks,

Yes, the "fixes" were reverted in master. Still too busy for heavy Kodi time but when I can get a chance I can cherry-pick the changes that don't break remotes and at least PR those. The more "standard" your controller, the higher likelihood the controller will work. Generic and knock-off controllers are the ones that have the most problems due to Android quirks.

I do builds for my own use, and publish them for others: https://github.com/garbear/xbmc/releases . You can read the release notes, and if it's appealing you can sideload the builds to get working controllers (but it breaks some remotes). If you want any customizations let me know, it's cheap to do another round of builds.

Really appreciate your willingness to help.
Maybe a good compromise is to only include the fixes on the nightly channel for mainstream controller and leave out the generic and knock-offs for now, without breaking remotes? It's not unreasonable to have a knockoff controller fail in Kodi and not have out of the box support.
Playstation, Xbox, Shield TV controllers come to mind as "should work out of the box".
Reply
#24
(2024-05-04, 03:12)janweinreich Wrote: Maybe a good compromise is to only include the fixes on the nightly channel for mainstream controller and leave out the generic and knock-offs for now, without breaking remotes? It's not unreasonable to have a knockoff controller fail in Kodi and not have out of the box support.
Playstation, Xbox, Shield TV controllers come to mind as "should work out of the box".

 Agree 100%. Will do this next time I rotate to heavy kodi time.
RetroPlayer releases: https://github.com/garbear/xbmc/releases

Donations: eigendude.eth
Reply
#25
I hope I am in the right place to report.

I recently bought a cheap chinese bluetooth game controller for my daughter to play on her phone. I switched it to generic mode* and tested it with this app and works just fine. While i am able to control Kodi's interface, when trying to remap keys or play a game, keys control Kodi's interface and not the game. Should I also try one of the builds?

EDIT: Just tried one of the latest builds for ARM64 and it works as intended.

* it can have one more mode which can simulate touch events but that's a whole other story
>>> [zen for zen in zen_of_python if zen][0] == 'long_live_python_2'
True
Reply
#26
(2024-05-08, 01:35)threshold84 Wrote: I recently bought a cheap chinese bluetooth game controller for my daughter to play on her phone. I switched it to generic mode* and tested it with this app and works just fine. While i am able to control Kodi's interface, when trying to remap keys or play a game, keys control Kodi's interface and not the game. Should I also try one of the builds?

(2024-05-08, 01:35)threshold84 Wrote: EDIT: Just tried one of the latest builds for ARM64 and it works as intended.

Yes, my test builds (link in my signature) fix generic controllers. The plan is to get fixes for most first party controllers into master, and then spend more time on fixes for generic controllers so as to not break remotes.
RetroPlayer releases: https://github.com/garbear/xbmc/releases

Donations: eigendude.eth
Reply
#27
(2024-05-07, 04:09)garbear Wrote: Maybe a good compromise is to only include the fixes on the nightly channel for mainstream controller and leave out the generic and knock-offs for now, without breaking remotes? It's not unreasonable to have a knockoff controller fail in Kodi and not have out of the box support.
Playstation, Xbox, Shield TV controllers come to mind as "should work out of the box".

So, I've done this. I separated out all fixes from the old PR into new separate PRs and submitted against upstream. Notably, a commit was dropped that was probably the cause of most remote breakage.

My new round of builds contains the state that master will be at when all "safe" PRs are merged: https://github.com/garbear/xbmc/releases

This build should be approved for both controllers (generic and first-party) plus remotes. Please remote any problems.
 
If anyone can test, I expect that the only controllers that are still broken are ones that work in the UI but not in games.
RetroPlayer releases: https://github.com/garbear/xbmc/releases

Donations: eigendude.eth
Reply
#28
Update on the Joystick fixes. I've just merged the two biggest fixes into master. Testing on the latest nightlies would be appreciated, especially with remotes. If all goes well, I'll get the fixes into the next v20 release, either v20.1 or v20.2 depending on how many and when testers are able to confirm the fixes work.
RetroPlayer releases: https://github.com/garbear/xbmc/releases

Donations: eigendude.eth
Reply
#29
I have a solution to the Kodi joystick problem. I have only tried it on Kodi 21 so not sure if it would work on earlier versions i.e. 20.4 to 21.0

I have 3 kodi boxes 2 64bit and one of the cigar 32bit boxes. The 32bit Kodi cigar box does not have the joystick problem but the 2 64bit boxes does.

1. Ensure you have Kodi 21 installed and configured on your Shield with whatever build you want
2. You will see that the system>input screen, driver settings is greyed out and when you hit peripherals it is blank (no joystick driver)
3. Exit kodi
4. On the shield go into settings>device preferences>storage>Transfer files over network
5. Switch it on and take a note of the IP address username and password
6. Apologies I use a windows desktop but I'm sure you could do this using other devices
7. Open a windows explorer instance (windows key + e)
8. On the address bar put in \\<ip address of the shield>  e.g. \\192.168.0.17 and hit return
9. Input the username and password you noted earlier
10. You will get an internal directory coming up
11. Navigate down to \\192.168.0.17\internal\Android\data\org.xbmc.kodi\files\.kodi\addons
12. using chrom/edge browser download garbears kodi 21 retro apk for your device, I have a 64bit Nvidia shield so I downloaded https://github.com/garbear/xbmc/releases...64-v8a.apk
13. Go to where you downloaded the file using another windows explorer instance (windows key + e)
14. Rename retroplayer-21-20240527/kodi-20240527-366cac13-retroplayer-21-arm64-v8a.apk to retroplayer-21-20240527/kodi-20240527-366cac13-retroplayer-21-arm64-v8a.zip this makes it a simple ZIP file
15. Open the ZIP and navigate to \kodi-20240527-366cac13-retroplayer-21-arm64-v8a\assets\addons
16. Copy the peripheral.joystick folder and paste it into the \\192.168.0.17\internal\Android\data\org.xbmc.kodi\files\.kodi\addons folder which you should have open in another windows explorer window

And that's it. You can close all windows, go to your shield and launch Kodi 21, joystick support will be completely re-enabled and will work the way it did in Kodi 20.3

I would also suggest you switch off auto-updates in the google play store on your shield and only do manual updates as the next version of Kodi will break it.

An alternative would be to remove Kodi 21 from your shield, reboot and side load Garbear's version of Kodi though I like to remain on the main fork.

Hope this helps, I've been having the same problem for quite a while and stayed on Kodi 20.3 for a long time but felt it was time to upgrade.
Reply
#30
@sc769812 Does this mean I can mark you down as confirming the android joystick fixes?
RetroPlayer releases: https://github.com/garbear/xbmc/releases

Donations: eigendude.eth
Reply

Logout Mark Read Team Forum Stats Members Help
Let's get controllers on Android fully working for v20.40
This forum uses Lukasz Tkacz MyBB addons.