WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: [Solved] xbox controller not working on TCL16 x86_64  (Read 3737 times)

Offline GNUser

  • Wiki Author
  • Hero Member
  • *****
  • Posts: 1778
Re: xbox controller not working on TCL16 x86_64
« Reply #60 on: December 30, 2025, 09:47:40 AM »
I think the problem in TCL has something to do with ACL.

When I plug the controller in, this appears in /var/log/messages (strangely, the time in the ACL-related timestamps is incorrect):
Code: [Select]
Dec 30 09:43:36 x230 kern.info kernel: usb 3-2: new full-speed USB device number 2 using xhci_hcd
Dec 30 09:43:36 x230 kern.info kernel: input: Generic X-Box pad as /devices/pci0000:00/0000:00:14.0/usb3/3-2/3-2:1.0/input/input17
Dec 30 09:43:36 x230 kern.info kernel: usbcore: registered new interface driver xpad
Dec 30 14:43:36 x230 daemon.err elogind-uaccess-command[7313]: Failed to apply ACL: Operation not supported
Dec 30 14:43:36 x230 daemon.err elogind-uaccess-command[7314]: Failed to apply ACL: Operation not supported

Also, note in my previous post how  /dev/input/js0  in Devuan has a  +  in the permissions, whereas in TCL there is no  +
Code: [Select]
TCL$ ls -l /dev/input/js0
crw-r--r--    1 root     root       13,   0 Dec 30 09:43 /dev/input/js0
Does TCL support ACL (access control lists)?

EDIT: I was surprised to find that  acl.tcz  is already loaded (it must be a dependency of one of my extensions):
Code: [Select]
$ tce-status -i | grep acl
acl
Maybe my root filesystem needs to be mounted with the acl option? How would I do that?
« Last Edit: December 30, 2025, 09:52:08 AM by GNUser »

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 12447
Re: xbox controller not working on TCL16 x86_64
« Reply #61 on: December 30, 2025, 10:01:27 AM »
Hi GNUser
... Also, note in my previous post how  /dev/input/js0  in Devuan has a  +  in the permissions, whereas in TCL there is no  +
Code: [Select]
TCL$ ls -l /dev/input/js0
crw-r--r--    1 root     root       13,   0 Dec 30 09:43 /dev/input/js0
...
I did not notice that. It's like an extra bit appended to the permissions field.
I searched my entire /dev directory and could not find a single plus sign anywhere.

I did notice your js0 is  "root     root"  while Devuan is set as  "root input"

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 12447
Re: xbox controller not working on TCL16 x86_64
« Reply #62 on: December 30, 2025, 10:13:03 AM »
Hi GNUser
I've never had to deal with ACLs, but this suggests that's what
the plus sign indicates:
https://serverfault.com/questions/227852/what-does-a-mean-at-the-end-of-the-permissions-from-ls-l

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 12447
Re: xbox controller not working on TCL16 x86_64
« Reply #63 on: December 30, 2025, 10:16:23 AM »
Hi GNUser
  ... I did notice your js0 is  "root     root"  while Devuan is set as  "root input"
And Devuan has rw for group permissions.

Offline GNUser

  • Wiki Author
  • Hero Member
  • *****
  • Posts: 1778
Re: xbox controller not working on TCL16 x86_64
« Reply #64 on: December 30, 2025, 10:17:05 AM »
I did notice your js0 is  "root     root"  while Devuan is set as  "root input"
Hi Rich. Yes, I noticed the "root input" ownership of  /dev/input/js0  in Devuan. But since I'm not part of the  input  group in Devuan, I think it's ACL and the extra  +  permission bit that's allowing my normal user to use input device without sudo.

Here https://wiki.archlinux.org/title/Access_Control_Lists#Enable_ACL it says that filesystem must be mounted with the  acl  option for ACL to work. My frugal TCL install is in /dev/sda1...
Code: [Select]
TCL$ cat /etc/fstab
# /etc/fstab
proc            /proc        proc    defaults          0       0
sysfs           /sys         sysfs   defaults          0       0
devpts          /dev/pts     devpts  defaults          0       0
tmpfs           /dev/shm     tmpfs   defaults          0       0
/dev/zram0      swap         swap    defaults,noauto   0       0
/dev/sda1       /mnt/sda1       ext4     noauto,users,exec    0 0 # Added by TC
/dev/sda2       /mnt/sda2       ext4     noauto,users,exec    0 0 # Added by TC
/dev/sda3       /mnt/sda3       ext4     noauto,users,exec    0 0 # Added by TC
/dev/sda4       /mnt/sda4       ext4     noauto,users,exec    0 0 # Added by TC
/dev/sda6       /mnt/sda6       vfat     noauto,users,exec,umask=000 0 0 # Added by TC
...but I'm not sure whether adding  acl  to the options for /dev/sda1 would help since TCL's root filesystem is in RAM. How do I change options of TCL's root filesystem?

Offline GNUser

  • Wiki Author
  • Hero Member
  • *****
  • Posts: 1778
Re: xbox controller not working on TCL16 x86_64
« Reply #65 on: December 30, 2025, 10:24:36 AM »
Hi Rich. rw for group permissions noted. In TCL I'm already part of the staff group, so I tried this:

Code: [Select]
TCL$ sudo chown root:staff /dev/input/js0
TCL$ sudo chmod 664 /dev/input/js0
TCL$ ls -l /dev/input/js0
crw-rw-r--    1 root     staff      13,   0 Dec 30 10:10 /dev/input/js0

Still no luck after the above: sudo is still required for game to respond to gamepad input. What a tough nut to crack this is proving to be!

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 12447
Re: xbox controller not working on TCL16 x86_64
« Reply #66 on: December 30, 2025, 10:29:53 AM »
Hi GNUser
Some dumb questions to try to isolate the issue further:
Do you permission to run this:
Games/GOG Games/Baldurs Gate Dark Alliance/start.sh

Do you have permission to run each of the commands in that file?

Offline GNUser

  • Wiki Author
  • Hero Member
  • *****
  • Posts: 1778
Re: xbox controller not working on TCL16 x86_64
« Reply #67 on: December 30, 2025, 10:34:44 AM »
Hi GNUser
Some dumb questions to try to isolate the issue further:
Do you permission to run this:
Games/GOG Games/Baldurs Gate Dark Alliance/start.sh

Do you have permission to run each of the commands in that file?
I hadn't thought of that. Not dumb question at all. Let me investigate.

EDIT: Yes, I am owner and have permission to execute everything related to this game. I just did this to make sure:

Code: [Select]
$ chown -R bruno:staff Games/GOG\ Games/Baldurs\ Gate\ Dark\ Alliance/
$ chmod -R 775 Games/GOG\ Games/Baldurs\ Gate\ Dark\ Alliance/
The need for  sudo  persists after doing the above.
« Last Edit: December 30, 2025, 10:39:14 AM by GNUser »

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 12447
Re: xbox controller not working on TCL16 x86_64
« Reply #68 on: December 30, 2025, 10:43:11 AM »
Hi GNUser
Actually it was dumb. Look at this:
... Do you permission to run this:
Games/GOG Games/Baldurs Gate Dark Alliance/start.sh ...
I couldn't even form a proper sentence. ;D

Offline GNUser

  • Wiki Author
  • Hero Member
  • *****
  • Posts: 1778
Re: xbox controller not working on TCL16 x86_64
« Reply #69 on: December 30, 2025, 10:44:27 AM »
Maybe one of the steps involved in launching the game uses a command in  /sbin  that requires sudo? I'm going to explore this.

Offline GNUser

  • Wiki Author
  • Hero Member
  • *****
  • Posts: 1778
Re: xbox controller not working on TCL16 x86_64
« Reply #70 on: December 30, 2025, 10:45:55 AM »
Hi GNUser
Actually it was dumb. Look at this:
... Do you permission to run this:
Games/GOG Games/Baldurs Gate Dark Alliance/start.sh ...
I couldn't even form a proper sentence. ;D
Hi Rich. Haha, I understood your meaning well enough ;D
Understanding context and intent is one of the many instances in which natural intelligence easily beats AI ;)

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 12447
Re: xbox controller not working on TCL16 x86_64
« Reply #71 on: December 30, 2025, 10:48:43 AM »
Hi GNUser
... Understanding context and intent is one of the many instances in which natural intelligence easily beats AI ;)
You shouldn't compare "natural intelligence" to "Artificial Ignorance". :o

Offline patrikg

  • Wiki Author
  • Hero Member
  • *****
  • Posts: 817
Re: xbox controller not working on TCL16 x86_64
« Reply #72 on: December 30, 2025, 10:49:51 AM »
Ok, friends, finally some progress!

If I run the game in TCL with  sudo  then the gamepad WORKS!! No need for  libmtp  or supplemental  udev  rules.

But of course this is not a solution: It just suggests what the underlying problem might be.

I checked in Devuan and I am not part of an "input" group:
Code: [Select]
Devuan$ id
uid=1000(bruno) gid=1000(bruno) groups=1000(bruno),24(cdrom),25(floppy),29(audio),30(dip),44(video),46(plugdev),102(netdev),108(bluetooth)

I tried this in TCL...
Code: [Select]
TCL$ sudo chown bruno:staff /dev/input
TCL$ sudo chown bruno:staff /dev/input/js0
...but found that running the game with  sudo  is still needed for gamepad to work.

Any suggestions what needs to be done in order for the gamepad to be usable in TCL without running the game with sudo?

EDIT: In TCL I also tried loading polkit, starting dbus, then starting polkitd. Alas, no change--sudo still required for the game to respond to gamepad input.

Sorry have to ask a very stupid question.
Have you tried to add you user to input group ?

Offline GNUser

  • Wiki Author
  • Hero Member
  • *****
  • Posts: 1778
Re: xbox controller not working on TCL16 x86_64
« Reply #73 on: December 30, 2025, 10:53:38 AM »
Hi GNUser
... Understanding context and intent is one of the many instances in which natural intelligence easily beats AI ;)
You shouldn't compare "natural intelligence" to "Artificial Ignorance". :o
We're on the same page there ;)

Offline GNUser

  • Wiki Author
  • Hero Member
  • *****
  • Posts: 1778
Re: xbox controller not working on TCL16 x86_64
« Reply #74 on: December 30, 2025, 10:57:12 AM »
Sorry have to ask a very stupid question.
Have you tried to add you user to input group ?
Hi patrikg. I'm not part of the  input  group in Devuan. Creating that group in TCL, adding myself to it, and changing ownership of  /dev/input/js0  to  root:input  would be a big hassle with very low chance of success. But I'll give it a shot.