/config/register/physical/{reg}

The configuration of the named physical register.

Get /config/register/physical/{reg}

SecurityApiKey
Request
path Parameters
reg
required
string
query Parameters
max-depth
integer >= 1

Limit output depth of the response. See Max-Depth.

Example: max-depth=2
filter
string

Response filter string. See Filter-Spec.

Example: filter={foo,bar}
Responses
200

Normal response.

401

Unauthorized response.

get/config/register/physical/{reg}
Request samples
Response samples
application/json
{
  • "result": {
    },
  • "error": "Error message (present if an error occurred)."
}

Replace /config/register/physical/{reg}

SecurityApiKey
Request
path Parameters
reg
required
string
Request Body schema: application/json
dev
string (configRegisterPhysicalRegDev)

The name of the device that is the source of the register values. The name local indicates that the meter itself measures or calculates the value. Any other value is a reference to the remote device of the same name defined at /config/remote.

did
integer (configRegisterPhysicalRegDid) >= 0

The column number in which the database stores the register value. Each physical register has a unique column number. If a register is renamed, this number remains the same. On the other hand, if a register is deleted and then another one is added back, the new one may get assigned the column number of the old, deleted register.

Each physical register must have a unique value. Invalid values automatically get remapped to an unused index.

type
string (configRegisterPhysicalRegType)

The type code of the register.

value
string (configRegisterPhysicalRegValue)

Defines the how the register value is obtained or calculated. For register where dev is local, this is one of:

  • A local sensor name: L1-L3, Ldc, or S1-S30.

  • A power formula written as a sum of products of sensors. For example, S1*L1+S2*L2 would indicate that the register value is calculated as the real power measured by current sensor S1 and line-voltage L1 plus the real power measured by current sensor S2 and line-voltage L2. Note that even though the real power calculation is indicated by an asterisk, it is actually calculated by averaging the product of the instantaneous current and voltage samples, not by multiplying the RMS voltages of S1 and L1. The first factor of each real power calculation may also be negated. For example, -S1*L2 would yield the negative of the real power calculated by S1*L2.

  • An equal sign (=) followed by an eScript expression. The register value is obtained by evaluating the eScript expression once per update interval. Non-finite numbers (e.g., not-a-number, or infinities) are silently converted to 0 before recording the register value.

For registers where dev is not local, so-called remote registers, the value is interpreted in a way that is specific to the particular remote device in use. Commonly, the value is some sort of register name or identifier. For example, for Modbus remote devices, the value is a register name defined by the Modbus map of the remote device.

Responses
200

Normal response.

401

Unauthorized response.

put/config/register/physical/{reg}
Request samples
application/json
{ }
Response samples
application/json
{
  • "status": "OK",
  • "error": "Error message (present if an error occurred)."
}

Update /config/register/physical/{reg}

SecurityApiKey
Request
path Parameters
reg
required
string
Request Body schema: application/json
dev
string (configRegisterPhysicalRegDev)

The name of the device that is the source of the register values. The name local indicates that the meter itself measures or calculates the value. Any other value is a reference to the remote device of the same name defined at /config/remote.

did
integer (configRegisterPhysicalRegDid) >= 0

The column number in which the database stores the register value. Each physical register has a unique column number. If a register is renamed, this number remains the same. On the other hand, if a register is deleted and then another one is added back, the new one may get assigned the column number of the old, deleted register.

Each physical register must have a unique value. Invalid values automatically get remapped to an unused index.

type
string (configRegisterPhysicalRegType)

The type code of the register.

value
string (configRegisterPhysicalRegValue)

Defines the how the register value is obtained or calculated. For register where dev is local, this is one of:

  • A local sensor name: L1-L3, Ldc, or S1-S30.

  • A power formula written as a sum of products of sensors. For example, S1*L1+S2*L2 would indicate that the register value is calculated as the real power measured by current sensor S1 and line-voltage L1 plus the real power measured by current sensor S2 and line-voltage L2. Note that even though the real power calculation is indicated by an asterisk, it is actually calculated by averaging the product of the instantaneous current and voltage samples, not by multiplying the RMS voltages of S1 and L1. The first factor of each real power calculation may also be negated. For example, -S1*L2 would yield the negative of the real power calculated by S1*L2.

  • An equal sign (=) followed by an eScript expression. The register value is obtained by evaluating the eScript expression once per update interval. Non-finite numbers (e.g., not-a-number, or infinities) are silently converted to 0 before recording the register value.

For registers where dev is not local, so-called remote registers, the value is interpreted in a way that is specific to the particular remote device in use. Commonly, the value is some sort of register name or identifier. For example, for Modbus remote devices, the value is a register name defined by the Modbus map of the remote device.

Responses
200

Normal response.

401

Unauthorized response.

post/config/register/physical/{reg}
Request samples
application/json
{ }
Response samples
application/json
{
  • "status": "OK",
  • "error": "Error message (present if an error occurred)."
}

Delete /config/register/physical/{reg}

Reset to default. See the descriptions of the individual endpoints for their default values. Commonly, arrays and strings are cleared to empty, numbers are cleared to 0, and booleans are cleared to false.

SecurityApiKey
Request
path Parameters
reg
required
string
Responses
200

Normal response.

401

Unauthorized response.

delete/config/register/physical/{reg}
Request samples
Response samples
application/json
{
  • "status": "OK",
  • "error": "Error message (present if an error occurred)."
}