Alright so I been daily driving Linux for a couple months now and it’s been pretty smooth going.
Today I felt nostalgic and wanted to play Dark Souls 2. And it absolutely didn’t recognize my controller. This is the first time I had such an issue with the Steam Controller and I didn’t know what to do.
Tried the usual suspects but nothing, and i had to give up. I tried googling, found no results, uninstalled. But I wasn’t happy, so I googled again and found the solution.
Apparently my Keychron keyboard is the issue? So quick exception added and it works. Still wondering why this isn’t an issue in any other game tho…

  • Sanctus@anarchist.nexus
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    2 days ago

    See if you can tell if your box is reading your keyboard as a joypad. Mine was doing that and it would take 1st player slot on some games like rain world. It was also picking up my puck as a virtual Xbox controller for some reason. You can set it in like udev to not recognize it like that. Not sure if thats the issue but I had something similar with my qmk kbd75 rev2 and thats what I had to do.

    • ThunderComplex@lemmy.todayOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      2 days ago

      Yea apparently according to the Steam guide I found Keychron keyboards are detected as joysticks so it would take priority over the SC.
      What confuses me tho is why especially this brand and why only in this game?
      Eh I guess don’t look a gifted horse in the launch options or something

      • Sanctus@anarchist.nexus
        link
        fedilink
        English
        arrow-up
        0
        ·
        2 days ago

        Lol its the microcontroller used I think? For whatever reason it registers in udev as a joypad as well as a keyboard. Its a simple edit in udev to get it fixed but I only did it once in my life so its not in my memory. If you want I can paste my udev edit when I get home tonight.

        • ThunderComplex@lemmy.todayOP
          link
          fedilink
          English
          arrow-up
          0
          ·
          2 days ago

          Thanks but I can figure it out myself. (Prolly am gonna forget about this tho until it becomes an issue again).

            • steelplatedmech@piefed.ca
              link
              fedilink
              English
              arrow-up
              0
              ·
              5 hours ago

              Could you post your solution here when you get the time? Don’t have the issue, but would love to know how udev was used to solve the issue for if I ever encounter the problem myself.

              • Sanctus@anarchist.nexus
                link
                fedilink
                English
                arrow-up
                0
                ·
                4 hours ago

                Sure but it is per device, I am basically telling my system “this is not a joypad”. Its just a rule in udev. You’d need to get these values from your own device. Each vendor and product will have one.

                # KBD75 Rev2  
                SUBSYSTEM=="input", ATTRS{idVendor}=="4b42", ATTRS{idProduct}=="6061", 
                ENV{ID_INPUT_JOYSTICK}=""
                
                • steelplatedmech@piefed.ca
                  link
                  fedilink
                  English
                  arrow-up
                  0
                  ·
                  4 hours ago

                  Thank you for the example. I have the same keyboard brand too so definitely nice to have. I think I can use lsusb to find my values.