-
Notifications
You must be signed in to change notification settings - Fork 0
Reference Utilities
Utility commands, serial-interface operations, and SiWx91x manufacturing. All methods return a dict. See Command-Reference for shared conventions.
General-purpose utilities for application/ELF inspection and key/certificate handling.
Show all available information about an application file.
Show information about a file's ELF sections.
Extract cryptographic keys from a JSON config filename into directory dir.
Create a delegate certificate.
-
cert_version— running version number used for rollback prevention (a device will not accept a lower cert than it has seen). -
cert_type— e.g.gbl,secureboot. -
cert_pubkey— public key to embed. -
sign_keyfile— private key to sign with;extsign=Trueproduces an unsigned cert to sign later viasigncert.
Generate a key.
-
type="ecc-p256"→ a signing key pair (requirespubkeyandprivkey); optionaltokenfilewrites the public key as a token. -
type="aes-ccm"→ an encrypt/decrypt key (requiresoutfile).
Generate a key configuration for SiWx91x devices.
Convert a PEM public key to a token file for flashing. (Replaces the deprecated ebl keyconvert / gbl3 keyconvert.)
Show information about an RPS application/key file.
Sign a delegate certificate using an external signature.
Show flash/RAM usage of an ELF application. map_filename provides the device memory layout; include_sections/exclude_sections scope the statistics.
Verify a file's signature using the public key in verify_keyfile.
Operations over a serial connection. All accept serialport to select the port.
Get the OPN (Ordering Part Number) via serial.
Load an image via serial. fixedspeed=True uses a fixed speed.
Lock the device via serial, optionally supplying a token file, key file, and user data.
Unlock the device via serial (same parameters as lock).
Provision and calibrate manufacturing data on SiWx91x devices. Every method shares a common set of interface parameters:
| Parameter | Meaning |
|---|---|
serialport |
Serial port |
baudrate |
Baud rate |
serialinterface |
Use the serial interface |
closeinterface |
Close the interface afterward |
host |
Host address |
skipinit |
Skip initialization |
pinset |
Pin set |
Calibration methods commonly add storeinflash / storeinefuse (where the result is stored), prompt (set False for --noprompt), and internalant / vmcu18 flags.
Set up the serial/network interface for subsequent mfg917 operations.
Show device information.
Initialize the device using MBR/data files.
Provision the device (MBR, keys, data, named profile). listprofiles=True lists available profiles.
Provision OTP keys (symmetric and/or public key).
protectconfig(protection, ..., symmetrickey=None, privatekey=None, protectlength=None, sha=None, prompt=True)
Protect configuration with a key and SHA, at the given protection level/length.
Read a region (or list_regions=True to enumerate). Optionally constrain by range/position, write to outfile, or select a single property_field.
write(region, ..., list_regions=False, address=None, position=None, data=None, crc=True, prompt=True)
Write to a region from data. crc=False → --nocrc.
Erase a region (or list regions). Optionally scope by range/position.
Dump device data to filename.
Upgrade the device firmware from filename.
Run DPD (Digital Pre-Distortion) training.
evmoffset(..., storeinflash=False, storeinefuse=False, prompt=True, internalant=False, off0=None, off1=None, off2=None, off3=None, off4=None)
EVM offset calibration. off0–off4 set per-antenna offsets.
gain(..., storeinflash=False, storeinefuse=False, prompt=True, ch1=None, ch6=None, ch11=None, ch14=None, vmcu18=False)
Gain calibration, per channel (ch1, ch6, ch11, ch14).
xocal(..., storeinflash=False, storeinefuse=False, offset_khz=None, ctuneoverride=None, prompt=True, internalant=False)
XO (crystal) calibration. offset_khz sets the frequency offset; ctuneoverride overrides CTUNE.
radio(..., channel=None, power=None, phy=None, burst=True, start=False, stop=False, internalant=False, vmcu18=False)
Radio test/calibration. Configure channel, power, and phy; start/stop control transmission; burst=False → --noburst.
PyCommander · GitHub · Simplicity Commander docs · Licensed under the Silicon Labs MSLA
Getting started
Using PyCommander
Topics
Command reference
- Overview
- adapter · aem · vcom · ctune
- device · flash · verify · readmem · extflash
- security
- tokens · nvm3 · littlefs
- convert · ebl · gbl3 · gbl4 · ota · rps · postbuild
- util · serial · mfg917
Contributing