diff --git a/README.md b/README.md index 6a44afb..c616d7e 100644 --- a/README.md +++ b/README.md @@ -38,6 +38,8 @@ The ISO installs **unattended** and bakes two users from publish OTA updates (verified podman and docker paths, with workarounds) - [`OPERATIONS.md`](OPERATIONS.md) — day-2 admin: connecting, installing games remotely, updates/rollback, GPU tuning, health checks +- [`WIRING.md`](WIRING.md) — PSU/mains wiring, J1000 pinout, power-switch + design (AC rocker + AUTO_PWRON), fans, first power-on ## Hardware prerequisites (on the board, not in the image) diff --git a/WIRING.md b/WIRING.md new file mode 100644 index 0000000..aaf40b5 --- /dev/null +++ b/WIRING.md @@ -0,0 +1,118 @@ +# BC-250 Console — Power Wiring Guide + +Wiring a **Mean Well LRS-350-12** (12 V / 29 A / 350 W) to the BC-250's +**J1000** PCIe 8-pin power input, with an AC-side power switch. + +> ⚠️ **The AC side of this build is mains voltage. It can kill you.** +> Work with the cord unplugged, never trust a switch to isolate, keep AC +> terminals covered when done (the LRS-350 ships with a terminal cover — +> use it), and if you are not comfortable with mains wiring, have someone +> qualified do §2. + +## 1. Parts + +| Item | Notes | +|---|---| +| Mean Well LRS-350-12 | Screw-terminal PSU: `L`, `N`, `FG` (AC side) + 3× `+V`, 3× `−V` (DC side) | +| PCIe 8-pin pigtail, 16 AWG | The **female receptacle** end mates with J1000. Must be **PCIe**, not EPS/CPU — the keying differs and EPS swaps 12 V/GND. Never force a connector. | +| Fused + switched IEC C14 inlet module | The cleanest "power switch": cord socket, rocker, and fuse in one panel part. Rated ≥ 250 VAC / 6 A. Fit a **5 A slow-blow** fuse (PSU pulls ~4 A max at 115 V, half that at 230 V). | +| Grounded (3-wire) IEC mains cord | Earth is not optional — the PSU chassis and `FG` must be earthed. | +| Ring or fork crimp terminals + ferrules | For the PSU screw terminals. Bare stranded wire under screws loosens over time. | +| Heat shrink, zip ties | Insulate every AC joint; strain-relieve everything. | +| Multimeter | Non-negotiable for §4. | + +## 2. AC side (mains → PSU) + +``` + IEC inlet module LRS-350-12 +┌───────────────────┐ +│ L ──── FUSE ──── SWITCH ────────────────► L +│ N ──────────────────────────────────────► N +│ E (earth) ───────────────────────────┬──► FG (ground symbol) +└───────────────────┘ └──► case earth stud (if separate) +``` + +- Fuse and switch go in the **Live** line only (a double-pole switch that + also breaks N is even better; never switch only N). +- Insulate the inlet's spade terminals with heat shrink or boots — they're + live whenever the cord is plugged in, switch position irrelevant. +- Earth goes straight through, unswitched and unfused, to `FG`. +- Fit the PSU's plastic terminal cover after wiring. + +## 3. DC side (PSU → J1000) + +J1000 pinout (from the BC-250 hardware docs): + +``` +[ GND GND GND GND ] 3 × 12 V pins, 5 × GND pins +[ GND 12V 12V 12V ] +``` + +- Run **each of the three 12 V wires to its own `+V` terminal** and the + ground wires to the `−V` terminals (bundle grounds 2-per-terminal if the + pigtail has five). The LRS-350 has three terminal pairs precisely so you + can split high current — at the board's ~220 W TDP that's ~18 A total, + ~6 A per 16 AWG wire. Comfortable. +- Keep the run short — under ~1 m limits voltage drop. +- Ferrules or ring terminals on every wire; screw them down hard and tug-test. +- Don't extend or thin the wires: 16 AWG minimum, as delivered. +- No inline DC fuse needed — the LRS-350 has over-current, over-voltage, + and short-circuit protection built in. + +## 4. Verification — BEFORE the board ever sees power + +With the **pigtail connected to the PSU but NOT to the board**: + +1. **Continuity (AC off, cord unplugged):** beep out each connector pin to + its PSU terminal. Confirm the three pins on J1000's `12V` positions trace + to `+V` and all others to `−V`. Match the pinout above against the actual + connector — identify which row is which by following the wires, not by + assuming latch orientation. +2. **Voltage (AC on, board disconnected):** switch on. Measure across the + connector's 12 V/GND pins: expect **12.0–12.2 V** (trim with the PSU's + `+V ADJ` pot if needed). Then probe **every pin pair** — any 12 V on a + pin that maps to GND means STOP and re-check. +3. Switch off, plug into J1000 (it only seats one way — if it doesn't seat, + it's the wrong connector, do not force), then proceed to §5. + +## 5. The power switch (how the console turns on and off) + +The BC-250 has no case power button — it was a rack blade. Instead: + +**`AUTO_PWRON1` jumper → pins 1-2** (factory default; also matches the BIOS +`AUTO_PWRON` setting from the install checklist). The board now boots +automatically the moment 12 V appears — so **the rocker on the IEC inlet *is* +the console's power switch**, exactly like a TV: + +| Action | Result | +|---|---| +| Rocker ON | PSU powers up → board auto-boots → GNOME login | +| Shut down from GNOME / `sudo systemctl poweroff` | Board off; PSU still energized (standby). Stays off until AC is cycled. | +| Rocker OFF → ON | Full power cycle → boots fresh | +| Rocker OFF | Everything dead. Fine to do after a soft shutdown; the OS is btrfs and the image is atomic, but teach the kid "menu shutdown first" anyway. | + +Notes: +- Jumper position 2-3 instead makes the board wait for a power-button press — + useless in a custom case (there's no accessible button; don't use this mode). +- `J2001`'s `PGD` pin powers the board **off** when shorted to ground — that's + a blade-chassis signal, not a power button. Leave J2000/J2001 unconnected. +- Leave the console rocker-ON overnight sometimes: automatic OS/app updates + install while it's powered. + +## 6. Fans (they also need 12 V) + +- `CPU_FAN1` is a standard 4-pin PWM header: `[ PWM Tach 12V GND ]` — BIOS + fan curve applies. Put the primary heatsink fan here. +- More fans: a PWM splitter on `CPU_FAN1` (fine for 2–3 standard fans), or + run extras directly off a spare `+V`/`−V` pair (they'll run full speed, + always — crude but effective for case airflow). +- Don't forget airflow over the **backplate** — the GDDR6 underneath runs + hot and has no temperature sensor. + +## 7. First power-on + +1. J1000 seated, fans connected, DisplayPort to TV, keyboard for BIOS. +2. Rocker ON. Expect: fans spin, DisplayPort shows POST within ~30 s. +3. No signs of life in 30 s → rocker OFF, re-do §4. Do not keep retrying. +4. First stop: BIOS — confirm the firmware/VRAM settings from the install + checklist, then boot the installer USB.