Bug Report: Can no longer set all LEDs from command line
Description of Bug
I used to be able to set all of the LEDs to a single color (in this case a very dim blue) to turn off the blinkenlights before bedtime. You can't do this anymore from the CLI. This appeared in the past week. I suspect this may be the cause since it modifies the precise code related to processing CLI arguments and affects whether -d is supplied or not:
commit f8745221d4276300f943f0630bdb7bc80611108d
Author: Chris <galdarian@gmail.com>
Date: Sun Nov 20 18:12:39 2022 +1100
Added string indexing to `-d` option to resolve #2854
+ Added zone to `options.device` in cli.cpp
+ replace current_device & current_zone references in parser with
temporary device vector
+ Changed code to accomodate
Attached Log
aki:~ $ openrgb --version
OpenRGB 0.8, for controlling RGB lighting.
Version: 0.8
Build Date Sun, 12 Apr 2020 20:57:34 -0700
Git Commit ID fb88964b8e514cdf4eb22da314e13f8db06a3636
Git Commit Date 2022-11-27 21:44:33 -0600
Git Branch master
aki:~ $ openrgb -m direct -c 000004
Attempting to connect to local OpenRGB server.
Connected to server
Network client listener started
Client: Received controller count from server: 7
Client: Requesting controller 0
Client: Requesting controller 1
Client: Requesting controller 2
Client: Requesting controller 3
Client: Requesting controller 4
Client: Requesting controller 5
Client: Requesting controller 6
Client: All controllers received, adding them to master list
Local OpenRGB server connected, running in client mode
OpenRGB 0.8, for controlling RGB lighting.
Usage: OpenRGB (--device [--mode] [--color])...
Options:
--gui Shows the GUI. GUI also appears when not passing any parameters
--startminimized Starts the GUI minimized to tray. Implies --gui, even if not specified
--client [IP]:[Port] Starts an SDK client on the given IP:Port (assumes port 6742 if not specified)
--server Starts the SDK's server
--server-port Sets the SDK's server port. Default: 6742 (1024-65535)
-l, --list-devices Lists every compatible device with their number
-d, --device [0-9 | "name"] Selects device to apply colors and/or effect to, or applies to all devices if omitted
Basic string search is implemented 3 characters or more
Can be specified multiple times with different modes and colors
-z, --zone [0-9] Selects zone to apply colors and/or sizes to, or applies to all zones in device if omitted
Must be specified after specifying a device
-c, --color [random | FFFFF,00AAFF ...] Sets colors on each device directly if no effect is specified, and sets the effect color if an effect is specified
If there are more LEDs than colors given, the last color will be applied to the remaining LEDs
-m, --mode [breathing | static | ...] Sets the mode to be applied, check --list-devices to see which modes are supported on your device
-b, --brightness [0-100] Sets the brightness as a percentage if the mode supports brightness
-s, --size [0-N] Sets the new size of the specified device zone.
Must be specified after specifying a zone.
If the specified size is out of range, or the zone does not offer resizing capability, the size will not be changed
-V, --version Display version and software build information
-p, --profile filename[.orp] Load the profile from filename/filename.orp
-sp, --save-profile filename.orp Save the given settings to profile filename.orp
--i2c-tools Shows the I2C/SMBus Tools page in the GUI. Implies --gui, even if not specified.
USE I2C TOOLS AT YOUR OWN RISK! Don't use this option if you don't know what you're doing!
There is a risk of bricking your motherboard, RGB controller, and RAM if you send invalid SMBus/I2C transactions.
--localconfig Use the current working directory instead of the global configuration directory.
--config path Use a custom path instead of the global configuration directory.
--nodetect Do not try to detect hardware at startup.
--noautoconnect Do not try to autoconnect to a local server at startup.
--loglevel [0-6 | error | warning ...] Set the log level (0: fatal to 6: trace).
--print-source Print the source code file and line number for each log entry.
-v, --verbose Print log messages to stdout.
-vv, --very-verbose Print debug messages and log messages to stdout.
--autostart-check Check if OpenRGB starting at login is enabled.
--autostart-disable Disable OpenRGB starting at login.
--autostart-enable arguments Enable OpenRGB to start at login. Requires arguments to give to OpenRGB at login.
aki:~ $ echo $?
255
Those commits since were inspected, but … they don't change this. (They do introduce yet another version bug on Debian systems but I'll file that one separately.)
Operating System
OS - Linux OS - MacOS OS - Windows
Hardware Configuration
Debian Linux (sid), package I compiled from git HEAD seconds after the 0.8 announcement.