On Mon, 14 Sep 2020 06:15:25 -0700 (PDT), in
gmane.comp.hardware.beagleboard.user Pavel Yermolenko
>The version of *config-pin*, installed on my system, is quite shrinked.
>
The older config-pin is, as I recall, a shell script. The current
config-pin is a compiled executable.
debian@beaglebone:~$ which config-pin
/usr/bin/config-pin
debian@beaglebone:~$ sudo find / -iname "config-pin*"
[sudo] password for debian:
/opt/source/bb.org-overlays/tools/beaglebone-universal-io/config-pin
/opt/source/bb.org-overlays/tools/pmunts_muntsos/config-pin.c
/usr/bin/config-pin
debian@beaglebone:~$
/opt/source/bb.org-overlays/tools/beaglebone-universal-io/config-pin
config-pin [-a] <pin> <mode>
Set <pin> to <mode>, configuring pin multiplexing and optionally
configuring the gpio. Valid <mode> strings vary based on <pin>,
however all pins have a default and gpio mode. The default mode is
the reset state of the pin, with the pin mux set to gpio, the pull
up/down resistor set to it's reset value, and the pin receive buffer
enabled. To setup gpio, the following <mode> strings are all valid:
gpio :
Set pinmux to gpio, existing direction and value unchanged
in | input:
Set pinmux to gpio and set gpio direction to input
out | output :
Set pinmux to gpio and set gpio direction to output
hi | high | 1 :
Set pinmux to gpio and set gpio direction to output driving
high
lo | low | 0 :
Set pinmux to gpio and set gpio direction to output driving low
To enable pull-up or pull-down resistors, a suffex may be appended to
any of the above gpio modes. Use + or _pu to enable the pull-up
resistor
and - or _pd to enable the pull-down resistor. Examples:
in+ | in_pu:
Enable pull-up resistor and setup pin as per input, above.
hi- | hi_pd:
Enable pull-down resistor and setup pin as per high, above.
While the pull-down resistor will be enabled, it will not do
much
until application software changes the pin direction to input.
config-pin -l <pin>
list valid <mode> values for <pin>
config-pin -i <pin>
show information to <pin>
config-pin -q <pin>
query pin and report configuration details
config-pin -f [file]
Read list of pin configurations from file, one per line
Comments and white-space are allowed
With no file, or when file is -, read standard input.
config-pin -h
Display this help text
debian@beaglebone:~$ config-pin
GPIO Pin Configurator
Usage: config-pin -c <filename>
config-pin -l <pin>
config-pin -q <pin>
config-pin <pin> <mode>
debian@beaglebone:~$
>Contrary to the version, described in the book of Derek Molloy, there is no
>such options as *-a*, *-i*, *-f*,
ANYTIME you are following a book and encounter a difference, you need
to study which version of the OS was present at that time. Even the 2nd
Edition of the book was likely behind a version or two by the time it was
printed.
Per page 32 of the book, it was written when Debian Stretch was still
in use. Standard images have been Debian Buster since April of this year
(though the config-pin change might have occurred anytime in 2019, or even
late 2018, as the 2nd edition shipped [from Amazon] January 14 2019). Based
on some screen captures, the book was using a February 2018 image, and the
examples were run in April 2018. That's a whole 2.5 years ago.
{Side note: Raspberry-Pi went to Buster in the summer of 2019, about two
weeks before Debian Buster was officially released -- the R-Pi 4B was
different enough that all the work to get it to run was done on pre-release
Buster.}
>Moreover, the -q option (pin querry) doesn't provide information of the pin
>mode (direction) and its value:
>
>debian@beaglebone:~$ config-pin -q P9.12
>
>Current mode for P9_12 is: gpio
>
>debian@beaglebone:~$
>
>In fact, there is no information at all!
debian@beaglebone:~$
/opt/source/bb.org-overlays/tools/beaglebone-universal-io/config-pin -q
P9.12
P9_12 Mode: default Direction: in Value: 1
debian@beaglebone:~$
--
Dennis L Bieber