FPGA SHA256 miner troubleshooting (lab-friendly, protocol-first)
FPGA miners are usually used for labs, education, or specialized rigs—not to compete with modern ASIC fleets. That’s good news for troubleshooting: you can be methodical. If your FPGA reports hashrate but doesn’t earn (or earns erratically), the failure is usually one of: bitstream mismatch, unstable clock/timing, USB transport, or a Stratum/proxy edge case.
What this guide covers
This page assumes your target algorithm is SHA256/SHA256d (Bitcoin-style). It applies to USB-FPGA modules, FPGA dev boards, and custom rigs controlled by a host running mining software. For “normal” miner onboarding (pool URLs, worker names), start with our miner setup guide.
Common symptoms (and what they really mean)
- Hashrate looks stable, but accepted shares are near zero → invalid nonces (timing/clock), wrong job parsing, or submissions aren’t reaching the pool.
- Accepted shares come in bursts → USB resets, proxy reconnect loops, or unstable overclock/temperature drift.
- High rejects but low stales → invalid shares (logic/timing), not network latency.
- High stales → latency, bad proxy placement, or job cadence/session issues upstream.
Troubleshooting checklist
Work top-down so you don’t chase the wrong layer.
- Record versions: bitstream ID, firmware version, host OS/kernel, and miner client version.
- Run a single device for 15–30 minutes. Multi-device rigs hide the root cause.
- Verify USB stability: powered hub, short cables, and avoid cheap splitters. If the device disconnects once, treat it as a hardware/transport issue until proven otherwise.
- Check clocks and temps: a “small” timing error becomes a lot of invalid shares.
- Compare pool-side stats: accepted vs rejected vs stale shares. Your pool dashboard tells the truth.
Stratum sanity checks
Even for older FPGA tooling, you can usually test your path with a known-good Stratum endpoint. A clean test is: direct connection (no proxy), one device, one pool, and a conservative clock. If you must use a proxy layer (legacy client compatibility), make sure the proxy runs close to the miner or close to the pool—avoid “halfway” placements that add jitter.
If you’re building your own pool or gateway, these FPGA edge cases are a great stress test for your Stratum behavior. Our pool build services include production Stratum tuning and onboarding docs so unusual devices still connect reliably. See services or our pool guides.
When to contact us
If you’re stuck, we can typically diagnose FPGA miners quickly if you send: (1) pool endpoint (host:port), (2) log excerpt showing share counts, (3) bitstream/firmware versions, and (4) a photo of the controller/USB setup.
Contact us for a troubleshooting session. We’ll isolate whether the issue is bitstream/timing, USB transport, or Stratum/pool behavior—and we’ll give you a clean, repeatable fix.
Contact us Back to hubRelated: USB miner troubleshooting · ASIC troubleshooting · Miner setup guide