Programmable digital load
Revision as of 22:39, 4 December 2019 by Uwe Hermann (talk | contribs)
This page documents the config keys and various other info needed to write a libsigrok frontend for controlling programmable digital loads.
TODO
- Rename keys SR_CONF_UNDER_VOLTAGE_CONDITION and SR_CONF_OVER_TEMPERATURE_PROTECTION for consistency?
Notes
- All supported loads contain one channel group ("1") with two channels (actual measured voltage and current).
- Each data packet containing one measurement of a voltage and a current is surrounded by a frame, if they were sent at the same time by the device.
Config keys
A libsigrok driver for a programmable electronic digital load implements all or some subset of the following config keys.
SR_CONF_ELECTRONIC_LOAD
Denotes a device that provides a power sink via one or more input channels, typically with a current set via the sigrok driver.
SR_CONF_ENABLED
- boolean
- get: Actual state of input.
- set: Turn input on or off.
- list: NA
SR_CONF_REGULATION
- string ("CC", "CV", "UR", ...)
- get: Actual mode of operation (e.g. constant current, constant voltage, constant power, ...)
- set: Set the mode of operation.
- list: NA, TODO?
SR_CONF_VOLTAGE
- double, representing voltage.
- get: Actual input voltage. This may not be the same as what was set -- the input may be disabled, or can change depending on the source.
- set: NA
- list: NA
SR_CONF_VOLTAGE_TARGET
- double, representing voltage.
- get: Current set input voltage for constant voltage mode.
- set: Set the input voltage for constant voltage mode.
- list: Supported voltage range as (low, high, step).
SR_CONF_CURRENT
- double, representing current.
- get: Actual input current. This may not be the same as what was set -- the input may be disabled, or can change depending on the source.
- set: NA
- list: NA
SR_CONF_CURRENT_LIMIT
- double, representing current.
- get: Actual set input current for constant current mode.
- set: Set the input current for constant current mode.
- list: Supported current range as (low, high, step).
SR_CONF_OVER_VOLTAGE_PROTECTION_ENABLED
- boolean
- get: TRUE, when the over voltage protection is enabled.
- set: NA
- list: NA
SR_CONF_OVER_VOLTAGE_PROTECTION_ACTIVE
- boolean
- get: TRUE, when the over voltage protection threshold was reached.
- set: NA
- list: NA
SR_CONF_OVER_VOLTAGE_PROTECTION_THRESHOLD
- double, representing voltage.
- get: Actual over voltage protection threshold.
- set: Set over voltage protection threshold.
- list: NA, TODO?
SR_CONF_OVER_CURRENT_PROTECTION_ENABLED
- boolean
- get: TRUE, when the over current protection is enabled.
- set: NA
- list: NA
SR_CONF_OVER_CURRENT_PROTECTION_ACTIVE
- boolen
- get: TRUE, when the over current protection threshold was reached.
- set: NA
- list: NA
SR_CONF_OVER_CURRENT_PROTECTION_THRESHOLD
- double, representing current.
- get: Actual over current protection threshold.
- set: Set over current protection threshold.
- list: NA, TODO?
SR_CONF_UNDER_VOLTAGE_CONDITION
TODO: Rename to SR_CONF_UNDER_VOLTAGE_CONDITION_ENABLED for consistency?
- boolean
- get: TRUE, when the under voltage protection is enabled.
- set: NA
- list: NA
SR_CONF_UNDER_VOLTAGE_CONDITION_ACTIVE
- boolen
- get: TRUE, when the under voltage protection threshold was reached.
- set: NA
- list: NA
SR_CONF_UNDER_VOLTAGE_CONDITION_THRESHOLD
TODO: Key is missing, but can be set for various loads (e.g Arachnid Labs Re:load Pro).
- double, representing voltage.
- get: Actual under voltage protection threshold.
- set: Set under voltage protection threshold.
- list: NA, TODO?
SR_CONF_OVER_TEMPERATURE_PROTECTION
TODO: Rename to SR_CONF_OVER_TEMPERATURE_PROTECTION_ENABLED for consistency?
- boolean
- get: TRUE, when the over temperature protection is enabled.
- set: NA
- list: NA
SR_CONF_OVER_TEMPERATURE_PROTECTION_ACTIVE
- boolean
- get: TRUE, when the over temperature protection threshold was reached.
- set: NA
- list: NA