• v1.35.0 8aebc47906

    v1.35.0
    All checks were successful
    CI / Rust clippy (push) Successful in 1m57s
    CI / Rust fmt (push) Successful in 1m14s
    CI / Rust test (push) Successful in 6m0s
    CI / UI (SvelteKit) (push) Successful in 1m19s
    CI / Security Audit (push) Successful in 1m21s
    docs / build (push) Successful in 37s
    Release / Docker Multi-Arch (push) Successful in 22m51s
    Release / Binary aarch64-unknown-linux-gnu (push) Successful in 11m44s
    Release / Binary x86_64-unknown-linux-gnu (push) Successful in 10m26s
    Release / Linux .deb + .rpm (amd64) (push) Successful in 2m5s
    Release / Linux .deb + .rpm (arm64) (push) Successful in 1m53s
    Release / Linux AppImage (aarch64) (push) Successful in 27s
    Release / Linux AppImage (x86_64) (push) Successful in 27s
    Release / Cosign sign artifacts (push) Successful in 26s
    Release / Forgejo Release (push) Successful in 37s
    Stable

    dvb-projekt released this 2026-09-30 12:38:19 +00:00 | 166 commits to main since this release

    Changed

    • Pool UI redesign in the warp design of the WarpAxe web UI. Dashboard:
      one hero card with every pool fact, workers sending shares first and
      silent ones dimmed with a status dot. Overview: the period's mean as
      hero, upright short bar labels with values. Hashrate page: one hero
      with the history inside and a smoothed/raw switch; its current rate is
      the last complete bucket, as on the dashboard. Miners page: search,
      active/all switch, the first 50 with "show all", a hashrate column.
      Blocks page: the found count as hero next to the pool's solo odds.
      Workers and public wallet pages: live wallets first, hashrate as hero,
      a smoothed chart. Every table has phone columns, the phone navigation
      shows a small › while items are off to the right, and the header keeps
      its shape while the pool loads.
    • Devices page: each WarpTune device shows its "Einmessen" line (the
      voltage search on its present point, with the power and hashrate
      against the reference once it is done), a "mining on another pool"
      badge for a miner set to a different pool, and "Tariff & solar from
      here" where dvb-WarpTune takes its energy feed from this pool.
    • Energy card laid out like the pool card: present power large with
      €/h, tariff and miners, the 24 h / 7 d / lifetime figures as small
      tiles, the source mix now and since the start as two bars, whole watts
      below 1 kW, the battery as amount plus direction, and the excess tile
      says whether more is produced or used.

    Added

    • Devices page: a miner that runs Max on PV surplus but whose surplus
      budget leaves no room above its present draw says "waiting for PV
      surplus" on its WarpTune badge, and the tooltip names the budget in
      watts. dvb-WarpTune reports the budget in its snapshot (pv_budget_w).
    • Devices page data: each miner reports the pool it is set to
      (stratum_url, host and port only); mines_here tells a miner set to a
      public pool on purpose (shown neutral) from one that should mine here
      but is not connected (the amber warning stays); energy_source_here
      marks miners WarpTune regulates by this pool's tariff and PV surplus.
    • dvb-WarpTune reports the voltage search on each miner's present point
      (off, running with voltage and shares, done with the voltage found,
      the core power it saves by V² and the pool-side hashrate), and its
      [energy] source; the pool passes both to the devices page.
    • dvb-WarpTune: a step the miner has already run is judged on the core
      current measured there (journaled, survives restarts), against the warn
      line itself; only a step it has never run is predicted by f·V with the
      90 % headroom. The prediction ran high and kept the Gaia from 400 MHz
      (predicted 32.3 A, measured 31.3–31.8 A against a 32 A line).
    • dvb-WarpTune energy mode: [energy] source names the pool the tariff
      and PV feed come from, when miners mine on another pool. Share counters
      still come from each miner's own pool. Miners on pool.warppool.org read
      "no tariff" there and sat in Balanced.
    • dvb-WarpTune: core_current_warn_a per miner replaces the firmware's
      core over-current warn line for the step-up gate and the step-down;
      the regulator's own fault limit stays the hard stop.
    • dvb-WarpTune BitForge Nano: the three maker presets are the only
      steps, each at its own voltage — Eco 425 MHz @ 1000 mV, Medium 525 @
      1150, Power 625 @ 1160 — no 25 MHz steps between them. The table is
      found under Forge-OS's board "800" and WarpAxe's "bitforge-nano", and it
      wins over the device's option list, whose curve would have put 1150 mV
      on Eco and 1200 mV on Power.
    • dvb-WarpTune: the core regulator's current is a limit. Where the
      firmware reports it (WarpAxe coreCurrentA / coreCurrentWarnA), a step
      up past 90 % of the over-current warn line is blocked, and a point at the
      line steps down and is held for an hour. A regulator stop for a fault is
      left like a heat trip and named for its cause. A NerdAxe Gaia at
      420 MHz / 960 mV drew 31–33 A at full load against 28 A warn / 33 A
      fault and was cut on 2026-09-29.
    • Devices: a board of the AxeOS family registered under a sibling label is
      relabelled from what its firmware reports. A NerdAxe Gaia that took a
      NerdAxe Gamma's address kept the "NerdAxe Gamma" badge on its card
      (the probe already knew better), and the devices page has no way to
      edit it.
    • dvb-WarpTune: silent chips are seen within minutes. The dead-chip guard
      reads WarpAxe's instantaneous hashRate_now where present (hashRate
      is a 10-minute average), and the power-collapse guard arms itself from
      the settled draw of the point the miner runs, not only after a step
      WarpTune made. A collapse on the point that has run all along restores
      stock and restarts the device. On 2026-09-29 all eight chips of a
      NerdOctaxe went silent at 52 W and neither guard spoke.
    • dvb-WarpTune energy mode: on PV surplus a miner climbs only as far as the
      surplus carries it — its present draw plus the pool's excess, minus
      surplus_reserve_w (new, default 300 W). An Avalon Q went Eco → Super on
      ~1100 W of surplus, Super's +870 W took the surplus away, and it swung
      back to Eco 21 times in three hours on 2026-09-28, each switch a
      hash-board restart; on that surplus it now stays at Standard. The budget
      limits the way up only.
    • dvb-WarpTune: after the firmware's own overheat stop the point is held
      as a ceiling for an hour and left one step down once the device hashes
      again, two steps from the second stop within an hour. ESP-Miner and
      WarpAxe resume on their own at the same point, and WarpAxe latches after
      the third stop; before, WarpTune paused and then ran the point that
      tripped again. A stop for a lost temperature sensor changes nothing.
      Reads WarpAxe's overheatTrips and overheatCause (0.1.4) where
      present.

    Fixed

    • dvb-WarpTune: a step the miner has not run yet, below a step it has
      run under the core current warn line, is bounded by that reading
      instead of the f·V guess with 10 % headroom. The NerdAxe Gaia had
      measured 400 MHz at 31.6 A of 32 A and was still kept off 380 MHz by a
      predicted 30.4 A.
    • dvb-WarpTune energy mode: the PV surplus budget holds for as long as
      the miner runs its surplus mode. The mode outlives the surplus by
      surplus_exit_polls and the hold time; the budget dropped with the
      pool's surplus flag, and a miner could climb on grid power in that gap
      (NerdAxe Gaia 350→360 MHz at −460 W excess). Without a usable reading
      the budget is 0 W: no way up, and nothing is stepped down for it.
    • Overview and metrics: the daily hashrate (mean and peak) and the
      Prometheus pool hashrate divided each 1-minute share bucket by 300 s and
      read five times too low (3.06 instead of ~15.8 TH/s on the overview).
      The daily mean is now the day's difficulty over the seconds it covers,
      the peak the strongest hour.
    • dvb-WarpTune Eco: the efficiency yardstick is the best J/TH among the
      steps Eco may run. With an Eco cap, a better step above it (the
      Octaxe's 700 MHz over a 650 cap) made Eco step 650 → 625 and climb back
      every fourteen minutes.
    • Pool UI and API: the live hashrate per miner is the average of the last
      ten minutes, not of the last minute. VarDiff holds every miner near
      four shares a minute, so a single minute swung by about ±50 %: an
      Avalon Q at ~54 TH/s showed 105.6 TH/s on 2026-09-27. Ten minutes are
      about 40 shares, ±16 %. A miner that connected three minutes ago is
      averaged over those three minutes. Workers, wallet pages and the widget
      read the same number; NerdMiner-class devices keep their 30-minute
      window.
    • dvb-WarpTune: a short hashrate reading steps a miner down at once only
      when the pool's shares agree beyond their own noise (± 1/√n); until
      then it waits for more shares, and a point that is only marginally
      short is left to the yield table. Without any shares the reading
      decides alone, as before. On 2026-09-27 a Bitaxe Gamma read 89 % and
      89 % on about fifty shares, and on 2026-09-28 90 % on 200 shares
      (± 7 %); both times a sound 640 MHz was stepped down. Heat, power,
      input voltage and chip errors still step down at once.
    • dvb-WarpTune: a hand-tuned point between two ladder steps is a step of
      its own. The Gamma's 640 MHz sat between 625 and 650; after a step down
      the climb went 625 → 650 and skipped it, and 650 earned 87 %.
    • dvb-WarpTune: an input voltage no board can see (outside 0.5–30 V) is
      no reading, not a brown-out. A WarpAxe build reported -127500 mV once
      after a boot, and the VIN guard proposed an urgent step down.
    • dvb-WarpTune: shares a miner mines on its fallback pool are not read as
      a point that stopped hashing. ESP-Miner-style firmwares report
      isUsingFallbackStratum; while it is set, the coupled pool's counters
      stand still, so the share and reject windows are dropped and start over
      once the miner is back. Before, the share vote saw minutes without a
      share and could call a good voltage short.

    dvb-WarpPool v1.35.0 — Downloads

    Docker

    git.warppool.org/dvb-projekt/dvb-warppool:v1.35.0 (multi-arch amd64+arm64, ohne v-Präfix)

    Native packages

    • Linux .deb: amd64 + arm64 → apt install ./dvb-warppool_*.deb
    • Linux .rpm: amd64 + arm64 → dnf install ./dvb-warppool-*.rpm
    • Linux AppImage: x86_64 + aarch64 portable
    • Linux tarballs: x86_64 + aarch64 for manual installs
    • macOS .dmg: added shortly after publish (built separately) — or build from source
    • Windows .msi: paused since the forge migration (no Windows runner yet)

    Signatures

    • SHA256SUMS + cosign bundle (SHA256SUMS.bundle, project key)
    • SBOM (SPDX) for all dependencies

    Verify (project public key cosign.pub in the repo root):

    cosign verify-blob \
      --key cosign.pub \
      --bundle SHA256SUMS.bundle \
      SHA256SUMS
    sha256sum --check SHA256SUMS
    

    First-time setup: run dvb-warppool-setup for the first-run wizard.

    Downloads