opensdd(1)

OPENSDD(1) opensdd OPENSDD(1)

NAME

opensdd - A highly-configurable open-source userspace driver daemon for Valve's Steam Deck.

SYNOPSIS

opensdd [options]

DESCRIPTION

OpenSD is a highly-configurable userspace driver for the Steam Deck written in modern C++. It aims to be lighweight, very fast and provide a way to fully utilize the hardware without running any closed-source, proprietary or anti-privacy software like Steam.

At the time of writing, there is no way to utilize the gamepad portion (buttons, thumbsticks, gyros, etc.) of the Steam Deck without also having to run Steam, since Steam implements an unpublished, undocumented, closed-source userspace driver to make it all work. This means signing into an online service to access basic hardware functionality on a device that you own.

This goal of this software is to provide a better, fully open-source implementation; ultimately unlocking the hardware to be used freely and unencumbered any by proprietary requirements.

OPTIONS

-h --help

Display help screen.

-v --version

Output version number and exit.

-l --log-level <log level>

Set minumum logging level. Valid options are: verbose, debug, info, warn, error. (Default: warn)

FILES

${XDG_CONFIG_HOME}/opensd/config.ini

User configuration for the OpenSD daemon.

${XDG_CONFIG_HOME}/opensd/profiles/*.profile

User-configurable gamepad profiles.

ONLINE DOCUMENTATION

<https://open-sd.gitlab.io/opensd-docs>

RUNNING OPENSD

OpenSD is intended to be run as a user-level service, but it can be run from a terminal like most other Linux programs. This can be useful for troubleshooting or debugging purposes since every message is logged to stdout.

OpenSD requires access to the uinput and hidraw subsystems. To enable this access, OpenSD provides a udev rule which will be installed when installing OpenSD. In this rule, access is allowed to both subsystem for members of the opensd group, which is also created on install. Any user that intends to run OpenSD must be a member of this group, or otherwise have R/W access to these device nodes. After installing for the first time it will be necessary to log out in order for the user’s group changes to take effect.

For more information see the Troubleshooting section.


Warning

Do NOT run the OpenSD daemon as root, either directly or as a system service.



From a terminal

$ opensdd

Will start an instance of the daemon and log all output to the terminal. The default log level is WARN.

Or to see debug messages run:

$ opensdd -l debug

A full list of command line options can be shown using:

$ opensdd --help



As a User-Level Service

For systemd users, a service file is provided which can be run as a user-level service that will automatically start on log-in.

To run the OpenSD daemon as a service on user log-in:

$ systemctl --user enable opensd
$ systemctl --user start opensd



PROJECT HOME

<https://gitlab.com/open-sd/opensd>

AUTHOR

seek ( <https://gitlab.com/seek-dev>)

SEE ALSO

opensd(5)

AUTHOR

seek

2022-12-18 opensdd