Syntax
COMMAND, lager watt NET_NAME reads power (watts). The current, voltage, and all subcommands read the other quantities (Joulescope JS220 and Nordic PPK2 only).
Commands
| Command | Description |
|---|---|
(none) / power | Read power in watts |
current | Read current in amps |
voltage | Read voltage in volts |
all | Read current, voltage, and power together |
Options
These options are available on each read subcommand (power/current/voltage/all). --box is also accepted directly after lager watt NET_NAME for the default power read.
| Option | Description |
|---|---|
--box BOX | Lagerbox name or IP address |
-d, --duration FLOAT | Averaging window in seconds (default 0.1). Longer windows average more samples for a lower-noise, higher-resolution reading. |
--json | Emit a machine-readable JSON object instead of formatted text |
--help | Show help message and exit |
Arguments
| Argument | Description |
|---|---|
NET_NAME | Name of the watt meter net to read (optional if a default is set). Must appear before the subcommand. |
Usage
NET_NAME is omitted and no default is set, lager watt lists all available watt meter nets on the box.
Output
Readings are formatted with an SI prefix so small magnitudes stay readable (for example a 52.34 µW load is shown as52.340 µW rather than rounding to 0.000 W):
all prints all three quantities:
--json, output is a single JSON object (units are base SI — amps, volts, watts):
--duration windows). If no reading is received within that time, the command exits with an error suggesting the device may be disconnected or experiencing USB issues.
Increasing resolution
Two levers improve a power/current reading:- Display — output is SI-scaled automatically, so sub-milliwatt and sub-milliamp readings are shown in µ/n units instead of rounding to zero. For values too small for even the nano prefix, the reading is shown in scientific notation (e.g.
3.000e-13 W) rather than rounding to0.000— a nonzero reading is never lost. - Averaging window — pass
--durationto average over a longer capture. A longer window reduces noise on the mean, giving a steadier, higher-effective-resolution value:
Long averaging windows
--duration also works for long windows — e.g. the average current over a minute:
Supported Hardware
| Manufacturer | Model | Identification | Features |
|---|---|---|---|
| Yoctopuce | Yocto-Watt | USB VID:PID 24e0:002a | Real-time power measurement |
| Joulescope | JS220 | USB VID:PID 16d0:10ba | High-precision power, voltage, and current measurement |
| Nordic Semiconductor | PPK2 | USB VID:PID 1915:c00a | Current, voltage, and power measurement via source mode |
Hardware Feature Comparison
| Feature | Yocto-Watt | Joulescope JS220 | Nordic PPK2 |
|---|---|---|---|
Power reading (power) | Yes | Yes | Yes |
Voltage reading (voltage) | No | Yes | Yes (configured source voltage) |
Current reading (current) | No | Yes | Yes |
Combined reading (all) | No | Yes | Yes |
Configurable averaging (--duration) | No (instantaneous) | Yes | Yes |
| Device selection | Channel-based | Serial number-based | Serial number-based |
current, voltage, and all subcommands require a Joulescope JS220 or Nordic PPK2. On a Yocto-Watt (power only) they exit with a clear “not supported” message — use lager watt NET_NAME for power instead. The same readings are also available through the Python API.
Instrument Name Matching
The backend driver is selected based on the instrument name in the net configuration:| Pattern | Driver |
|---|---|
Contains joulescope or js220 (case-insensitive) | Joulescope JS220 |
Contains ppk2, ppk, or nordic (case-insensitive) | Nordic PPK2 |
| All other watt meter instruments | Yocto-Watt |
Default Net
To avoid specifying the net name each time:Examples
Scripting Examples
Power Threshold Check (JSON)
Current Profiling (JSON)
Troubleshooting
| Error | Cause | Fix |
|---|---|---|
does not support reading current/voltage | Net is backed by a Yocto-Watt (power only) | Use lager watt NET_NAME for power, or move the net to a Joulescope/PPK2 |
| Timeout | Device disconnected or USB issue | Check USB connection; replug device |
| Connection refused | Box service not running | Check box: lager hello --box <box> |
| Device not found | Watt meter not detected | Verify device is connected: lager instruments --box <box> |
Notes
- Readings are SI-scaled (W/mW/µW/nW, A/mA/µA/nA, V/mV) with 3 significant decimal places; values too small for the nano prefix fall back to scientific notation instead of rounding to
0.000.--jsonemits base SI units (W, A, V). --durationsets the averaging window; the Joulescope JS220 and Nordic PPK2 honor it, while the Yocto-Watt returns an instantaneous value and ignores it. On the JS220, windows longer than ~10 s are measured gaplessly with the on-device charge accumulator (constant memory, any length).- The Nordic PPK2 operates in source mode (supplies a configurable voltage 0.8–5V and measures current); its
voltagereading is the configured source voltage. - The
current,voltage, andallsubcommands must follow the net name:lager watt NET_NAME current. - Net names refer to names assigned when setting up your testbed.
- Use
lager netsto see available watt meter nets, andlager instruments --box <box>to verify the device is detected.

