Reference

gpiomon(1)

libgpiod command-line utility

NAME

gpiomon - libgpiod command-line utility

SYNOPSIS

gpiomon [OPTIONS] <line>...

DESCRIPTION

Wait for events on GPIO lines and print them to standard output.

Lines are specified by name, or optionally by offset if the chip option is provided.

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 'gpiomon')

-e, --edges <edges>

specify the edges to monitor Possible values: 'falling', 'rising', 'both'. (default is 'both')

-E, --event-clock <clock>

specify the source clock for event timestamps Possible values: 'monotonic', 'realtime', 'hte'. (default is 'monotonic') By default 'realtime' is formatted as UTC, others as raw u64.

-h, --help

display this help and exit

-F, --format <fmt>

specify a custom output format

--idle-timeout <period>

exit gracefully if no events occur for the period specified

-l, --active-low

treat the line as active low, flipping the sense of rising and falling edges

--localtime

format event timestamps as local time

-n, --num-events <num>

exit after processing num events

-p, --debounce-period <period>

debounce the line(s) with the specified period

-q, --quiet

don't generate any output

-I, --initial-state

print initial states of the lines

-N, --numeric

display line values as '0' (inactive) or '1' (active)

-s, --strict

abort if requested line names are not unique

--unquoted

don't quote line or consumer names

--utc

format event timestamps as UTC (default for 'realtime')

-v, --version

output version information and exit

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.

Format specifiers:

%o

GPIO line offset

%l

GPIO line name

%c

GPIO chip name

%e

numeric edge event type ('1' - rising or '2' - falling)

%E

edge event type ('rising' or 'falling')

%S

event timestamp as seconds

%U

event timestamp as UTC

%L

event timestamp as local time

AUTHOR

Bartosz Golaszewski <[email protected]>

REPORTING BUGS

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

COPYRIGHT

Copyright © 2017-2023 Bartosz Golaszewski License: GPL-2.0-or-later
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.

History

--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); --debounce-period since Debian 13 (Trixie); --edges since Debian 13 (Trixie); --event-clock since Debian 13 (Trixie); --help since Debian 13 (Trixie); --idle-timeout since Debian 13 (Trixie); --initial-state since Arch Linux 2026-11-01; --localtime since Debian 13 (Trixie); --num-events since Debian 13 (Trixie); --numeric since Arch Linux 2026-11-01; --quiet since Debian 13 (Trixie); --strict since Debian 13 (Trixie); --unquoted since Debian 13 (Trixie); --utc since Debian 13 (Trixie); --version since Debian 13 (Trixie); -E since Debian 13 (Trixie); -I since Arch Linux 2026-11-01; -N since Arch Linux 2026-11-01; -b since Debian 13 (Trixie); -c since Debian 13 (Trixie); -e since Debian 13 (Trixie); -h since Debian 13 (Trixie); -l since Debian 13 (Trixie); -n since Debian 13 (Trixie); -p since Debian 13 (Trixie); -q since Debian 13 (Trixie); -s since Debian 13 (Trixie); -v since Debian 13 (Trixie).