Valve released a new Steam Deck Beta update that includes a useful tweak to its Xbox controller detection.

There’s a bit of a problem with modern Xbox controllers and Bluetooth, where they won’t properly connect up with SteamOS / Linux unless they’ve gone through a firmware update. I’ve seen a lot of support requests about this issue over the years and so it’s good to see Valve highlight it directly. While it’s a Steam Deck Beta Client update, it should apply to other SteamOS devices too.

  • soulsource@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    3
    ·
    9 hours ago

    The worst part is that it is incredibly difficult (impossible?) to update the controller firmware on anything other than an Xbox or a Windows PC…

  • Bluegrass_Addict@lemmy.ca
    link
    fedilink
    arrow-up
    30
    ·
    1 day ago

    I’d personally buy a new controller from anyone that isn’t mucrosoft before I flash new firmware on a controller

    • vateso5074@lemmy.world
      link
      fedilink
      arrow-up
      49
      ·
      1 day ago

      Sometimes new firmware is good, though. The feature recently added to the PS5’s Dualsense that allows them to pair with multiple devices was such a huge QoL change.

      Still fuck Microsoft though.

      • LiveLM@lemmy.zip
        link
        fedilink
        English
        arrow-up
        6
        ·
        13 hours ago

        The 8BitDo Ultimate Wireless 2 also only received full Steam Input capabilities after a couple firmware updates to the Controller and 2.4g dongle.

      • Domi@lemmy.secnd.me
        link
        fedilink
        arrow-up
        3
        ·
        22 hours ago

        The feature recently added to the PS5’s Dualsense that allows them to pair with multiple devices was such a huge QoL change.

        Does that only apply to playstations or can you pair to multiple PCs? Might have to upgrade then.

        • vateso5074@lemmy.world
          link
          fedilink
          arrow-up
          6
          ·
          edit-2
          21 hours ago

          Multiple PCs, or phones even. It’s very nice for using between my console, desktop, and Steam Deck.

          Basically the controller has 4 pairing slots it will remember. The original PS5 it connects to is remembered as slot #1, but you can manually change it by remapping it to a different slot.

          The different slots are activated by holding the home/PS button and one of the 4 face buttons for a couple seconds, or hold it for about 5-ish seconds to enter pairing mode for that slot. Pressing the PS button alone like normal defaults to the last used slot.

          The controller does need to be turned off before switching devices, which can be done just by holding the PS button for 5-ish seconds. But I can be playing a game on PC, get a message from a friend to hop on Nightreign on PS5, disconnect from my PC by holding the PS button for a few seconds, and then press PS+Triangle to turn on the PS5 using the same controller.

          Way better than my previous setup, which was to have 1 dedicated PS5 controller and 1 dedicated PC controller, then bitch and moan if I ever had to unpair/repair the second controller on PC or try to find my USB cord to pair again with PS5.

          Edit: also worth mentioning that you don’t need a PS5 to update the controller firmware, Sony released a firmware updating tool for PC that can be used to update controllers when plugged in using USB.

    • monkeyman512@lemmy.world
      link
      fedilink
      English
      arrow-up
      24
      ·
      1 day ago

      Are you trying to say, “Don’t buy a Xbox controller then flash it”? I can understand the decision to not do business with MS, but I assume most people already possess that controller and are trying make use of what they have.

      This is not a critique, I just don’t understand what you are intending to communicate.

      • Bluegrass_Addict@lemmy.ca
        link
        fedilink
        arrow-up
        7
        ·
        1 day ago

        I assume the new ms firmware will inject copilot into the controller and make it worse. zero trust in anything microsoft

        • LedgeDrop@lemmy.zip
          link
          fedilink
          arrow-up
          10
          ·
          1 day ago

          I’m often reluctant to upgrade firmware. Often because I like to tinker and upgrading firmware (now-a-days) doesn’t allow downgrading. Which is kinda silly (from a technical perspective) as it “forces” you to keep chasing the next updates for hardware I own.

          If my network printer works and addresses all my needs (works on windows, apple, Linux, and Android) - I don’t gain a lot by upgrading the firmware, but I do risk a lot (in terms of compatibility) if I do upgrade (with no downgrade path).

          Like wise with my controller firmware. I only update if it’s something in the internet (printer doesn’t count as it’s firewalled off) or if something is broken/I’m not happy with the device.

      • Psythik@lemmy.world
        link
        fedilink
        arrow-up
        3
        ·
        edit-2
        17 hours ago

        Do they make a pad that is exactly like the upcoming Steam Controller Mk.II, except with two extra face buttons next to B & Y (like an old Sega controller)? It should also have cooling fans for my hands without sacrificing rumble (just like an old Logitech controller I had back in the day).

        Something like that is my dream controller and I’ve been waiting for someone to come along and make it for years. At this point I think I’m going to have to buy a 3D printer, and get in touch with someone who fabricates circuit boards, because I’m tired of waiting.

        • VindictiveJudge@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          12 hours ago

          I don’t care about the fans, but having six face buttons instead of four would be huge for certain things, like emulating certain consoles.

  • MudMan@fedia.io
    link
    fedilink
    arrow-up
    14
    ·
    1 day ago

    It’s hard to fault Steam’s controller layer, but I really wish they finally found a way to parse gyro data from third party controllers without having to run them on Switch mode. That goes for Microsoft and their own drivers. At this point it’s weird to keep pretending the Windows controller APIs are supposed to work on their first party Xbox controllers only.

    • JohnEdwa@sopuli.xyz
      link
      fedilink
      arrow-up
      7
      ·
      edit-2
      21 hours ago

      It’s not possible as xinput doesn’t support gyroscopes, the controller simply doesn’t report that data. The “Switch” mode is setting it to be a mostly standard HID/DirectInput device so that all of those inputs can be accessed, but that requires something (Steam Input) to sit between the controller and the game to map the inputs together, and the game has to also support non-xinput controllers - otherwise you are just mapping them back to xbox inputs. The exception is a game that support directinput… well, directly. Like sim racers etc.

      There is now the option of going “hardware” Steam Input as well, as is done by the HORIPAD for Steam, but it is something the controller has to do.

      • MudMan@fedia.io
        link
        fedilink
        arrow-up
        1
        ·
        13 hours ago

        Yes, I’m aware, that’s why I’m calling out it’s weird that XInput doesn’t support gyro, because we’re a long way away of it being just based on Xbox controller support and a whole bunch of other controllers with a whole bunch of other features now go through it. If MS doesn’t want to add gyro that’s up to them, but Windows supporting it natively is way overdue. Of course at that point older controllers would probably need a firmware update, but hey, we’ll cross that bridge when we get to it.

        In practice the situation we’re having is games are defaulting to Xinput and relying on Steam Input as an intermediate layer for additional features, so the end result is that gyro is… not NOT supported, but often not acknowledged at all, so you end up with a bunch of situations where you have to config gyro manually per game as a bit of a Steam-level hack, and then your controller is all wonky anywhere other than Steam because the way Switch/DI/PS input modes get picked up in non-Steam stuff can be weird.

        And it gets worse in handhelds where you’re absolutely at the mercy of how the manufacturer decided to set up their controller and gyro support, and sometimes need to do a lot of weird stuff to pass it on outside of Steam.

        It’s the jankiest part of controller set up left on PC gaming, and it’s all down to this weird “mom and dad aren’t talking” dance where MS keeps pretending PC controllers are fundamentally Xbox controllers at the XInput layer and Steam is the de facto curator of the controller support but has no interest (and to be frank no expectation or need) to have their controller layer work outside their launcher.

        • JohnEdwa@sopuli.xyz
          link
          fedilink
          arrow-up
          2
          ·
          edit-2
          11 hours ago

          Researching this a bit more, there is an answer in the making already - GameInput. How long that will take to take over from every game using xinput is left to be seen.

          • MudMan@fedia.io
            link
            fedilink
            arrow-up
            1
            ·
            10 hours ago

            That’s interesting, but considering this note:

            We recommend the GameInput API for all new code, regardless of the target platform, because it provides support across all Microsoft platforms (including earlier versions of Windows) and provides superior performance versus legacy APIs.

            For games developed on the GDK for Xbox One, GameInput is the only input API

            I’m really not sure this would do what we both want it to do. If everybody has had a GameInput version of their controller support since last-gen and we’re still getting limited to the XInput feature set I don’t think it sorts out gyro-on-Xinput at all. I am not familiar with the behind the scenes of how modern engine controller code is handled, but this sounds like maybe it’s how games with native PS controller support are doing that, but not necessarily a new standard that will allow the default XInput PC setting of new controllers to pass gyro input to games detecting them as an XInput device. I think it’s more like MS’s answer to Steam Input as an additional layer between the games and the hardware, regardless of what the hardware is using.

            It does show that all the tools are in place. MS has control over all the involved APIs. They could expand the Xbox controller API feature set tomorrow, whether or not they add the hardware feature to their base controller model. They just… don’t. And Steam could deploy a Steam-independent Steam Input driver or software to just take over all controller support on a dedicated full-feature OS layer, but they also don’t (on either Windows or Linux, as far as I can tell).

            Honestly, there are enough workarounds (add games as non-Steam games, use Switch modes and so on), I just bump against the edge cases of it often because I’m both a controller and handheld nerd, so I’m stuck with a GPD Win handheld that insists on injecting their internal gyro as mouse inputs, which confuses the hell out of half the games, along with a bunch of GameSir and Gullikit controllers that do weird things with gyro, like injecting it at the firmware level instead of passing it to the OS. And I mess around with enough emulators to also end up with “oh, this was on DI mode when I booted RetroArch, so now all my buttons are in the wrong places until I quit”. It’s only dumb for like ten of us… but man, is it dumb.

            • JohnEdwa@sopuli.xyz
              link
              fedilink
              arrow-up
              1
              ·
              edit-2
              5 hours ago

              They could expand the Xbox controller API feature set tomorrow

              No, they couldn’t. There’s over 20 years of legacy hardware and software that expects Xinput data to be returned exactly in this format:

              typedef struct _XINPUT_GAMEPAD {
                WORD  wButtons;
                BYTE  bLeftTrigger;
                BYTE  bRightTrigger;
                SHORT sThumbLX;
                SHORT sThumbLY;
                SHORT sThumbRX;
                SHORT sThumbRY;
              } XINPUT_GAMEPAD, *PXINPUT_GAMEPAD;
              

              Changing any of that would break every single xinput controller and game made in the last 20 years. Modifications require a new API, which is exactly what GameInput is.

  • HouseWolf@pawb.social
    link
    fedilink
    English
    arrow-up
    10
    ·
    1 day ago

    I have NEVER heard of any controller before this current generation needing firmware upgrades.

    Even the launch model PS4 controller I use on my PC never asked for an update and still works fine…

    • Sophocles@infosec.pub
      link
      fedilink
      arrow-up
      1
      ·
      10 hours ago

      Same here, been using Xbox series controllers on Linux for about 2 years, no problem. Never bothered to update the firmware.

      • HouseWolf@pawb.social
        link
        fedilink
        English
        arrow-up
        3
        ·
        1 day ago

        I mainly played on PS3 for years from release and that was never a thing…

        The console got plenty of updates but never the controller.

    • mephiska@fedia.io
      link
      fedilink
      arrow-up
      17
      ·
      1 day ago

      Have you ever used that PS4 controller on a PS4? If you did the console would definitely ask you to plug the controller in with a USB cable to update it.

    • MudMan@fedia.io
      link
      fedilink
      arrow-up
      9
      ·
      1 day ago

      I’m almost entirely sure that PS4 and XOne controllers did get upgrades at some points. Definitely Switch 1 ones, which matters or not depending on how you split the gens. There were definitely revisions in older controllers, though. Some were labeled and had obvious new features, some were quieter. And PC-side drivers got updates all the time, obviously.

      Also, your current gen controller will also keep working indefinitely without an update. In this case Valve is annoyed about a particular dependency where THEY need the upgrade to happen for a feature compatibility thing, but the controller proper will work if you plug it in.