how to eliminate need of windows reboot to activate Xbox controller

Anything related to gaming on Linux Mint including game discussion or questions concerning Steam or Wine.
Forum rules
Before you post read how to get help. Topics in this forum are automatically closed 6 months after creation.
Post Reply
strikers489
Level 1
Level 1
Posts: 4
Joined: Mon Mar 18, 2024 8:31 am

how to eliminate need of windows reboot to activate Xbox controller

Post by strikers489 »

Hello

At present, i have a dual boot on Laptop (2 separate nvme drives), primary boot device is set to linux mint nvme.
If i boot directly into linux mint, then my controller is not recognised as Xbox controller, it is recognised as Shenzen something (will post lsusb command output ahead), it has a central light which goes green.
But, when i boot into Windows, then my controller is recognised as Xbox controller (central light, goes blue), and then, without unplugging controller, if i reboot into linux mint, controller is recognised as Xbox controller, and it works perfectly in Steam.
It is like, my controller needs to somehow authenticate it is initiated.waking in a windows environment first to declare itself as Xbox controller? And then if it remains on without plugging out, then even if rebooted into Mint, it stays as Xbox controller (blue light is on).
I know this is a small annoyance, but i am really trying to get rid of windows as much as possible, so far already succeeded in running sketchup, msoffice and photoshop on mint itself, now gaming in few games i play is like last hurdle.

So how can i get past this annoyance to having to boot into windows first just to activate my controller? Is this some proprietary issue? Do i need to add something to boot process?
(Controller is Cosmic Bye Ares : Wired USB:
https://www.thecosmicbyte.com/product/c ... er-for-pc/

Thanks in advance. Here are the system details:
--
--
-----------------

Code: Select all

System:
  Kernel: 6.5.0-25-generic x86_64 bits: 64 compiler: N/A Desktop: Cinnamon 6.0.4 tk: GTK 3.24.33
    wm: muffin vt: 7 dm: LightDM 1.30.0 Distro: Linux Mint 21.3 Virginia base: Ubuntu 22.04 jammy
Machine:
  Type: Laptop System: LENOVO product: 82Y3 v: Legion Slim 7 16IRH8 serial: <superuser required>
    Chassis: type: 10 v: Legion Slim 7 16IRH8 serial: <superuser required>
  Mobo: LENOVO model: LNVNB161216 v: SDK0T76485 WIN serial: <superuser required> UEFI: LENOVO
Battery:
  ID-1: BAT1 charge: 78.2 Wh (78.0%) condition: 100.2/99.9 Wh (100.3%) volts: 16.7 min: 15.6
    model: Sunwoda L22D4PC3 type: Li-poly serial: <filter> status: Not charging cycles: 10
  Device-1: hidpp_battery_0 model: Logitech Wireless Mouse serial: <filter>
    charge: 55% (should be ignored) rechargeable: yes status: Discharging
CPU:
  Info: 14-core (6-mt/8-st) model: 13th Gen Intel Core i7-13700H bits: 64 type: MST AMCP
    smt: enabled arch: N/A rev: 2 cache: L1: 1.2 MiB L2: 11.5 MiB L3: 24 MiB
  Speed (MHz): avg: 863 high: 1534 min/max: 400/4800:5000:3700 cores: 1: 1229 2: 400 3: 400
    4: 1134 5: 1089 6: 1087 7: 931 8: 1002 9: 1113 10: 401 11: 866 12: 1007 13: 1075 14: 400
    15: 1453 16: 1534 17: 953 18: 400 19: 400 20: 400 bogomips: 116736
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
Graphics:
  Device-1: NVIDIA vendor: Lenovo driver: nvidia v: 545.29.06 pcie: speed: 16 GT/s lanes: 8 ports:
    active: none off: eDP-1 empty: DP-1,HDMI-A-1 bus-ID: 01:00.0 chip-ID: 10de:28e0 class-ID: 0300
  Device-2: Chicony Integrated Camera type: USB driver: uvcvideo bus-ID: 3-7:4
    chip-ID: 04f2:b7b6 class-ID: fe01 serial: <filter>
  Display: x11 server: X.Org v: 1.21.1.4 driver: X: loaded: nvidia
    unloaded: fbdev,modesetting,nouveau,vesa gpu: nvidia display-ID: :0 screens: 1
  Screen-1: 0 s-res: 3200x2000 s-dpi: 239 s-size: 340x220mm (13.4x8.7") s-diag: 405mm (15.9")
  Monitor-1: DP-2 res: 3200x2000 dpi: 5080 size: 16x10mm (0.6x0.4") diag: 19mm (0.7")
  OpenGL: renderer: NVIDIA GeForce RTX 4060 Laptop GPU/PCIe/SSE2 v: 4.6.0 NVIDIA 545.29.06
    direct render: Yes
Audio:
  Device-1: Intel vendor: Lenovo driver: snd_hda_intel v: kernel bus-ID: 00:1f.3
    chip-ID: 8086:51ca class-ID: 0403
  Device-2: NVIDIA vendor: Lenovo driver: snd_hda_intel v: kernel pcie: speed: 16 GT/s lanes: 8
    bus-ID: 01:00.1 chip-ID: 10de:22be class-ID: 0403
  Sound Server-1: ALSA v: k6.5.0-25-generic running: yes
  Sound Server-2: PulseAudio v: 15.99.1 running: yes
  Sound Server-3: PipeWire v: 0.3.48 running: yes
Network:
  Device-1: Intel driver: iwlwifi v: kernel port: N/A bus-ID: 00:14.3 chip-ID: 8086:51f1
    class-ID: 0280
  IF: wlp0s20f3 state: up mac: <filter>
  IF-ID-1: virbr0 state: down mac: <filter>
Bluetooth:
  Device-1: Intel type: USB driver: btusb v: 0.8 bus-ID: 3-10:7 chip-ID: 8087:0033 class-ID: e001
  Report: hciconfig ID: hci0 rfk-id: 0 state: up address: <filter>
Drives:
  Local Storage: total: 1.84 TiB used: 172.72 GiB (9.2%)
  ID-1: /dev/nvme0n1 vendor: Samsung model: MZVL21T0HCLR-00BL2 size: 953.87 GiB speed: 63.2 Gb/s
    lanes: 4 type: SSD serial: <filter> rev: CL1QGXA7 temp: 41.9 C scheme: GPT
  ID-2: /dev/nvme1n1 vendor: Samsung model: SSD 980 1TB size: 931.51 GiB speed: 31.6 Gb/s
    lanes: 4 type: SSD serial: <filter> rev: 3B4QFXO7 temp: 40.9 C scheme: GPT
Partition:
  ID-1: / size: 307.49 GiB used: 172.68 GiB (56.2%) fs: ext4 dev: /dev/nvme1n1p2
  ID-2: /boot/efi size: 256 MiB used: 43.7 MiB (17.1%) fs: vfat dev: /dev/nvme0n1p1
Swap:
  ID-1: swap-1 type: file size: 2 GiB used: 0 KiB (0.0%) priority: -2 file: /swapfile
USB:
  Hub-1: 1-0:1 info: Hi-speed hub with single TT ports: 1 rev: 2.0 speed: 480 Mb/s
    chip-ID: 1d6b:0002 class-ID: 0900
  Hub-2: 2-0:1 info: Super-speed hub ports: 1 rev: 3.1 speed: 20 Gb/s chip-ID: 1d6b:0003
    class-ID: 0900
  Hub-3: 3-0:1 info: Hi-speed hub with single TT ports: 12 rev: 2.0 speed: 480 Mb/s
    chip-ID: 1d6b:0002 class-ID: 0900
  Device-1: 3-1:2 info: Microsoft Xbox360 Controller type: <vendor specific> driver: xpad
    interfaces: 1 rev: 2.0 speed: 12 Mb/s power: 500mA chip-ID: 045e:028e class-ID: ff00
  Device-2: 3-5:3 info: Logitech Unifying Receiver type: Keyboard,Mouse,HID
    driver: logitech-djreceiver,usbhid interfaces: 3 rev: 2.0 speed: 12 Mb/s power: 98mA
    chip-ID: 046d:c52b class-ID: 0300
  Device-3: 3-7:4 info: Chicony Integrated Camera type: Video driver: uvcvideo interfaces: 3
    rev: 2.0 speed: 480 Mb/s power: 500mA chip-ID: 04f2:b7b6 class-ID: fe01 serial: <filter>
  Device-4: 3-8:5 info: Shenzhen Goodix FingerPrint type: <vendor specific> driver: N/A
    interfaces: 1 rev: 2.0 speed: 12 Mb/s power: 100mA chip-ID: 27c6:550a class-ID: ff00
  Device-5: 3-9:6 info: Integrated Express ITE Device(8258) type: Keyboard
    driver: hid-generic,usbhid interfaces: 1 rev: 2.0 speed: 12 Mb/s power: 100mA chip-ID: 048d:c987
    class-ID: 0301
  Device-6: 3-10:7 info: Intel type: Bluetooth driver: btusb interfaces: 2 rev: 2.0
    speed: 12 Mb/s power: 100mA chip-ID: 8087:0033 class-ID: e001
  Hub-4: 4-0:1 info: Super-speed hub ports: 4 rev: 3.1 speed: 10 Gb/s chip-ID: 1d6b:0003
    class-ID: 0900
Sensors:
  System Temperatures: cpu: 27.8 C mobo: N/A gpu: nvidia temp: 45 C
  Fan Speeds (RPM): N/A
Repos:
  Packages: 2726 apt: 2698 flatpak: 28
  No active apt repos in: /etc/apt/sources.list
  Active apt repos in: /etc/apt/sources.list.d/brave-browser-release.list
    1: deb [signed-by=/usr/share/keyrings/brave-browser-archive-keyring.gpg] https: //brave-browser-apt-release.s3.brave.com/ stable main
  Active apt repos in: /etc/apt/sources.list.d/official-package-repositories.list
    1: deb http: //packages.linuxmint.com virginia main upstream import backport
    2: deb http: //archive.ubuntu.com/ubuntu jammy main restricted universe multiverse
    3: deb http: //archive.ubuntu.com/ubuntu jammy-updates main restricted universe multiverse
    4: deb http: //archive.ubuntu.com/ubuntu jammy-backports main restricted universe multiverse
    5: deb http: //security.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse
  Active apt repos in: /etc/apt/sources.list.d/rael-gc-ubuntu-xboxdrv-jammy.list
    1: deb [signed-by=/etc/apt/keyrings/rael-gc-ubuntu-xboxdrv-jammy.gpg] https: //ppa.launchpadcontent.net/rael-gc/ubuntu-xboxdrv/ubuntu jammy main
  Active apt repos in: /etc/apt/sources.list.d/winehq-jammy.sources
    1: deb [arch=amd64 i386] https: //dl.winehq.org/wine-builds/ubuntu jammy main
Info:
  Processes: 409 Uptime: 5h 49m wakeups: 20 Memory: 31.13 GiB used: 2.82 GiB (9.1%) Init: systemd
  v: 249 runlevel: 5 Compilers: gcc: 11.4.0 alt: 11/12 Client: Unknown python3.10 client
  inxi: 3.3.13
-
-
=======================
lsusb (when it is recognised)
=======================

Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 006: ID 048d:c987 Integrated Technology Express, Inc. ITE Device(8258)
Bus 003 Device 005: ID 27c6:550a Shenzhen Goodix Technology Co.,Ltd. FingerPrint
Bus 003 Device 004: ID 04f2:b7b6 Chicony Electronics Co., Ltd Integrated Camera
Bus 003 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 003 Device 007: ID 8087:0033 Intel Corp.

Bus 003 Device 002: ID 045e:028e Microsoft Corp. Xbox360 Controller <<<<<<<<<=****
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

=====================================
lsusb (when Not recognised, i just replugged)
========================================
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 006: ID 048d:c987 Integrated Technology Express, Inc. ITE Device(8258)
Bus 003 Device 005: ID 27c6:550a Shenzhen Goodix Technology Co.,Ltd. FingerPrint
Bus 003 Device 004: ID 04f2:b7b6 Chicony Electronics Co., Ltd Integrated Camera
Bus 003 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 003 Device 007: ID 8087:0033 Intel Corp.

Bus 003 Device 009: ID 2563:0526 ShenZhen ShanWan Technology Co., Ltd. Gamepad *****
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
User avatar
diyliberty
Level 3
Level 3
Posts: 143
Joined: Sat Feb 19, 2022 11:40 am

Re: how to eliminate need of windows reboot to activate Xbox controller

Post by diyliberty »

That is strange. What happens if you unplug it then plug it back in?

Personally I use a knockoff Xbox 360 wireless controller. I have not have any problems with it. I can use it with the wireless dongle or I can use a special USB cable and plug it in. Either way it works fine with my Steam games.
User avatar
MiZoG
Level 8
Level 8
Posts: 2395
Joined: Fri Jan 26, 2018 8:30 pm
Location: Athens, Greece

Re: how to eliminate need of windows reboot to activate Xbox controller

Post by MiZoG »

The manual states that your controller supports 4 different modes indicated by different lighting switchable via the "home" button.
My guess: if you want Linux to detect this controller as "xbox", it has to be in x-input mode, no?
I've no idea how Windows puts it in this mode right away. Optional software? Saved profile?
strikers489
Level 1
Level 1
Posts: 4
Joined: Mon Mar 18, 2024 8:31 am

Re: how to eliminate need of windows reboot to activate Xbox controller

Post by strikers489 »

Hello guys,
Thanks for the inputs, a few eye opening points here! I had no idea my controller supposedly supports 4 modes and i need to do a Phd to make it run! (guess i am getting old now..). Also, i feel a bit stupid for not having read the controller manual before posting here, i usually do a lot of research before asking. Still, that controller manual is actually heavily biased towards the wifi version of this controller, and i use wired USB, half the things there don't apply to my version. Even though so far manual notes did not solve the situation, but i did learn a few new things, feels like a progress in my case, most importantly i learnt this controller gets stuck in Green Mode = Android Mode (which controller maker himself is not sure of? lol?)

So far things i tried:

A) Controller plugged "out", boot Linux-mint, then plug in controller,
-- Always Green, in Android mode, cannot change mode, no matter how long i press home button or any other buttons combinations
-- Then, while plugged in, even if i reboot to Windows, still Green, cant even change modes
-- To change mode, i need to replug into live windows, then controller feels waking in Windows environment, Blue = Xinput mode
-- Ok, system power off

B) Then while controller plugged "In", boot into Windows,
-- Automatic Blue by default (means Xinput)
-- If i do long press of home button, changes to Red = Direct input mode
-- Then i can do long press again, change it to Blue = Xinput mode

C) Now while keeping controller plugged in, reboot to Linux Mint, it starts as Blue = Xinput mode
-- While it is in Blue mode: In lsusb :
Bus 003 Device 009: ID 045e:028e Microsoft Corp. Xbox360 Controller

-- If i do long press of home button, it can go RED = Direct input mode
-- Then while it is in Red Mode, do lsusb :
Bus 003 Device 008: ID 2563:057a ShenZhen ShanWan Technology Co., Ltd. Cosmic Byte Ares Wired Controller

-- And then again, i can do long press of Home button, get it back to Blue = Xinput Mode (so yeah, it can even go back and forth to Blue and Red while plugged into Linux mint, if i was once started in Windows environment first!)

-- BUT, if i unplug controller while in Linux Mint, and replug it, it goes into Green = Android MOde
-- And then again, no matter how long i press Home button, no change
-- I tried all possible permutations and combination of Home+a/b/x/y.. Turbo, Back, home, LS, RS etc.. no results, still green
===
===
===

So far, my lesson is: This controller is oversmart trying to guess-timate which OS it is connected to, and once it goes to Green Mode = Android Mode, it is like in a comma that is does not want to come out of! To make this controller work, somehow need to make this Controller think/recognize it is initiated in Windows environment*** (how?), for that, i also verified xbox drv is running,

sudo apt-get install ubuntu-xboxdrv

sudo systemctl status xboxdrv.service

● xboxdrv.service - Xbox controller driver daemon
Loaded: loaded (/lib/systemd/system/xboxdrv.service; enabled; vendor preset: enabled)
Active: active (running)

EVen while this daemon is running, if i replug the Controller in Linux, it goes into Green Android mode, then no mode switching.
(Do i need to change the vendor preset? )

Btw, oh one more thing!

I tried connecting my older broken controller , Claw Shoot Wired, this one:
https://www.myclaw.in/product/claw-shoo ... er-for-pc/

This is considered a somewhat older/lower/cheaper tech controller, and it supports only 2 modes : Xinput and Direct input
(so maybe one more lesson is, NOT to buy a controller with too many auto modes, especially the Android mode like in Cosmic Byte Area, which controller maker himself is not sure they can support.. lol? it apparently puts that controller in green comma)

But, this older one from claw shoot, always gets recognized as Xbox controller. I discarded this older one because the LS is physically broken, half time not responsive.. but i tried to game on it, it works in steam (i mean the best it can). No problem. I tried to replug it few times, every-time it is recognized as Xbox360 controller (even without the xbox drv installed).
So really, the problem is the specific over-smart cosmic byte controller.

See, my controllers, usually last like 4-5 months on average, if i am lucky, then maybe 8-9 months, so far this one has lasted like 7 months without breaking, so i am somewhat willing to spend time to learn this..

Or else, for most people, i would simply suggest, instead of spending 15 hours trying to learn how to get this controller working, just spend 15 bucks and buy a new controller (older one i think, which is not over-smart stupid like this one!). But then, i have a feeling, in future, newer controllers will be even more over-smart stupid, and we will eventually have to learn things like this (anyways, learning is mostly fun for me)... Thanks for being part of my controller education journey so far, if you guys know/find a fix, let me know.. and if i manage to find one, i will definitely update this post.

Thanks again. Regards.
Post Reply

Return to “Gaming”