| PISCSI-CTRLBOARD(1) | General Commands Manual | PISCSI-CTRLBOARD(1) |
NAME
piscsi-ctrlboard —
operate PiSCSI with the PiSCSI Control Board
SYNOPSIS
piscsi-ctrlboard |
[-diagnostic] [-display
true|false] [-host
HOST] [-password
TOKEN] [-port
PORT] [-rotation
0|180] [-v] |
DESCRIPTION
piscsi-ctrlboard is the client for the
PiSCSI Control Board. It receives rotary-encoder and button events through a
PCA9554 I2C expander, renders a menu on a 128-by-64 SSD1306 display, and
sends commands to a PiSCSI daemon. The menu supports SCSI-ID management,
image attach and eject operations, profiles, and system actions.
By default, the Control Board uses /dev/i2c-1, PCA9554 address 0x3f, SSD1306 address 0x3c, and BCM GPIO line 9 for the PCA9554 interrupt. It connects to the local PiSCSI daemon on port 6868.
OPTIONS
- Button debounce interval. The default is 200ms.
- Inactivity timeout before an auxiliary-button choice runs. The default is 3s.
-config-dirDIRECTORY- PiSCSI profile directory. The default is /var/lib/piscsi/config.
-diagnostic- Log Control Board input snapshots, decoded events, dropped events, and latency statistics.
-displaytrue|false- Render the Control Board menu on the SSD1306 display. When false, the PCA9554 and GPIO interrupt are still required. The default is true.
-display-addressADDRESS- SSD1306 I2C address. The default is 0x3c.
-event-queue-sizeSIZE- Maximum number of hardware events waiting to be processed. The default is 64.
-gpiochipDEVICE- Linux GPIO character device. The default is /dev/gpiochip0.
-hostHOST- PiSCSI daemon hostname. The default is “localhost”.
-i2c-deviceDEVICE- Linux I2C device used by the Control Board. The default is /dev/i2c-1.
-image-dirDIRECTORY- Image directory used while loading profiles. The default is /var/lib/piscsi/images.
-interrupt-gpioLINE- BCM GPIO line connected to the PCA9554 interrupt. The default is 9.
-pca-addressADDRESS- PCA9554 I2C address. The default is 0x3f.
-passwordTOKEN- PiSCSI daemon authentication token.
-portPORT- PiSCSI daemon port. The default is 6868.
-refresh-intervalDURATION- Interval used to refresh the PiSCSI root menu. The default is 10s.
-rotation0|180- Menu display rotation in degrees. The default is 0.
-screensaver-move-intervalDURATION- Interval between moves of the IP screensaver line. The default is 30s.
-screensaver-timeoutDURATION- Idle timeout before the IP screensaver starts. Specify 0 to disable it. The default is 10m.
-shutdown-splash-durationDURATION- Duration for which the shutdown splash is displayed. Specify 0 to disable the delay. The default is 700ms.
-splash-durationDURATION- Duration for which the startup splash is displayed. Specify 0 to disable the delay. The default is 2s.
-transitions- Animate submenu navigation with horizontal push transitions.
-v- Print PiSCSI version and copyright information, then exit.
Duration options accept Go duration strings, for example 200ms, 3s, and 10m.
EXAMPLES
Run the client with an inverted display:
piscsi-ctrlboard -rotation=180
Use a remote PiSCSI daemon and enable input diagnostics:
piscsi-ctrlboard -host=piscsi.local -port=6868 -diagnostic
HARDWARE
Enable I2C and ensure the process can access both the selected I2C device and GPIO character device. Use i2cdetect(8) to verify the usual 0x3c display and 0x3f PCA9554 addresses.
SIGNALS
piscsi-ctrlboard handles
SIGINT and SIGTERM and stops
its input, display, and daemon work cleanly.
SEE ALSO
piscsi(1), piscsi-oled(1), i2cdetect(8)
Full documentation is available at: <https://www.piscsi.com>
| August 23, 2026 | PiSCSI |
