FirmwareAPI DocumentationLUXminer commands

voltageset

Sets the board voltage

voltageset

Description

Sets the current voltage of the system.

Note: This command will always fails if the curtailment mode is sleep. See the curtail command for details.

On Antminer Equihash ASIC miners (the Z15 series) this command moves the PSU, not the hashboards. The PSU starts at 12.0 V and profiles keep it there; voltageset may move it inside a narrow window, 11.9 V to 12.3 V (VoltageMin and VoltageMax in limits), and a value outside it is rejected with 401 Invalid voltage value before anything changes. The PSU can only produce voltages on a 12.7 mV grid, so an accepted request is snapped up to the next grid point and Voltage in the reply echoes that value, truncated to the hundredth. The reply is therefore never below what you asked for and at most one hundredth above it: asking for 11.9 sets and returns 11.91, while 12.0, 12.15 and 12.3 come back as themselves. The window check runs on your request; the PSU itself may land up to one grid step above it (12.3 is realised as about 12.305 V), but the echoed, truncated Voltage stays inside the window. Each hashboard's own voltage is set with hashboardctrlset instead.

Command

$ echo '{"command": "voltageset", "parameter":"yJN2nlj1,1,8.9"}' | nc $MINER_IP 4028 | jq

Note: In previous luxminer versions, this command required a board_id parameter, to apply the voltage change to a single board. This is not allowed anymore, and you should omit this parameter on new code.

However, for compatibility reasons, if the second parameter can be interpreted as a number between 0 and 3 it will be seen as the board_id parameter instead of the voltage value, to avoid breaking existing code. This does not change the behavior - the voltage is still applied to all boards - but allows legacy calls to keep working.

All of the examples on this page use the new format.

Examples

$ echo '{"command": "voltageset", "parameter":"yJN2nlj1,8.9"}' | nc $MINER_IP 4028 | jq
{
  "STATUS": [
    {
      "Code": 306,
      "Description": "LUXminer 0.1.0-15436f7140",
      "Msg": "Set Voltage",
      "STATUS": "S",
      "When": 1667917794
    }
  ],
  "VOLTAGE": [
    {
      "Board": 0,
      "Voltage": 8.899999618530273,
      "VoltageStep": 0.05
    }
  ],
  "id": 1

If the optional step parameter is provided, the value will be used instead of the normal ramping step. This can be used to quickly apply a configuration change, throwing safety over the window.

Do not use this option unless you know what you're doing; this can cause permanent damage to the rig/board, as well as a decrease in hashrate over time.

Use at your own risk.

In the example below, we change the step to 0.5 volts:

$ echo '{"command": "voltageset", "parameter":"yJN2nlj1,8.9,0.5"}' | nc $MINER_IP 4028 | jq
{
  "STATUS": [
    {
      "Code": 306,
      "Description": "LUXminer 0.1.0-15436f7140",
      "Msg": "Set Voltage",
      "STATUS": "S",
      "When": 1667917794
    }
  ],
  "VOLTAGE": [
    {
      "Board": 1,
      "Voltage": 8.899999618530273,
      "VoltageStep": 0.5
    }
  ],
  "id": 1

Parameters

ParameterNotes
session_idA valid session ID. See Session Management for details.
board_idDeprecated. Board ID, starting from zero. Only for compatibility reasons; ignore this parameter when writing new code.
voltageThe desired voltage value.
stepOptional. The step size of the ramping. The default value is 0.05, and the max is 10.0.

Field details

FieldNotes
BoardEither the provided board ID, or zero. Only exists for compatibility reasons.
VoltageThe new voltage value.
VoltageStepThe step of the voltage ramp.

On this page