Passer au contenu

Nous améliorons nos opérations pour mieux vous servir. Les commandes sont expédiées normalement depuis Laval, QC. Questions? Contactez-nous

Bitcoin accepté au paiement  |  Expédié depuis Laval, QC, Canada  |  Soutien expert depuis 2016

NERD_BOD_TRIGGER Warning

Nerd Family – ESP32 Brownout Detector Triggered

Brownout detector was triggered — ESP32-S3 forced reset because the 3.3 V rail collapsed below the ~2.43 V brownout threshold. Common across NerdMiner, NerdAxe, NerdQAxe, NerdNOS, NerdOctaxe, and Bitaxe family.

Warning — Should be addressed soon

Affected Models: NerdMiner v2 (WROOM and S3 variants), NerdAxe, NerdNOS, NerdQAxe, NerdQAxe++, NerdOctaxe, NerdOctaxe Gamma, Bitaxe Supra, Bitaxe Ultra, Bitaxe Gamma, Bitaxe GT, Bitaxe Hex, PiAxe (ESP32 variant) — every ESP32-S3-based open-source miner

Symptoms

  • Serial console at 115200 baud shows `Brownout detector was triggered` (often as `E (xxx) brownout: Brownout detector was triggered`)
  • Reset reason on next boot reads `rst:0xf (BROWNOUT_RST)` or older `RTCWDT_BROWN_OUT_RESET`
  • Device reboots in a 1-4 second loop, never reaches AxeOS / NerdNOS / NerdMiner UI
  • On TFT-equipped NerdMiner v2 / Lily T-Display: splash screen flashes then blanks repeatedly
  • On Bitaxe / NerdAxe: OLED shows boot logo, then dies before UI
  • On NerdQAxe / NerdQAxe++: Wi-Fi never associates, dashboard never reaches `192.168.x.y`
  • On NerdOctaxe / Bitaxe Hex: power-cycles every time the BM1370 / BM1366 hashboard rail starts to draw current
  • PSU brick stays cool to the touch under load (sign of charge-only cable or undersized PSU not actually delivering current)
  • Symptom intermittent during summer / when AC kicks on / when dryer runs on a shared circuit (mains sag)
  • Started after swapping cables or grabbing a USB-C cable from a junk drawer (charge-only cable trap)
  • Unit > 24 months old in unconditioned space (Canadian garage, attic, basement) — capacitor electrolyte aging
  • Brownout aligned with Wi-Fi TX bursts (radio current spikes near 500 mA briefly per ESP32-S3 datasheet)

Step-by-Step Fix

1

Full power-down for 60 seconds. Unplug everything — USB-C, barrel jack, XT30, PSU brick from the wall. Wait a full minute. ESP32-S3 has internal capacitance that holds state; a hard power-cycle clears any half-flashed NVS or wedged radio state. Plug back in.

2

Swap the USB-C cable for a known-good `data + power, 5 A rated, full-conductor` cable. Charge-only cables and 28 AWG dollar-store cables are the #1 cause of brownout loops on NerdMiner / NerdAxe / NerdQAxe. Use a recent ThinkPad cable, an Apple-branded USB-C, or an Anker `5A USB-C to USB-C` cable. Throw the bad cable in the bin.

3

Swap the wall PSU. NerdMiner v2 and Bitaxe Supra/Ultra/Gamma need 5 V / 2-3 A minimum. Bitaxe Hex / GT need 12 V / 6 A. NerdQAxe / NerdQAxe++ need 12 V / 10 A minimum. NerdOctaxe needs 12 V / 16 A minimum. If you can't verify your PSU's loaded output, you don't trust it — use a different one.

4

Try a different wall outlet, ideally on a different circuit. Mains sag from a neighbour's AC unit on a shared breaker, or your dryer running on the same 15 A circuit, drops wall voltage below the level your PSU needs to hold output regulation. Common in older Canadian housing on 60 A or 100 A service.

5

Disable any USB hub between the device and PC. Powered hubs are fine; bus-powered hubs fed by a laptop USB port often cannot supply the surge current ESP32-S3 demands during Wi-Fi association.

6

Multimeter the 5 V (or 12 V) input rail at the board pads. Set DMM to DC, probe between input and ground while the device is trying to boot. Healthy 5 V boards: rail holds >= 4.8 V even during the brownout cycle. Healthy 12 V boards: rail holds >= 11.5 V. If you see less, your upstream chain is delivering brownout-grade power. Fix that first.

7

Multimeter the 3.3 V test pad. Healthy: 3.25-3.35 V rock solid. If 3.3 V dips below 3.0 V while the 5 V / 12 V input is fine, your on-board LDO is at fault. Document the dip — it tells the bench tech exactly where to look.

8

Open a serial console at 115200 baud and capture the boot log. Save the full text of every boot cycle. The reset-reason line `rst:0xf (BROWNOUT_RST)` confirms the BOD; surrounding lines tell you whether Wi-Fi init, display init, or ASIC init was running. That timing reveals which subsystem dragged the rail down.

9

Disable Wi-Fi temporarily on NerdMiner / NerdAxe by booting into AP / config mode with no STA association. If brownouts stop in AP mode but resume the moment STA association starts — confirmed: Wi-Fi TX bursts are the trigger. Your PSU/cable can't supply the burst current.

10

Reduce the ASIC frequency or temporarily disable the hashboard on Bitaxe Hex / NerdQAxe / NerdOctaxe. If brownouts stop when the ASIC is gated, the hashboard rail is dragging the shared input down. You either need a bigger PSU or a board revision that decouples ESP32 supply from ASIC supply.

11

Scope the 3.3 V rail under load. 10 ms sweep, AC-coupled at the 3V3 test pad, trigger on a falling edge below 3.0 V. Capture the dip during Wi-Fi TX or hash ramp. If the dip is > 300 mVpp on a healthy board, the bypass capacitors near the ESP32-S3 are tired. Replace the 10 uF + 100 nF pair on `VDD3P3_CPU` and `VDD3P3_RTC` with fresh low-ESR ceramics. Hot-air SMD work, 0603 or 0805.

12

Replace the AMS1117-3.3 LDO on NerdMiner v2 and similar boards. AMS1117 sits on the edge of its dropout spec under USB-C-via-cheap-cable conditions. Substituting an `MIC5219-3.3` (lower dropout, higher current) or upgrading to a small switching regulator board (5 V -> 3.3 V buck, 1 A+) eliminates the LDO-dropout failure mode permanently. Hot-air rework, SOT-223 package.

13

Inspect and re-flow VBUS capacitors. Any cap near the USB-C input or barrel jack that shows bulging, browning, or leakage is replaced. On 24+ month boards, do this preemptively — capacitor electrolyte ages even when the device is healthy.

14

Increase the BOD threshold tolerance via firmware (advanced, band-aid only). The ESP-IDF `sdkconfig` exposes `CONFIG_ESP_BROWNOUT_DET_LVL_SEL`. Default level (`7` on ESP32-S3) trips near 2.43 V. Adjusting it masks rail issues — only acceptable when you've already proven the rail is healthy via Tier 2 and you're chasing nuisance trips on a known-marginal-but-functional board. Verify against your specific chip variant in `components/esp_system/port/brownout.c` before changing.

15

Roll firmware to last-known-good. If you flashed a new build and brownouts started, the new firmware may have changed the BOD threshold, increased Wi-Fi TX power, or changed init order. Roll back via the Bitaxe Web Flasher or appropriate NerdMiner / NerdQAxe flasher.

16

Stop DIY when ESP32-S3 itself shows damage (failed enumeration on USB-C bootloader, scorch marks, lifted ground pad), the LDO package is wrong for hand rework, or you've replaced the LDO and caps once and brownouts returned within 30 days. You are now in test-fixture territory. Book a D-Central Open-Source Miner Repair slot.

17

D-Central bench process: ESR meter on every cap, scope on every rail, programmable load on the input, ESP32-S3 BOOT/RESET-line manipulation to verify ROM bootloader entry, replacement of the regulator subassembly with current-spec parts, post-repair 4-hour burn-in at full hashrate. Each device is tested against its model spec.

18

Ship safely. Anti-static bag, double-box with at least 5 cm foam every side. Include a note with: model + revision, observed brownout pattern (which subsystem triggers it), serial-console log captured, firmware version, and the cables/PSUs you tried. That note shaves an hour of bench time off your invoice.

When to Seek Professional Repair

If the steps above do not resolve the issue, or if you are not comfortable performing these repairs yourself, professional service is recommended. Attempting advanced repairs without proper equipment can cause further damage.

Related Error Codes

Still Having Issues?

Our team of Bitcoin Mining Hackers has been repairing ASIC miners since 2016. We have seen it all and fixed it all. Get a professional diagnosis.