Netruk44/wolverine-v3-pro-linux

SteamOS driver to enable bindable back paddle buttons for the Razer Wolverine v3 Pro Xbox controller.

2

stars

57

commits

Python

primary language

Aug 13, 2026

updated

controller
linux-kernel
linux-kernel-driver
razer
steam-input
steamos

README

Razer Wolverine V3 Pro wired support for SteamOS

This project lets you use a Razer Wolverine V3 Pro's back paddles as independent bindable controls inside Steam.

The setup tool currently supports SteamOS only. This project does not provide setup steps for other Linux systems yet.

[!WARNING] This project was made using AI assistance extensively. I am not a Linux driver expert.

If this is a severe concern for you, please do not use or share this project.

Effort has been made to document all aspects of how this project works so that those who want to know may easily understand it.

What works

The wired controller has been tested on a 2026 Steam Machine with the SteamOS versions listed under Compatibility. It has not been tested on a Steam Deck. The setup tool installs and manages the controller driver for you.

Confirmed to work:

  • Standard controller inputs, including Menu (Start), View (Select), Home, and Record.
  • M3, M4, M5, and M6 function as Steam Input controls L4, R4, L5, and R5.
  • The option to temporarily use the driver only until the next restart.
  • Permanent setup that continues to work after a normal restart.
  • A safe return to the SteamOS driver after a SteamOS update.
  • Setup with the controller, Steam's Desktop Layout, and the on-screen keyboard.

This project makes no permanent changes to your controller, however it does put the controller into an undocumented mode that official controller firmware exposes, and therefore should still be considered experimental.

You should be aware of the issues covered in Known Limitations before installing and using the driver.

Before you install

Supported setup

  • Internet connection is required to download the Linux kernel source for your OS.
  • You will need about 10 GB of free space in your home directory.
    • The size changes depending on your installed version of SteamOS.
    • The script will give you an exact size when you run it.
  • The only supported controller is the Razer Wolverine V3 Pro for Xbox. Its USB ID is 1532:0a3f.
  • You must connect the controller with a USB cable directly to the machine.
    • USB hubs have not been tested yet.
    • The driver only makes the rear paddle buttons available with a cable connection.
    • The controller will still work with the wireless dongle, but you won't be able to bind the back paddle buttons in Steam.
  • Support is tied to the exact SteamOS versions listed under Compatibility.
    • On a newer, untested SteamOS version, the tool will make a best-effort attempt to build the driver for the untested version of SteamOS. This version will be marked local-provisional.
  • Rear-paddle support puts the controller in a special mode. In this mode, you cannot change button mappings on the controller, and all buttons use their original, default mappings.
    • Your saved mappings return when the controller is disconnected from USB.

Known limitations

These limitations were observed on a 2026 Steam Machine.

  • M1 and M2 are not supported Steam Input bindable controls.
  • You will need to unplug and reconnect the controller after:
    • Enabling or disabling the driver.
    • A reboot.
    • Resuming from sleep.
  • You will need to restart Steam after enabling or disabling the driver.
  • Controller lighting will remain dark for several seconds after connection.
    • The controls still work during this time.
    • Your lighting profile will return after approximately 30 seconds.

Read Known issues and limitations for the complete list of known problems and workarounds.

Quick start

In SteamOS Desktop Mode, run these commands in the terminal. All prerequisites should already be installed on SteamOS. Make sure to set a sudo password for your SteamOS user before you begin.

Clone the project and enter its directory:

git clone https://github.com/Netruk44/wolverine-v3-pro-linux.git
cd wolverine-v3-pro-linux

If you downloaded a GitHub source archive instead, unpack it and open a terminal in that directory.

To get started, run:

./wolverine-gip status

This command checks whether your system is supported and whether the driver is installed. It does not make any changes.

If supported, then run:

./wolverine-gip

This command opens the setup menu.

Choose Set up controller support, then choose:

  • Temporary to use the new driver until your next restart.
  • Permanent to continue using it after future restarts.
    • Important: After a SteamOS kernel update, your system will return to the default SteamOS driver (and you will no longer be able to bind the back paddle buttons in Steam).
    • You will need to run ./wolverine-gip update to build and enable a new matching driver.

The tool checks your SteamOS version, downloads and verifies the files it needs, builds the driver, and checks the result. The tool will ask before each download or system change.

After setup:

  1. Reconnect the controller (if it was already connected)
  2. Restart Steam (if it was already running)
  3. Open Steam's controller test and verify the four rear paddles show up.

See Guided setup and updates for instructions on using the menu with a controller, managing the driver, and updating SteamOS.

Optional: pause for manual review after each setup step

If you'd like to manually review each step before the tool builds or installs the driver, use:

./wolverine-gip setup --stepwise

This will start the setup process in stepwise mode. The first step will collect your system information into a json file, then exit so you can review the collected information.

Once you've reviewed everything, to continue with the next step run:

./wolverine-gip resume

Each resume command moves the setup forward by no more than one step. At that point it will exit and you can review.

Continue to run ./wolverine-gip resume until the tool reports that the installation process is completed.

See Guided setup and updates for details about the reports this creates.

Updates, recovery, and everyday commands

GoalCommand
Open the guided menu./wolverine-gip
Set up support directly./wolverine-gip setup
Check compatibility, controller, and installation status./wolverine-gip status
Create a full status report with common private details removed./wolverine-gip status --json
Rebuild and turn the driver back on after a SteamOS update./wolverine-gip update
Repair the permanent setup and rebuild if needed./wolverine-gip repair
Return to the SteamOS driver but keep the built driver./wolverine-gip rollback
Return to the SteamOS driver and remove installed files./wolverine-gip uninstall
Preview removal of saved downloads and build files./wolverine-gip cleanup

Rollback keeps the built driver so you can use it again. Uninstall removes the installed files. Neither command removes saved downloads or build reports.

The cleanup command shows what it will remove before it removes anything. See Downloaded and built file cleanup for details.

Getting help

Start with:

./wolverine-gip status

If you need more detail, create a report that includes messages from SteamOS since the last restart:

./wolverine-gip status --include-logs --json

The tool removes common details that could identify your system. It never uploads the report. Read the report before you share it. When you report a problem, include what happened, which action failed, and the report. Use the GitHub issue tracker and its bug-report form.

See Status reports and troubleshooting for more help.

Safety and recovery

The setup tool creates a separate driver for your current SteamOS version. It never replaces the driver that comes with SteamOS. It leaves protected SteamOS files and security settings alone.

SteamOS may show a warning because this driver does not come with the operating system. If SteamOS rejects it, the tool will stop.

The driver is easily reversible and removable without affecting your system. The temporary install is removed after a reboot, and the permanent version can be removed with the rollback and uninstall commands in the setup tool.

Your controller will return to usual functionality once disconnected from USB.

Compatibility

The following versions have been tested on Steam Machine hardware and are confirmed to work.

You do not need to compare the long version numbers below. Run ./wolverine-gip status to check your system. The tool checks for an exact match.

SteamOS versionExact version checked by the toolTest report
3.8.16 Stable, build 20260716.16.16.12-valve24.5-1-neptune-616-gb2f7cfe85e45Stable transition report
3.8.25 Beta, build 20260807.26.18.42-valve2-1-neptune-618-gaf6356cf2488Beta transition report
Development baseline; SteamOS build not recorded6.16.12-drmexec7-valve24.5-1-neptune-616-drm-exec-gf253f5da553eBaseline record

Only these exact versions have been tested. The setup tool reads its list from build-support/steamos/targets.json.

Technical overview

The Wolverine reports its rear controls in a volatile (temporary) diagnostic mode. The SteamOS xbox_gip patch series enables that mode for USB device 1532:0a3f, maps M3-M6 to Linux's standard grip-button codes, and preserves the controller's navigation buttons.

Controller controlLinux input codeSteam Input
M3 / upper-left rearBTN_GRIPLL4
M4 / upper-right rearBTN_GRIPRR4
M5 / lower-left rearBTN_GRIPL2L5
M6 / lower-right rearBTN_GRIPR2R5

Builds are bound to the exact running kernel, packaged stock-module identity, Valve source revision, ordered patch hashes, and pinned container definition. Known targets reuse recorded inputs; provisional results remain visibly distinct from repository hardware validation.

Detailed designs and evidence live under docs/. Contributors should read CONTRIBUTING.md, and repository maintainers should read MAINTAINERS.md.

Release history is recorded in CHANGELOG.md.

License

Unless a file states otherwise, this project is licensed under the GNU General Public License, version 2 or, at your option, any later version. Kernel patches remain subject to the license of the Linux source they modify. See LICENSE.

Contributors

Netruk44

57 commits

Netruk44/wolverine-v3-pro-linux

SteamOS driver to enable bindable back paddle buttons for the Razer Wolverine v3 Pro Xbox controller.

2

stars

57

commits

Python

primary language

Aug 13, 2026

updated

controller
linux-kernel
linux-kernel-driver
razer
steam-input
steamos

README

Razer Wolverine V3 Pro wired support for SteamOS

This project lets you use a Razer Wolverine V3 Pro's back paddles as independent bindable controls inside Steam.

The setup tool currently supports SteamOS only. This project does not provide setup steps for other Linux systems yet.

[!WARNING] This project was made using AI assistance extensively. I am not a Linux driver expert.

If this is a severe concern for you, please do not use or share this project.

Effort has been made to document all aspects of how this project works so that those who want to know may easily understand it.

What works

The wired controller has been tested on a 2026 Steam Machine with the SteamOS versions listed under Compatibility. It has not been tested on a Steam Deck. The setup tool installs and manages the controller driver for you.

Confirmed to work:

  • Standard controller inputs, including Menu (Start), View (Select), Home, and Record.
  • M3, M4, M5, and M6 function as Steam Input controls L4, R4, L5, and R5.
  • The option to temporarily use the driver only until the next restart.
  • Permanent setup that continues to work after a normal restart.
  • A safe return to the SteamOS driver after a SteamOS update.
  • Setup with the controller, Steam's Desktop Layout, and the on-screen keyboard.

This project makes no permanent changes to your controller, however it does put the controller into an undocumented mode that official controller firmware exposes, and therefore should still be considered experimental.

You should be aware of the issues covered in Known Limitations before installing and using the driver.

Before you install

Supported setup

  • Internet connection is required to download the Linux kernel source for your OS.
  • You will need about 10 GB of free space in your home directory.
    • The size changes depending on your installed version of SteamOS.
    • The script will give you an exact size when you run it.
  • The only supported controller is the Razer Wolverine V3 Pro for Xbox. Its USB ID is 1532:0a3f.
  • You must connect the controller with a USB cable directly to the machine.
    • USB hubs have not been tested yet.
    • The driver only makes the rear paddle buttons available with a cable connection.
    • The controller will still work with the wireless dongle, but you won't be able to bind the back paddle buttons in Steam.
  • Support is tied to the exact SteamOS versions listed under Compatibility.
    • On a newer, untested SteamOS version, the tool will make a best-effort attempt to build the driver for the untested version of SteamOS. This version will be marked local-provisional.
  • Rear-paddle support puts the controller in a special mode. In this mode, you cannot change button mappings on the controller, and all buttons use their original, default mappings.
    • Your saved mappings return when the controller is disconnected from USB.

Known limitations

These limitations were observed on a 2026 Steam Machine.

  • M1 and M2 are not supported Steam Input bindable controls.
  • You will need to unplug and reconnect the controller after:
    • Enabling or disabling the driver.
    • A reboot.
    • Resuming from sleep.
  • You will need to restart Steam after enabling or disabling the driver.
  • Controller lighting will remain dark for several seconds after connection.
    • The controls still work during this time.
    • Your lighting profile will return after approximately 30 seconds.

Read Known issues and limitations for the complete list of known problems and workarounds.

Quick start

In SteamOS Desktop Mode, run these commands in the terminal. All prerequisites should already be installed on SteamOS. Make sure to set a sudo password for your SteamOS user before you begin.

Clone the project and enter its directory:

git clone https://github.com/Netruk44/wolverine-v3-pro-linux.git
cd wolverine-v3-pro-linux

If you downloaded a GitHub source archive instead, unpack it and open a terminal in that directory.

To get started, run:

./wolverine-gip status

This command checks whether your system is supported and whether the driver is installed. It does not make any changes.

If supported, then run:

./wolverine-gip

This command opens the setup menu.

Choose Set up controller support, then choose:

  • Temporary to use the new driver until your next restart.
  • Permanent to continue using it after future restarts.
    • Important: After a SteamOS kernel update, your system will return to the default SteamOS driver (and you will no longer be able to bind the back paddle buttons in Steam).
    • You will need to run ./wolverine-gip update to build and enable a new matching driver.

The tool checks your SteamOS version, downloads and verifies the files it needs, builds the driver, and checks the result. The tool will ask before each download or system change.

After setup:

  1. Reconnect the controller (if it was already connected)
  2. Restart Steam (if it was already running)
  3. Open Steam's controller test and verify the four rear paddles show up.

See Guided setup and updates for instructions on using the menu with a controller, managing the driver, and updating SteamOS.

Optional: pause for manual review after each setup step

If you'd like to manually review each step before the tool builds or installs the driver, use:

./wolverine-gip setup --stepwise

This will start the setup process in stepwise mode. The first step will collect your system information into a json file, then exit so you can review the collected information.

Once you've reviewed everything, to continue with the next step run:

./wolverine-gip resume

Each resume command moves the setup forward by no more than one step. At that point it will exit and you can review.

Continue to run ./wolverine-gip resume until the tool reports that the installation process is completed.

See Guided setup and updates for details about the reports this creates.

Updates, recovery, and everyday commands

GoalCommand
Open the guided menu./wolverine-gip
Set up support directly./wolverine-gip setup
Check compatibility, controller, and installation status./wolverine-gip status
Create a full status report with common private details removed./wolverine-gip status --json
Rebuild and turn the driver back on after a SteamOS update./wolverine-gip update
Repair the permanent setup and rebuild if needed./wolverine-gip repair
Return to the SteamOS driver but keep the built driver./wolverine-gip rollback
Return to the SteamOS driver and remove installed files./wolverine-gip uninstall
Preview removal of saved downloads and build files./wolverine-gip cleanup

Rollback keeps the built driver so you can use it again. Uninstall removes the installed files. Neither command removes saved downloads or build reports.

The cleanup command shows what it will remove before it removes anything. See Downloaded and built file cleanup for details.

Getting help

Start with:

./wolverine-gip status

If you need more detail, create a report that includes messages from SteamOS since the last restart:

./wolverine-gip status --include-logs --json

The tool removes common details that could identify your system. It never uploads the report. Read the report before you share it. When you report a problem, include what happened, which action failed, and the report. Use the GitHub issue tracker and its bug-report form.

See Status reports and troubleshooting for more help.

Safety and recovery

The setup tool creates a separate driver for your current SteamOS version. It never replaces the driver that comes with SteamOS. It leaves protected SteamOS files and security settings alone.

SteamOS may show a warning because this driver does not come with the operating system. If SteamOS rejects it, the tool will stop.

The driver is easily reversible and removable without affecting your system. The temporary install is removed after a reboot, and the permanent version can be removed with the rollback and uninstall commands in the setup tool.

Your controller will return to usual functionality once disconnected from USB.

Compatibility

The following versions have been tested on Steam Machine hardware and are confirmed to work.

You do not need to compare the long version numbers below. Run ./wolverine-gip status to check your system. The tool checks for an exact match.

SteamOS versionExact version checked by the toolTest report
3.8.16 Stable, build 20260716.16.16.12-valve24.5-1-neptune-616-gb2f7cfe85e45Stable transition report
3.8.25 Beta, build 20260807.26.18.42-valve2-1-neptune-618-gaf6356cf2488Beta transition report
Development baseline; SteamOS build not recorded6.16.12-drmexec7-valve24.5-1-neptune-616-drm-exec-gf253f5da553eBaseline record

Only these exact versions have been tested. The setup tool reads its list from build-support/steamos/targets.json.

Technical overview

The Wolverine reports its rear controls in a volatile (temporary) diagnostic mode. The SteamOS xbox_gip patch series enables that mode for USB device 1532:0a3f, maps M3-M6 to Linux's standard grip-button codes, and preserves the controller's navigation buttons.

Controller controlLinux input codeSteam Input
M3 / upper-left rearBTN_GRIPLL4
M4 / upper-right rearBTN_GRIPRR4
M5 / lower-left rearBTN_GRIPL2L5
M6 / lower-right rearBTN_GRIPR2R5

Builds are bound to the exact running kernel, packaged stock-module identity, Valve source revision, ordered patch hashes, and pinned container definition. Known targets reuse recorded inputs; provisional results remain visibly distinct from repository hardware validation.

Detailed designs and evidence live under docs/. Contributors should read CONTRIBUTING.md, and repository maintainers should read MAINTAINERS.md.

Release history is recorded in CHANGELOG.md.

License

Unless a file states otherwise, this project is licensed under the GNU General Public License, version 2 or, at your option, any later version. Kernel patches remain subject to the license of the Linux source they modify. See LICENSE.

Contributors

Netruk44

57 commits

Languages

Python

98.1%

Shell

1.6%