Electrode node housing
Files: housing_base.step / .stl, housing_lid.step / .stl (lid STL is already flipped for printing). Parametric source: housing.py (edit the constants at the top, run python3 housing.py).
Outer size 35 x 31 x 24 mm body (HAT stack), 47 mm over the two screw ears, 3 mm contact pads below the floor.
Head side (bottom)
- Three 8 x 8 mm raised pads, 12 mm pitch, along the long axis: signal +, signal -, bias (bipolar pair 24 mm apart). Each has a 6 x 6 x 0.8 mm pocket for a square of the Adafruit 1324 conductive HOOK tape and a 1.6 mm hole into the cavity. Wire: strip 3 cm of silicone wire, push through the hole, fan the strands under the tape, fix the tape with a drop of conductive epoxy or sew it with conductive thread, then solder the other end to J2 (+, -, bias).
- Two 7 mm wide, 0.8 mm deep recesses along the long edges for ordinary adhesive hook tape: this is what holds the node on a loop-fabric elastic cap. Cut a 30 x 10 mm window in the cap where the node goes so the three contact pads reach the scalp.
Inside (bottom to top)
- Tiny 2350 in a 0.8 mm floor pocket, USB-C through the 10 x 4.5 mm end-wall cutout. Solder two 1x8 female headers (2.54 mm, 8.5 mm tall) onto its castellations, pointing up.
- Electrode HAT (26 x 22) with two 1x8 male pin headers on the underside plugs into those sockets: J1 = row A (VBUS, GND, 3V3, GP29, GP28, GP27, GP26, GND), J3 = row B (GP0..GP7), pin 1 at the USB end. The HAT is keyed by nothing, so match its “USB end” silkscreen arrow to the Tiny’s USB.
- LiPo 502030 on top of the HAT on 1 mm foam tape, under the lid.
- Lid: 1.5 mm lip into the cavity, two M2 x 6 self-tapping screws in the end ears (1.8 mm pilot).
Wires (only 5 left)
Electrode pads -> J2 (+, -, bias) at the HAT’s USB end; battery -> J4 (+, -) at the far end. Signals: SPI0 GP0 MISO / GP1 CS / GP2 SCK / GP3 MOSI, I2C0 GP4 SDA / GP5 SCL, GP26 DRDY, GP27 INT. The Tiny has no radio: data goes out over its USB-C, or add an ESP32-C3 module later.
PETG or PLA, 0.2 mm layers, base printed as-is (pads down, no support needed for 3 mm pads), lid printed flat. For a softer feel on the head print the base in TPU 95A; the pads then flex.
Not done yet
- No strain relief for the wires (they stay inside the box, so none needed).
- Pad pitch 20 mm gives a bipolar pair 40 mm apart; change
PAD_PITCHif you want tighter.