gpioset(1)

gpioset1

Libgpiod command-line utility

Usage

gpioset [OPTIONS] <line=value> ...

Overview

Set values of GPIO lines.

Lines are specified by name, or optionally by offset if the chip option is provided. Values may be '1' or '0', or equivalently 'active'/'inactive' or 'on'/'off'.

The line output state is maintained until the process exits, but after that is not guaranteed.

Options

--banner

display a banner on successful startup

-b, --bias <bias>

specify the line bias Possible values: 'pull-down', 'pull-up', 'disabled'. (default is to leave bias unchanged)

--by-name

treat lines as names even if they would parse as an offset

-c, --chip <chip>

restrict scope to a particular chip

-C, --consumer <name> consumer name applied to requested lines (default is 'gpioset')

-d, --drive <drive>

specify the line drive mode Possible values: 'push-pull', 'open-drain', 'open-source'. (default is 'push-pull')

-h, --help

display this help and exit

-l, --active-low

treat the line as active low

-p, --hold-period <period>

the minimum time period to hold lines at the requested values

-s, --strict

abort if requested line names are not unique

-t, --toggle <period>[,period]...

toggle the line(s) after the specified period(s) If the last period is 0 then gpioset exits else the sequence repeats.

--unquoted

don't quote line names

-v, --version

output version information and exit

-z, --daemonize

set values then detach from the controlling terminal

Chips:

A GPIO chip may be identified by number, name, or path. e.g. '0', 'gpiochip0', and '/dev/gpiochip0' all refer to the same chip.

Periods:

Periods are taken as milliseconds unless units are specified. e.g. 10us. Supported units are 'm', 's', 'ms', and 'us' for minutes, seconds, milliseconds and microseconds respectively.

Note

It should not be assumed that a line will retain its state after gpioset exits. When a process exits, any GPIO lines it has requested are automatically released. Once released, the state of a line may be modified by the kernel or another process. To guarantee the requested value, by default gpioset does not exit.

Releases

4 releases since Debian 11 (Bullseye); the text changed 3 times.

  1. 11
  2. 12
  3. 13
  4. Arch

--active-low since Debian 13 (Trixie); --banner since Debian 13 (Trixie); --bias since Debian 13 (Trixie); --by-name since Debian 13 (Trixie); --chip since Debian 13 (Trixie); --daemonize since Debian 13 (Trixie); --drive since Debian 13 (Trixie); --help since Debian 13 (Trixie); --hold-period since Debian 13 (Trixie); --strict since Debian 13 (Trixie); --toggle since Debian 13 (Trixie); --unquoted since Debian 13 (Trixie); --version since Debian 13 (Trixie); -b since Debian 13 (Trixie); -c since Debian 13 (Trixie); -d since Debian 13 (Trixie); -h since Debian 13 (Trixie); -l since Debian 13 (Trixie); -p since Debian 13 (Trixie); -t since Debian 13 (Trixie); -v since Debian 13 (Trixie); -z since Debian 13 (Trixie).

--sec until Debian 12 (Bookworm); --usec until Debian 12 (Bookworm); -u until Debian 12 (Bookworm).

Author

Bartosz Golaszewski <[email protected]>

Reporting bugs

Report bugs to:
Bartosz Golaszewski <[email protected]>
linux-gpio <[email protected]>

From libgpiod 2.3.1-1 in Arch Linux 2026-11-01. Parsed by carta from the page's man source.