From 831e74a584bf09d15e459b3a5445871ed5ce287a Mon Sep 17 00:00:00 2001 From: Me Here Date: Tue, 26 May 2026 08:10:56 -0500 Subject: [PATCH] As-built: brushed-aluminium/stainless case + 9V DC pedal jack (pedalboard-ready) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Case: reskin the enclosure as a brushed-aluminium / stainless faceplate (metal sheen + brushed grain, chrome corner screws, dark engraved legends) instead of 3D-printed matte. The on-faceplate captions switch to the dark legend colour for contrast; I/O-strip labels stay light (they're on the dark recessed bay). BOM enclosure → die-cast aluminium (Hammond 1590-style) / folded stainless. - Power: add a standard 9 V DC pedal jack (2.1 mm centre-negative) so it drops straight onto a pedalboard, alongside USB-C (which still powers it on a desk and carries config). BOM adds the jack + 9 V→5 V buck + reverse-polarity protection. Total ≈ $59. Co-Authored-By: Claude Opus 4.7 (1M context) --- player-asbuilt.html | 38 ++++++++++++++++++++++---------------- 1 file changed, 22 insertions(+), 16 deletions(-) diff --git a/player-asbuilt.html b/player-asbuilt.html index 674118c..5b2af98 100644 --- a/player-asbuilt.html +++ b/player-asbuilt.html @@ -19,7 +19,9 @@ • rear I/O: external trigger in (footswitch), a 1/4" instrument pass-through with the click mixed in the ANALOG domain (DAC → summing op-amp → balanced line driver), a shared 1/4" balanced-TRS main out, plus an analog monitor - amp + speaker, USB-C and a PWR LED, in a compact matte case. + amp + speaker. Powered from a standard 9 V DC pedal jack (2.1 mm centre- + negative, pedalboard-friendly) or USB-C (also carries config), in a brushed + aluminium / stainless enclosure. A rough bill of materials for all of this is shown below the loader on the page. Compare with the idealized /player.html. One file, no deps; shares src/engine.js. --> @@ -38,8 +40,9 @@ --bg1:#12151c; --bg2:#05070a; --txt:#c7d0db; --muted:#7f8b9a; --link:#6cb6ff; --panel-bg:#171b22; --panel-bd:#2a313c; --field-bg:#0e1116; --field-bd:#222a36; - /* device — fixed matte hardware in both themes */ - --case:#22262e; --case2:#15181d; --device-bd:#0b0d11; --silk:#9aa6b2; + /* device — brushed-aluminium / stainless faceplate (fixed in both themes); + --silk is the dark engraved legend colour on the metal */ + --case:#a9afb7; --case2:#878e98; --device-bd:#5a616b; --silk:#2f343b; --pcb:#0d2620; --oled-bezel:#04060a; --metal:#3a424e; } :root[data-theme="light"]{ @@ -61,17 +64,17 @@ padding:3px 9px; font-size:14px; line-height:1; cursor:pointer } .tbtn:hover{ color:var(--txt) } - /* ---- the device: matte 3D-printed case ---- */ + /* ---- the device: brushed-aluminium / stainless faceplate ---- */ .device{ width:100%; max-width:380px; position:relative; background: - repeating-linear-gradient(115deg, rgba(255,255,255,.012) 0 2px, transparent 2px 4px), - linear-gradient(180deg, var(--case), var(--case2)); - border:1px solid var(--device-bd); border-radius:18px; padding:16px 14px 14px; - box-shadow:0 24px 55px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.05), inset 0 -2px 10px rgba(0,0,0,.6); + repeating-linear-gradient(90deg, rgba(255,255,255,.07) 0 1px, rgba(0,0,0,.05) 1px 3px), /* brushed grain */ + linear-gradient(158deg, #bcc2ca 0%, #969da7 46%, #aeb4bd 60%, #848b95 100%); /* metal sheen */ + border:1px solid var(--device-bd); border-radius:13px; padding:16px 14px 14px; + box-shadow:0 22px 50px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.55), inset 0 -2px 8px rgba(0,0,0,.28); } .device::before, .device::after, .device .screw{ content:""; position:absolute; width:10px; height:10px; border-radius:50%; - background:radial-gradient(circle at 35% 30%, #5a626e, #1a1e24 70%); box-shadow:inset 0 0 2px #000, 0 1px 1px rgba(0,0,0,.5); } + background:radial-gradient(circle at 36% 30%, #f0f2f5, #8b929b 60%, #5b626b 100%); box-shadow:inset 0 0 2px rgba(0,0,0,.4), 0 1px 1px rgba(0,0,0,.3); } .device::before{ top:12px; left:12px } .device::after{ top:12px; right:12px } .screw.bl{ bottom:12px; left:12px } .screw.br{ bottom:12px; right:12px } @@ -88,10 +91,10 @@ box-shadow:inset 0 0 0 2px #15181d, inset 0 0 0 3px #000, 0 3px 9px rgba(0,0,0,.55) } #tft{ display:block; width:320px; height:240px; max-width:100%; border-radius:4px; background:#06080c; box-shadow:0 0 0 1px #000, inset 0 0 18px rgba(0,0,0,.45) } - .tft-cap{ text-align:center; font-size:10px; color:var(--muted); margin-top:7px; letter-spacing:.02em } + .tft-cap{ text-align:center; font-size:10px; color:var(--silk); opacity:.8; margin-top:7px; letter-spacing:.02em } /* small caption under the screen / I/O (the beat indicator lives on the TFT now) */ - .ledbar-cap{ text-align:center; font-size:10px; color:var(--muted); margin:2px 0 0; letter-spacing:.02em } + .ledbar-cap{ text-align:center; font-size:10px; color:var(--silk); opacity:.8; margin:2px 0 0; letter-spacing:.02em } /* side-by-side: player on the left, BOM on the right (stacks when narrow) */ .cols{ display:flex; flex-wrap:wrap; align-items:flex-start; justify-content:center; gap:18px; width:100% } @@ -134,8 +137,9 @@ .jack{ flex:1; display:flex; flex-direction:column; align-items:center; gap:5px } .jack i{ width:20px; height:20px; border-radius:50%; background:radial-gradient(circle at 40% 34%, #333a44, #07090c 72%); border:2px solid #5b6470; box-shadow:inset 0 0 4px #000 } - .jack b{ font-size:7.5px; font-weight:700; color:var(--silk); letter-spacing:.05em; text-transform:uppercase; opacity:.85; text-align:center; line-height:1.3 } + .jack b{ font-size:7.5px; font-weight:700; color:#8f9aa6; letter-spacing:.05em; text-transform:uppercase; opacity:.9; text-align:center; line-height:1.3 } .jack.usb i{ width:24px; height:10px; border-radius:4px; border:2px solid #5b6470; background:#07090c; margin-top:5px } + .jack.dc i{ background:radial-gradient(circle, #6b7480 0 2.5px, #0a0d11 3.5px 72%) } /* DC barrel: centre pin */ /* ---- load panel (same as the other pages) ---- */ .panel{ width:100%; max-width:380px; background:var(--panel-bg); border:1px solid var(--panel-bd); border-radius:14px; padding:16px } @@ -211,9 +215,10 @@
Trig In
Inst In
Out TRS
+
9V DC
USB-C
-
Trig in · 1/4″ inst pass‑through (click injected) · shared 1/4″ balanced‑TRS out
+
Trig in · 1/4″ inst pass‑through (click injected) · shared 1/4″ balanced‑TRS out · 9 V DC or USB‑C power
@@ -236,7 +241,7 @@

Bill of materials

-

Rough parts list for the device above — a USB‑C‑powered RP2040 build with analog click injection. +

Rough parts list for the device above — a pedalboard‑friendly RP2040 build (9 V DC or USB‑C) with analog click injection. Ballpark one-off prices (USD); cheaper at volume.

@@ -256,11 +261,12 @@ + - - + +
PartQty~$
Connectors & power
1/4″ jack — Inst In (TS) · Out (TRS) · Trig In (TS)33
USB‑C bus power (5 V) + PWR LED — same port carries config; no battery11
9 V DC pedal jack (2.1 mm centre‑neg) + 9 V→5 V buck + reverse‑polarity protect — pedalboard power13
Build
Custom PCB (or perfboard)15
Passives, headers, wire — R/C for the analog stage + decoupling3
3D‑printed enclosure + screws / standoffs15
Total (one‑off)≈ $49
Die‑cast aluminium enclosure (Hammond 1590‑style) — or folded stainless — pedal‑grade112
Total (one‑off)≈ $59

Audio is summed in the analog domain: the DAC's click is mixed with a high‑impedance