Operation
Every function of the appliance is available through the testladen-cli command-line tool and the JSON-RPC API. The web UI mirrors the same operations for interactive use.
CLI usage
Install testladen-cli on your workstation and target the appliance with --host (or set TESTLADEN_HOST). If an access token is configured, pass it with --token or TESTLADEN_TOKEN.
Command reference
| Command | Description |
|---|---|
discover | List Testladen appliances found via mDNS |
status | Show appliance state, firmware and backplane revision |
module list | List installed modules and their slots |
module info <slot> | Show details and health for one module |
power on|off|cycle --rail <name> | Control a DUT power rail |
power measure --rail <name> | Read rail voltage and current |
serial open --module <slot> --baud <rate> | Attach to a DUT serial console |
net status | Show network link and 10BASE-T1S segment state |
config get <key> | Read a configuration value |
config set <key> <value> | Write a configuration value |
config backup <file> | Export the configuration to a file |
config restore <file> | Import a configuration file |
firmware update --file <path> | Flash controller or module firmware |
reset --factory | Restore factory defaults |
Add --json to any command for machine-readable output, and --help to any command for its full options.
Examples
testladen-cli --host bench-01.local status
testladen-cli --host bench-01.local power cycle --rail dut-main
testladen-cli --host bench-01.local power measure --rail dut-main --json
JSON-RPC API basics
For integrators, the appliance exposes a JSON-RPC 2.0 endpoint at http://testladen.local/rpc (or https:// when TLS is enabled). Send a POST with a JSON body; include the access token in the Authorization: Bearer <token> header.
Request:
{
"jsonrpc": "2.0",
"id": 1,
"method": "power.set",
"params": { "rail": "dut-main", "state": "on" }
}
Response:
{
"jsonrpc": "2.0",
"id": 1,
"result": { "rail": "dut-main", "state": "on", "voltage": 5.01, "current": 0.42 }
}
Common methods: system.status, module.list, module.info, power.set, power.measure, serial.open, config.get, config.set, firmware.update. The full method list is in the Appendix.
Common workflows
- Automated regression — from CI, call
power.setto boot the DUT, drive its buses through the serial/bus modules, capture results andpower.setoff. Wrap the JSON-RPC calls in your test framework. - Flash and recovery — use the boot & storage module to select boot mode, flash over the debug module, then power-cycle.
- Current profiling — poll
power.measurewhile exercising the DUT to capture a current profile. - Network conformance — bring up 10BASE-T1S segments with the network module and run your conformance suite against them.
LED / status indicators
| Indicator | State | Meaning |
|---|---|---|
| PWR | Solid green | Powered and supply healthy |
| PWR | Off | No power / supply fault |
| SYS | Solid green | Ready |
| SYS | Amber | Booting or firmware update in progress |
| SYS | Red | Fault — see Troubleshooting |
| SYS | Blinking red | Critical fault (over-temperature or power) |
| LINK/ACT (per RJ45) | Green / blinking | Link up / traffic |
| Module LED | Green | Module ready |
| Module LED | Amber | Module busy |
| Module LED | Red | Module error |
See Firmware & software for updates and configuration backup.