@GravenImageRD I see the same error in the logs when steam tries to run the firmware updater tool.
Can you try running this command and share the output here:
sudo ./hardwareupdater.x86_64 --update-all
ryand@Ryan-EndeavourOS hardwareupdater]$ sudo ./hardwareupdater.x86_64 --show-all-devices
{
"version": "1.5",
"updates_available": [
{
"type": 5,
"Name": "Proteus USB",
"hardware_id": 71,
"serial_number": "FXB99627042EE",
"current_ts": "0x69B8A394",
"update_ts": "0x0",
"must_update": true
}
]
}
[ryand@Ryan-EndeavourOS hardwareupdater]$ sudo ./hardwareupdater.x86_64 --update-all
FoundType: Proteus USB SN: FXB99627042EE
UPDATING PROTEUS - SN: FXB99627042EE
ERROR: No device with serial number: FXB99627042EE found in BL
[ryand@Ryan-EndeavourOS hardwareupdater]$
Attaching a log for a run through strace as well
strace.log
As added context, when I run, the OS notifies me the puck has disconnected, then I see it connect in boot loader mode, then it fails. Not a lot to work from, though. Would be good if it had more verbose output to confirm like "Device is restarting in boot loader", "Device reconnected and boot loader mode confirmed", etc. just so it is more obvious at what point in the process it really is failing.
@GravenImageRD since you do see the device go into bootloader mode it seems like we might not be handling state transitions well somewhere. It probably takes the dongle unexpectedly long to switch to the bootloader. Can you collect the output you see when running:
killall steam steamwebhelper
sudo dmesg -c > /dev/null
date
sudo ./hardwareupdater.x86_64 --show-all-devices
sleep 120
sudo ./hardwareupdater.x86_64 --update-all
sleep 120
sudo dmesg -T
? This should give us a bit more clarity on the state transition timeline.
ryand@Ryan-EndeavourOS hardwareupdater]$ killall steam steamwebhelper ; sudo dmesg -c > /dev/null ; date ; sudo ./hardwareupdater.x86_64 --show-all-devices ; sleep 120 ; sudo ./hardwareupdater.x86_64 --update-all ; sleep 120 ; sudo dmesg -T
steam: no process found
steamwebhelper: no process found
Sat Sep 12 09:31:44 AM EDT 2026
{
"version": "1.5",
"updates_available": [
{
"type": 5,
"Name": "Proteus USB",
"hardware_id": 71,
"serial_number": "FXB99627042EE",
"current_ts": "0x69B8A394",
"update_ts": "0x0",
"must_update": true
}
]
}
FoundType: Proteus USB SN: FXB99627042EE
UPDATING PROTEUS - SN: FXB99627042EE
ERROR: No device with serial number: FXB99627042EE found in BL
[Sat Sep 12 09:33:51 2026] usb 1-5: USB disconnect, device number 25
[Sat Sep 12 09:33:52 2026] usb 1-5: new full-speed USB device number 26 using xhci_hcd
[Sat Sep 12 09:33:53 2026] usb 1-5: New USB device found, idVendor=28de, idProduct=1007, bcdDevice= 3.07
[Sat Sep 12 09:33:53 2026] usb 1-5: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[Sat Sep 12 09:33:53 2026] usb 1-5: Product: Steam Controller Bootloader
[Sat Sep 12 09:33:53 2026] usb 1-5: Manufacturer: Valve Software
[Sat Sep 12 09:33:53 2026] usb 1-5: SerialNumber: FXB99627042EE
[Sat Sep 12 09:34:12 2026] usb 1-5: USB disconnect, device number 26
[Sat Sep 12 09:34:13 2026] usb 1-5: new full-speed USB device number 27 using xhci_hcd
[Sat Sep 12 09:34:13 2026] usb 1-5: New USB device found, idVendor=28de, idProduct=1304, bcdDevice= 0.02
[Sat Sep 12 09:34:13 2026] usb 1-5: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[Sat Sep 12 09:34:13 2026] usb 1-5: Product: Steam Ctrl (USB)
[Sat Sep 12 09:34:13 2026] usb 1-5: Manufacturer: Valve Software
[Sat Sep 12 09:34:13 2026] usb 1-5: SerialNumber: FXB99627042EE
[Sat Sep 12 09:34:13 2026] input: Valve Software Steam Ctrl (USB) Mouse as /devices/pci0000:00/0000:00:02.1/0000:05:00.0/0000:06:08.0/0000:08:00.0/0000:09:0c.0/0000:0e:00.0/usb1/1-5/1-5:1.2/0003:28DE:1304.007E/input/input416
[Sat Sep 12 09:34:13 2026] input: Valve Software Steam Ctrl (USB) Keyboard as /devices/pci0000:00/0000:00:02.1/0000:05:00.0/0000:06:08.0/0000:08:00.0/0000:09:0c.0/0000:0e:00.0/usb1/1-5/1-5:1.2/0003:28DE:1304.007E/input/input417
[Sat Sep 12 09:34:13 2026] hid-generic 0003:28DE:1304.007E: input,hiddev101,hidraw8: USB HID v1.11 Mouse [Valve Software Steam Ctrl (USB)] on usb-0000:0e:00.0-5/input2
[Sat Sep 12 09:34:13 2026] input: Valve Software Steam Ctrl (USB) Mouse as /devices/pci0000:00/0000:00:02.1/0000:05:00.0/0000:06:08.0/0000:08:00.0/0000:09:0c.0/0000:0e:00.0/usb1/1-5/1-5:1.3/0003:28DE:1304.007F/input/input419
[Sat Sep 12 09:34:13 2026] input: Valve Software Steam Ctrl (USB) Keyboard as /devices/pci0000:00/0000:00:02.1/0000:05:00.0/0000:06:08.0/0000:08:00.0/0000:09:0c.0/0000:0e:00.0/usb1/1-5/1-5:1.3/0003:28DE:1304.007F/input/input420
[Sat Sep 12 09:34:13 2026] hid-generic 0003:28DE:1304.007F: input,hiddev102,hidraw9: USB HID v1.11 Mouse [Valve Software Steam Ctrl (USB)] on usb-0000:0e:00.0-5/input3
[Sat Sep 12 09:34:13 2026] input: Valve Software Steam Ctrl (USB) Mouse as /devices/pci0000:00/0000:00:02.1/0000:05:00.0/0000:06:08.0/0000:08:00.0/0000:09:0c.0/0000:0e:00.0/usb1/1-5/1-5:1.4/0003:28DE:1304.0080/input/input422
[Sat Sep 12 09:34:13 2026] input: Valve Software Steam Ctrl (USB) Keyboard as /devices/pci0000:00/0000:00:02.1/0000:05:00.0/0000:06:08.0/0000:08:00.0/0000:09:0c.0/0000:0e:00.0/usb1/1-5/1-5:1.4/0003:28DE:1304.0080/input/input423
[Sat Sep 12 09:34:13 2026] hid-generic 0003:28DE:1304.0080: input,hiddev103,hidraw10: USB HID v1.11 Mouse [Valve Software Steam Ctrl (USB)] on usb-0000:0e:00.0-5/input4
[Sat Sep 12 09:34:13 2026] input: Valve Software Steam Ctrl (USB) Mouse as /devices/pci0000:00/0000:00:02.1/0000:05:00.0/0000:06:08.0/0000:08:00.0/0000:09:0c.0/0000:0e:00.0/usb1/1-5/1-5:1.5/0003:28DE:1304.0081/input/input425
[Sat Sep 12 09:34:13 2026] input: Valve Software Steam Ctrl (USB) Keyboard as /devices/pci0000:00/0000:00:02.1/0000:05:00.0/0000:06:08.0/0000:08:00.0/0000:09:0c.0/0000:0e:00.0/usb1/1-5/1-5:1.5/0003:28DE:1304.0081/input/input426
[Sat Sep 12 09:34:13 2026] hid-generic 0003:28DE:1304.0081: input,hiddev104,hidraw11: USB HID v1.11 Mouse [Valve Software Steam Ctrl (USB)] on usb-0000:0e:00.0-5/input5
[Sat Sep 12 09:34:13 2026] hid-generic 0003:28DE:1304.0082: hiddev105,hidraw12: USB HID v1.11 Device [Valve Software Steam Ctrl (USB)] on usb-0000:0e:00.0-5/input6
[ryand@Ryan-EndeavourOS hardwareupdater]$
I can reproduce this firmware update issue on CachyOS.
Linux 7.2.0-1-cachyossteam 1.0.0.87-31.0.0.87-3178865221526.2.1The Steam Controller Puck is detected correctly:
Bus 007 Device 031: ID 28de:1304 Valve Software Steam Controller Puck
hardwareupdater.x86_64 --show-all-devices detects the puck as Proteus USB with hardware_id: 71.
Both update methods fail identically.
--update-by-serial$ sudo ./hardwareupdater.x86_64 --update-by-serial '<REDACTED>'
Found Type: Proteus USB SN: <REDACTED>
UPDATING PROTEUS - SN: <REDACTED>
ERROR: No device with serial number: <REDACTED> found in BL
Exit code: 255
--update-all$ sudo ./hardwareupdater.x86_64 --update-all
FoundType: Proteus USB SN: <REDACTED>
UPDATING PROTEUS - SN: <REDACTED>
ERROR: No device with serial number: <REDACTED> found in BL
Exit code: 255
So --update-all does not work around the problem on my system. The updater detects the puck before entering the bootloader/update stage, but then fails to find the same device in BL mode.
$ killall steam steamwebhelper
steam: no process found
steamwebhelper: no process found
$ sudo dmesg -c > /dev/null
$ date
Mo 14. Sep 17:29:38 CEST 2026
$ sudo ./hardwareupdater.x86_64 --show-all-devices
{
"version": "1.5",
"updates_available": [
{
"type": 5,
"Name": "Proteus USB",
"hardware_id": 71,
"serial_number": "<REDACTED_SERIAL>",
"current_ts": "0x6A4423DE",
"update_ts": "0x0",
"must_update": false
}
]
}
$ sudo ./hardwareupdater.x86_64 --update-all
FoundType: Proteus USB SN: <REDACTED_SERIAL>
UPDATING PROTEUS - SN: <REDACTED_SERIAL>
ERROR: No device with serial number: <REDACTED_SERIAL> found in BL
$ sudo dmesg -T
[Di Sep 22 11:23:56 2026] usb 1-1.1: USB disconnect, device number 28
[Di Sep 22 11:23:57 2026] usb 1-1.1: new full-speed USB device number 29 using xhci_hcd
[Di Sep 22 11:23:57 2026] usb 1-1.1: New USB device found, idVendor=28de, idProduct=1007, bcdDevice= 3.07
[Di Sep 22 11:23:57 2026] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[Di Sep 22 11:23:57 2026] usb 1-1.1: Product: Steam Controller Bootloader
[Di Sep 22 11:23:57 2026] usb 1-1.1: Manufacturer: Valve Software
[Di Sep 22 11:23:57 2026] usb 1-1.1: SerialNumber: <REDACTED_SERIAL>
[Di Sep 22 11:24:17 2026] usb 1-1.1: USB disconnect, device number 29
[Di Sep 22 11:24:17 2026] usb 1-1.1: new full-speed USB device number 30 using xhci_hcd
[Di Sep 22 11:24:18 2026] usb 1-1.1: New USB device found, idVendor=28de, idProduct=1304, bcdDevice= 0.02
[Di Sep 22 11:24:18 2026] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[Di Sep 22 11:24:18 2026] usb 1-1.1: Product: Steam Controller Puck
[Di Sep 22 11:24:18 2026] usb 1-1.1: Manufacturer: Valve Software
[Di Sep 22 11:24:18 2026] usb 1-1.1: SerialNumber: <REDACTED_SERIAL>
[Di Sep 22 11:24:18 2026] input: Valve Software Steam Controller Puck Mouse as /devices/pci0000:00/0000:00:08.1/0000:c2:00.4/usb1/1-1/1-1.1/1-1.1:1.2/0003:28DE:1304.01F7/input/input223
[Di Sep 22 11:24:18 2026] input: Valve Software Steam Controller Puck Keyboard as /devices/pci0000:00/0000:00:08.1/0000:c2:00.4/usb1/1-1/1-1.1/1-1.1:1.2/0003:28DE:1304.01F7/input/input224
[Di Sep 22 11:24:18 2026] hid-generic 0003:28DE:1304.01F7: input,hiddev97,hidraw2: USB HID v1.11 Mouse [Valve Software Steam Controller Puck] on usb-0000:c2:00.4-1.1/input2
[Di Sep 22 11:24:18 2026] input: Valve Software Steam Controller Puck Mouse as /devices/pci0000:00/0000:00:08.1/0000:c2:00.4/usb1/1-1/1-1.1/1-1.1:1.3/0003:28DE:1304.01F8/input/input226
[Di Sep 22 11:24:18 2026] input: Valve Software Steam Controller Puck Keyboard as /devices/pci0000:00/0000:00:08.1/0000:c2:00.4/usb1/1-1/1-1.1/1-1.1:1.3/0003:28DE:1304.01F8/input/input227
[Di Sep 22 11:24:18 2026] hid-generic 0003:28DE:1304.01F8: input,hiddev100,hidraw7: USB HID v1.11 Mouse [Valve Software Steam Controller Puck] on usb-0000:c2:00.4-1.1/input3
[Di Sep 22 11:24:18 2026] input: Valve Software Steam Controller Puck Mouse as /devices/pci0000:00/0000:00:08.1/0000:c2:00.4/usb1/1-1/1-1.1/1-1.1:1.4/0003:28DE:1304.01F9/input/input229
[Di Sep 22 11:24:18 2026] input: Valve Software Steam Controller Puck Keyboard as /devices/pci0000:00/0000:00:08.1/0000:c2:00.4/usb1/1-1/1-1.1/1-1.1:1.4/0003:28DE:1304.01F9/input/input230
[Di Sep 22 11:24:18 2026] hid-generic 0003:28DE:1304.01F9: input,hiddev101,hidraw8: USB HID v1.11 Mouse [Valve Software Steam Controller Puck] on usb-0000:c2:00.4-1.1/input4
[Di Sep 22 11:24:18 2026] input: Valve Software Steam Controller Puck Mouse as /devices/pci0000:00/0000:00:08.1/0000:c2:00.4/usb1/1-1/1-1.1/1-1.1:1.5/0003:28DE:1304.01FA/input/input232
[Di Sep 22 11:24:18 2026] input: Valve Software Steam Controller Puck Keyboard as /devices/pci0000:00/0000:00:08.1/0000:c2:00.4/usb1/1-1/1-1.1/1-1.1:1.5/0003:28DE:1304.01FA/input/input233
[Di Sep 22 11:24:18 2026] hid-generic 0003:28DE:1304.01FA: input,hiddev102,hidraw9: USB HID v1.11 Mouse [Valve Software Steam Controller Puck] on usb-0000:c2:00.4-1.1/input5
[Di Sep 22 11:24:18 2026] hid-generic 0003:28DE:1304.01FB: hiddev103,hidraw10: USB HID v1.11 Device [Valve Software Steam Controller Puck] on usb-0000:c2:00.4-1.1/input6
Note: The dmesg -T calendar timestamps are incorrect on this system after suspend/resume. The test was actually performed on 2026-09-14; only the displayed wall-clock dates are wrong.
@GravenImageRD we have one more thing we'd like you to test, but we'd prefer to do that over a support ticket.
In the ticket description you can just paste "@lostgoat asked me to open this ticket for controller firmware update testing" and add link to this issue. We'll contact you there for the test follow-up.
I can reproduce this firmware update issue on CachyOS.
Follow-up: in my case, the firmware updater failure turned out to be caused by a kernel/modules version mismatch after a kernel update without rebooting.
I was still running:
Linux 7.2.0-1-cachyos
while the installed kernel package had already been updated to:
linux-cachyos 7.2.2-1
CONFIG_USB_ACM=m was enabled, but cdc_acm could not be loaded because /usr/lib/modules/7.2.0-1-cachyos no longer existed. The installed package only contained:
/usr/lib/modules/7.2.2-1-cachyos/kernel/drivers/usb/class/cdc-acm.ko.zst
This matched what I saw during the failed update: the puck successfully re-enumerated as:
28de:1007 Valve Software Steam Controller Bootloader
with CDC ACM interfaces, but neither interface had a bound driver and no ttyACM device was created.
After rebooting into the updated kernel so that the running kernel matched the installed modules, the firmware update succeeded and the puck was flashed successfully.
If you hit the same error:
ERROR: No device with serial number: <REDACTED> found in BL
check whether the running kernel still has a matching module directory:
uname -r
ls /usr/lib/modules/
Then verify whether cdc_acm is available:
modinfo cdc_acm
If modinfo reports that the module cannot be found and the running kernel version does not match the installed kernel/module directory, reboot into the updated kernel.
After rebooting, verify:
uname -r
modinfo cdc_acm
sudo modprobe cdc_acm
Then retry the firmware update from Steam's hardware updater directory:
cd ~/.local/share/Steam/bin/hardwareupdater
sudo ./hardwareupdater.x86_64 --update-all
In my case, no package downgrade, udev change, or manual firmware workaround was required. A reboot into the currently installed kernel was sufficient.
So at least in my case, this was not an Arch-specific updater bug but a stale running kernel after a kernel package update.
Sorry for the slow response, was out of town for the week but the good news is that after having my PC completely shut down for the week while I was gone when I came back, turned it on, and blindly told Steam to update the puck.. It worked just fine.. No idea why. Nothing should have changed in my environment or anything. Just.. Magically worked. Controller updated fine as well. This actually frustrates me rather than making me happy, because now I can't help y'all figure out why it wasn't working in the first place.
Your system information
Please describe your issue in as much detail as possible:
Got a brand new Steam Controller, plugged it in to update the firmware, updater starts and then fails to update. I tried all advice in https://github.com/ValveSoftware/steam-for-linux/issues/13171 as well, and this is what I get when running the updater manually via CLI
I also ran the command using strace, here's the log for that strace.log
Steps for reproducing this issue: