<NRf+> is a positive flexible numeric value, such as `0`, `1.25`, or `1e-3`.
- <literal|literal> is one literal value from the listed options.
The pipe character (`|`) means OR. For example, <LOC|REM> accepts `LOC` or `REM`, and <NRf+|MIN|MAX> accepts one numeric value, `MIN`, or `MAX`. Do not send the pipe character in the command.
`MIN` maps to `0`. `MAX` maps to **V LIMIT** for voltage and OVP commands, and **I LIMIT** for current and OCP commands. Do not send `MIN` or `MAX` to queries.
#### Defaults and reset
On startup and after `*RST`, each channel uses the reset operating state:
| Setting | Reset value |
| --- | --- |
| Programmed voltage | `0` |
| Current limit | `0` |
| Output state | `OFF` |
| OVP state | `OFF` |
| OCP state | `OFF` |
| OVP level | `MAX` |
| OCP level | `MAX` |
`*RST` preserves simulator configuration, including channel count, channel IDs, load resistance, series EMF, probe resistance, sense mode, and configured channel limits.
#### Error queue
Errors are queued and returned one at a time by `SYSTem:ERRor?`. The simulator can emit these error codes:
| Code | Message | Cause |
| --- | --- | --- |
| `0` | `No error` | The queue is empty |
| `-108` | `Parameter not allowed` | A query received an argument |
| `-109` | `Missing parameter` | A command was sent without a required argument |
| `-113` | `Undefined header` | The command header is not supported |
| `-114` | `Header suffix out of range` | The command targets a channel that does not exist |
| `-141` | `Invalid character data` | A numeric argument could not be parsed |
| `-222` | `Data out of range` | A numeric input is outside its accepted range |
| `-224` | `Illegal parameter value` | A literal argument is not accepted for that command |
| `301` | `PV Above OVP` | Programmed voltage is above the OVP level |
| `303` | `PC Above OCP` | Current limit is above the OCP level |
| `304` | `OVP Below PV` | OVP level is below programmed voltage |
| `305` | `OCP Below PC` | OCP level is below current limit |
| `323` | `Overcurrent protection tripped` | OCP tripped while enabled |
| `324` | `Overvoltage protection tripped` | OVP tripped while enabled |
#### Common commands
*IDN? |
|
| Query simulator identity | Response: String |
*RST |
|
| Reset channel operating state and clear errors | Response: None |
*CLS |
|
| Clear the error queue | Response: None |
MEASure:CURRent? |
|
| Measure output current | Response: Number |
MEASure:VOLTage? |
|
| Measure output voltage | Response: Number |
OUTPut[:STATe] <0|1|OFF|ON> |
|
| Enable or disable output | Response: None |
OUTPut[:STATe]? |
|
| Query output state | Response: 0 or 1 |
OUTPut:PROTection:CLEar |
|
| Clear latched OVP and OCP faults | Response: None |
OUTPut:PROTection:TRIPped? |
|
| Query latched OVP or OCP fault state | Response: 0 or 1 |
[SOURce:]CURRent[:LEVel][:IMMediate][:AMPLitude] <NRf+|MIN|MAX> |
|
| Set current limit | Response: None |
[SOURce:]CURRent[:LEVel][:IMMediate][:AMPLitude]? |
|
| Query current limit | Response: Number |
[SOURce:]CURRent:PROTection[:LEVel] <NRf+|MIN|MAX> |
|
| Set OCP level | Response: None |
[SOURce:]CURRent:PROTection[:LEVel]? |
|
| Query OCP level | Response: Number |
[SOURce:]CURRent:PROTection:STATe <0|1|OFF|ON> |
|
| Enable or disable OCP | Response: None |
[SOURce:]CURRent:PROTection:STATe? |
|
| Query OCP state | Response: 0 or 1 |
[SOURce:]VOLTage[:LEVel][:IMMediate][:AMPLitude] <NRf+|MIN|MAX> |
|
| Set programmed voltage | Response: None |
[SOURce:]VOLTage[:LEVel][:IMMediate][:AMPLitude]? |
|
| Query programmed voltage | Response: Number |
[SOURce:]VOLTage:PROTection[:LEVel] <NRf+|MIN|MAX> |
|
| Set OVP level | Response: None |
[SOURce:]VOLTage:PROTection[:LEVel]? |
|
| Query OVP level | Response: Number |
[SOURce:]VOLTage:PROTection:STATe <0|1|OFF|ON> |
|
| Enable or disable OVP | Response: None |
[SOURce:]VOLTage:PROTection:STATe? |
|
| Query OVP state | Response: 0 or 1 |
SYSTem:ERRor? |
|
| Pop one error from the error queue | Response: code,"message" |
SYSTem:SENSe[:STATe] <LOC|REM> |
|
| Select local or remote sense | Response: None |
SYSTem:SENSe[:STATe]? |
|
| Query sense mode | Response: LOC or REM |