Configure Commands#

You can configure certain Certain Simplicity Commander settings by using the configure command. These settings persist across Commander runs and updates.

Logging Overview#

You can use Simplicity Commander to log all Commander invocations in a user-defined log file by using the configure log commands. Commander writes two lines for each invocation: one when the command starts, and one when it finishes.

Each log line includes the following parameters:

  • Timestamp in the form YYYY-MM-DD hh:mm:ss.zzz

  • The full path to the Commander executable

  • The command being executed, exactly as Commander receives it from the command line, along with any default CLI options that were applied to the command

  • The process ID of the Commander invocation, in the form {pid <pid>}

  • A status field in square brackets: Started... when the command begins, and the numeric return code when it finishes

If default CLI options were applied to the command, they are listed in parentheses after the command.

If a command does not finish (for example, if the process is terminated), the log contains a start line with no matching return-code line.

The following example shows a successful device info command, with the default CLI option --serialno applied.

2026-08-20 13:41:27.123 /path/to/commander device info --device EFR32FG28 {pid 48291} [Started...]
2026-08-20 13:41:27.456 /path/to/commander device info --device EFR32FG28 (--serialno 440012345) {pid 48291} [0]

Get Current Logging Status#

To view the the current logging status, use the configure log command.

Command Line Syntax

$ commander configure log

Command Line Input Example

$ commander configure log

This example gets the current logging status.

Command Line Output Example

Logging is disabled.
Current log file path: /Users/username/logs/commander.log
DONE

Enable Logging#

To enable logging, use the configure log enable command.

  • If you provide a file name, Commander uses that file for the log output file.

  • If no file name is provided, Commander uses the last known output file name.

  • If logging previously hasn't been enabled, Commander uses ~/.silabs/commander/commander.log as the default file name.

Commander will create the path to the log file if it does not already exist. If the log file itself does not exist when logging is enabled, it will be created upon the next invocation of Commander.

Command Line Syntax

$ commander configure log enable [path]

Command Line Input Example

$ commander configure log enable "~/logs/commander.log"

This example enables logging and sets ~/logs/commander.log as the output log file.

Command Line Output Example

Log file set to: /Users/username/logs/commander.log
DONE

Disable Logging#

To disable logging, use the configure log disable command. Reenabling logging will use the last known output filename.

Command Line Syntax

$ commander configure log disable

Command Line Input Example

$ commander configure log disable

This example disables logging.

Command Line Output Example

Logging disabled.
DONE

CLI Defaults Overview#

Use the configure defaults command to configure default values for frequently used command-line options. After you set a default, Commander applies it automatically to subsequent commands that support the option, unless you provide an overriding option on the command line.

When Commander applies stored defaults, it displays them before the command output. For example:

Applied default options: --serialno=440050184
...

The available defaults are grouped as follows:

  • Output options: json and timestamp. Only one can be active at a time.

  • Connection options: serialno, ip, and identifybyserialport. Only one can be active at a time.

  • Debug options: tif, speed, irpre, and drpre. Multiple debug options can be active at the same time.

The json and timestamp options are Boolean flags. The remaining options accept the same values as their corresponding command-line options.

Listing Default CLI Options#

To display the current default CLI options, use the configure defaults command with no additional options.

Unset connection and debug options are listed by name only. Boolean output options are listed with a value of true or false.

Note: If options within a defaults group conflict, Commander marks them in the output with an asterisk (*) before the option name. Resolve these conflicts before running Commander commands.

Command Line Syntax

$ commander configure defaults

Command Line Input Example

$ commander configure defaults

This example lists the current default CLI options.

Command Line Output Example

Available default output options (only one can be active at a time):
  json = false
  timestamp = false

Available default connection options (only one can be active at a time):
  serialno
  ip
  identifybyserialport

Available default debug options:
  tif
  speed
  irpre
  drpre

DONE

Setting Default CLI Options#

To set one or more default CLI options, use the configure defaults --set <option:value> command. You can provide the --set option more than once.

Specify each option-value pair in the format option:value. Set Boolean flags to true or false.

If you set a connection option while another connection option is already set, Commander replaces the previous connection option. The same applies when you enable a different output option.

Command Line Syntax

$ commander configure defaults --set <option:value>

Command Line Input Example

$ commander configure defaults --set serialno:440050184 --set timestamp:true

This example sets the default J-Link serial number to 440050184 and enables timestamps in Commander output.

Command Line Output Example

Default CLI options were set: serialno:440050184, timestamp:true
DONE

Using Stored Default CLI Options#

When you run a command, Commander applies any stored defaults that apply to that command. Options that you provide on the command line take precedence over stored defaults within the same defaults group (output, connection, or debug).

For the output and connection groups, where options are mutually exclusive, a command-line option overrides the stored default only within its group. For example, suppose you set serialno to 440050184 and timestamp to true, and then run device info --ip 192.168.1.100. The --ip option overrides the stored serialno default but does not affect the timestamp default.

For the debug group, multiple options can be active at the same time. A command-line option overrides only its corresponding stored default. For example, suppose you set tif to SWD and speed to 1000, and then run device info --speed 2000. The --speed option overrides only the stored speed default and does not affect the tif default.

Command Line Syntax

$ commander device info

This example runs device info after setting the serialno and timestamp defaults shown above.

Command Line Output Example

17:00:39.194 Applied default options: --serialno=440050184, --timestamp
<command output>
DONE

Clearing Individual Default CLI Options#

To clear one or more stored default CLI options, use the configure defaults --clear <option> command. You can provide the --clear option more than once.

Command Line Syntax

$ commander configure defaults --clear <option>

Command Line Input Example

$ commander configure defaults --clear serialno

This example clears the stored default J-Link serial number.

Command Line Output Example

Default CLI option serialno was cleared.
DONE

Clearing All Default CLI Options#

To clear all stored default CLI options, use the configure defaults --clear-all command.

Command Line Syntax

$ commander configure defaults --clear-all

Command Line Input Example

$ commander configure defaults --clear-all

This example clears all stored default CLI options.

Command Line Output Example

All default CLI options were cleared.
DONE

Temporarily Ignoring Default CLI Options#

To ignore stored defaults for a single command, use the --ignore-defaults option. This option does not change the stored defaults.

Command Line Syntax

$ commander <command> --ignore-defaults

Command Line Input Example

$ commander device info --ignore-defaults

This example runs device info without applying any stored default CLI options.

Command Line Output Example

<command output>
DONE