FirmwareAPI DocumentationLUXminer commands

healthchipget

Gets per chip health, topology, and temperature information

healthchipget

Description

Gets the health status of one or all chips for a selected hashboard. To get the information for a single chip, use the optional chip_id parameter. When health is in an "Unknown" state, the related fields will be omitted and are listed as Optional. in the table below.

Returns the topology information for all chips. This information includes the physical row/column location and electrical domain assignment for each ASIC chip on the hashboard. The row and column index of (0,0) always corresponds to the upper-left top-view of the hashboard closest to the power and hashboard connections.

Returns the chip temperature for models such as S21 and T21 that support this feature.

On the Antminer Z15 Pro, each chip also carries RepeatedIndexCount and SolutionCount. A repeated index is a degenerate Equihash solution the chip returns: it passes the chip's own filter, so no ticket mask removes it, and its share of the chip's returned solutions climbs two to three voltage steps before the chip's hashrate moves, which makes it the earliest per-chip failure signal. SolutionCount is the denominator of that fraction. Both are totals for the board's current session, reset to zero when the board halts, so difference them over any window that does not span a halt (a drop marks one). Around 7–8% repeated indices is healthy; 12% and above means the chip is failing. Both fields are absent on other models, and on a Z15 Pro board until its first health summary.

Command

$ echo '{"command": "healthchipget", "parameter": "0,20"}' | nc $MINER_IP 4028 | jq

Examples

For a single chip:

$ echo '{"command": "healthchipget", "parameter": "0,20"}' | nc $MINER_IP 4028 | jq
{
  "CHIPS": [
    {
      "BadHashCount": 0,
      "Board": 0,
      "Chip": 20,
      "Column": 6,
      "Domain": 2,
      "DoubleHashCount": 0,
      "Frequency": 290,
      "GHS 15m": 154.68,
      "GHS 1m": 268.92,
      "GHS 5m": 216.56,
      "HashCount": 476,
      "HashExpected": 452,
      "HashMin": 91,
      "Healthy": "Y",
      "IsChecking": false,
      "ReadErrors": 0,
      "ReadTimeouts": 0,
      "Row": 2,
      "Score": 105.3,
      "When": 1719418678445,
      "WriteErrors": 0
    }
  ],
  "STATUS": [
    {
      "Code": 314,
      "Description": "LUXminer 0.1.0-15436f7140",
      "Msg": "Health Chip Get",
      "STATUS": "S",
      "When": 1719418680
    }
  ],
  "id": 1
}

To get all chips at once:

$ echo '{"command": "healthchipget", "parameter": "0"}' | nc $MINER_IP 4028 | jq
{
  "CHIPS": [
    {
      "BadHashCount": 0,
      "Board": 0,
      "Chip": 0,
      "ChipTemp": 54.84,
      "Column": 0,
      "Domain": 0,
      "DoubleHashCount": 0,
      "Frequency": 400,
      "GHS 15m": 180.23,
      "GHS 1m": 280.97,
      "GHS 5m": 255.42,
      "HashCount": 41,
      "HashExpected": 39,
      "HashMin": 8,
      "Healthy": "Y",
      "IsChecking": false,
      "ReadErrors": 0,
      "ReadTimeouts": 0,
      "Row": 0,
      "Score": 105.13,
      "When": 1667913887267,
      "WriteErrors": 0
    },
    {
      "BadHashCount": 0,
      "Board": 0,
      "Chip": 1,
      "ChipTemp": 56.84,
      "Column": 1,
      "Domain": 0,
      "DoubleHashCount": 0,
      "Frequency": 400,
      "GHS 15m": 187.27,
      "GHS 1m": 291.41,
      "GHS 5m": 260.18,
      "HashCount": 3,
      "HashExpected": 39,
      "HashMin": 8,
      "Healthy": "N",
      "IsChecking": false,
      "ReadErrors": 0,
      "ReadTimeouts": 0,
      "Row": 0,
      "Score": 7.69,
      "When": 1667914007313,
      "WriteErrors": 0
    },
    {
      "BadHashCount": 0,
      "Board": 0,
      "Chip": 2,
      "ChipTemp": 57.22,
      "Column": 2,
      "Domain": 0,
      "DoubleHashCount": 0,
      "Healthy": "Unknown",
      "IsChecking": true,
      "ReadErrors": 0,
      "ReadTimeouts": 0,
      "Row": 0,
      "WriteErrors": 0
    }

    /* and so on, for all chips */
  ],
  "STATUS": [
    {
      "Code": 314,
      "Description": "LUXminer 0.1.0-15436f7140",
      "Msg": "Health Chip Get",
      "STATUS": "S",
      "When": 1667917088
    }
  ],
  "id": 1
}

Parameters

ParameterNotes
board_idBoard ID, starting from zero.
chip_idOptional. The chip number, starting from zero.

Field details

FieldNotes
BadHashCountNumber of "bad hashes" generated by this chip.
BoardBoard ID, starting from zero.
ChipChip number, starting from zero.
ChipTempOptional. Chip on-die temperature
ColumnBoard topology chip column location, starting from zero.
DomainBoard topology chip domain assignment, starting from zero.
DoubleHashCountNumber of "double hashes" generated by this chip.
FrequencyOptional. Chip frequency
GHS 15mOptional. Estimated per chip hashrate based on 15m average & most recent "HashCount"
GHS 1mOptional. Estimated per chip hashrate based on 1m average & most recent "HashCount"
GHS 5mOptional. Estimated per chip hashrate based on 5m average & most recent "HashCount"
HashCountOptional. Number of hashes during the test.
HashExpectedOptional. Number of expected hashes for a perfect score.
HashMinOptional. Minimum number of hashes to be considered "healthy".
HealthyEither "Y" or "N" depending if the chip is healthy, or "Unknown" if the chip wasn't evaluated yet.
IsCheckingIn the current health checker, this is always false.
ReadErrorsCounter of how many read error happened when reading the chip frequency.
ReadTimeoutsCounter of how many times a chip read timed-out.
RepeatedIndexCountOptional. Antminer Z15 Pro only. Number of returned solutions that repeated an index since the board started; see the description.
RowBoard topology chip row location, starting from zero.
ScoreOptional. Health score, defined as HashCount / HashExpected * 100.
SolutionCountOptional. Antminer Z15 Pro only. Number of verified solutions the chip returned since the board started, the denominator of the repeated-index fraction. A different population from HashCount.
WhenOptional. Unix timestamp of the check.
WriteErrorsCounter of how many "write" errors happened when changing the frequency.

On this page