Workspaces supports passing through up to 4 gamepads into the Kasm sessions. Participants in shared sessions may also pass through gamepads.
To enable this feature:
allow_kasm_gamepadGroup Setting to
trueprior to launching the session.
Launch a Kasm session.
kasmweb/ubuntu-jammy-desktopimages have several gamepad testing utilities included that may help with troubleshooting. The
:developtag or versioned tags >= to
:1.12.0may be used.
jstest-gtkto test the
gamepadtoolto test the
sdl2interface. Available on amd64 images only.
Open the control panel on the left side of the session, and select Gamepads.
Press any button on the connected Bluetooth or USB gamepad(s). If the browser detects the gamepad(s), an entry will be listed for each device. A dropdown will be visible next to each device representing the virtual device port/index ( 0 - 3 ) mapped within the session. These can be changed as desired.
Gamepads may not be visible if they are in use by another program, browser, or tab. It may be necessary to close those programs then re-open the current browser. It may be helpful to verify the gamepads can be seen using other browser-based gamepad testing utilities
This feature works by connecting to the local USB or Bluetooth gamepads via the browser’s GamepadAPI, then passing the
gamepad events (button presses) into virtual devices mapped inside the container. The virtual gamepads should be
accessible by programs within the session container supporting
sld2 mapping environment variable is defined within the Workspaces Images and may be overridden if desired
either by creating a Custom Image, or by updating the variable
via Docker Run Config.
The virtual gamepad devices are exposed inside the sessions using Xbox controller attributes and use a standard mapping in line with the GamepadAPI Standard Mapping Spec.
Chromium based browsers running inside the Kasm sessions will only pick up a single gamepad running on port/index 3.
L2 and R2 triggers are mapped as buttons that support being pressed/not pressed instead of an analog axis.
Rumble/Haptic feedback is not supported.
The feature is not supported on Docker in Docker (DinD) installs including TrueNAS and Unraid integrations.
The feature is not supported on older linux distros/kernels such as those provided by CentOS 7.