MDK Logo

Miner chip components

Per-hashboard ASIC chip telemetry for the miner details view

UI for the per-chip thermal and frequency telemetry that surfaces alongside the rest of the miner details view. MinerChipsCard is the consumer-facing entry point; it composes one MinerChip per ASIC.

For miner identity, see the Miner details overview. For aggregated stats, see Metrics.

Prerequisites

Components

ComponentDescription
MinerChipsCardASIC chip temperature and health display
MinerChipSingle ASIC chip temperature and frequency tile

MinerChipsCard

Displays ASIC chip temperature and frequency data for each hashboard.

Import

import { MinerChipsCard } from '@mdk/foundation'

Props

PropTypeDefaultDescription
dataContainerStatsrequiredStats payload containing per-chip frequency and temperature arrays

The component reads data.frequency_mhz.chips and data.temperature_c.chips. Chips are joined by index. The card renders nothing when no chip pair is complete.

Expected chip payload

type ContainerStats = {
  frequency_mhz?: {
    chips?: { index: number; current: number }[]
  }
  temperature_c?: {
    chips?: { index: number; max: number; min: number; avg: number }[]
  }
}

Basic usage

<MinerChipsCard
  data={{
    frequency_mhz: {
      chips: [
        { index: 0, current: 500 },
        { index: 1, current: 498 },
      ],
    },
    temperature_c: {
      chips: [
        { index: 0, max: 72, min: 65, avg: 68 },
        { index: 1, max: 70, min: 63, avg: 66 },
      ],
    },
  }}
/>

Composition

MinerChipsCard renders one MinerChip per joined entry inside a flex layout. Use MinerChip directly when you have already-joined per-chip data and want to skip the join step.

Styling

  • .mdk-miner-chips-card: root element
  • .mdk-miner-chips-card__label: Chips header
  • .mdk-miner-chips-card__chips: flex container holding the chip tiles

MinerChip

Tile rendering one ASIC chip's average, min, and max temperature alongside its current frequency. Used inside MinerChipsCard for per-chip detail.

MinerChip is the tile rendered inside MinerChipsCard. It is exported for callers that already have per-chip data and want to render their own grid (for example, custom layouts or test fixtures).

Import

import { MinerChip } from '@mdk/foundation'

Props

PropTypeDefaultDescription
indexnumberrequiredChip index, displayed as the tile title (Chip {index})
frequency{ current: number }requiredCurrent frequency in MHz
temperature{ avg: number; min: number; max: number }requiredTemperature readings in °C

Basic usage

<MinerChip
  index={0}
  frequency={{ current: 500 }}
  temperature={{ avg: 68, min: 65, max: 72 }}
/>

Layout

The tile shows, in order:

  • Title: Chip {index}
  • Temperature: average value with °C unit
  • Min and max: small paired values labelled min (°C) and max (°C)
  • Frequency: current value with MHz unit

Styling

  • .mdk-miner-chip: root element
  • .mdk-miner-chip__title: Chip {index} header
  • .mdk-miner-chip__property: Temperature and Frequency row labels
  • .mdk-miner-chip__value: numeric value with unit
  • .mdk-miner-chip__minmax: min and max value row
  • .mdk-miner-chip__value-type: small label appended to min and max values

On this page