OSSO

Decisions & design rules

Journal entries tagged as decisions, rules, design notes, or locked values, oldest first. Newer entries supersede older ones.

Oct 16, 2026 10:05 AM ET: Interposer height locked

Oct 16, 2026 · 10:05 AM ET · journal ↗

Interposer gap locked at 11.5mm (stack pitch 13.1mm with 1.6mm boards). TH zones clear through the window of the flipped board above when no companion is mounted there. Pin requirement: double-ended, collared, >=1A. Pin choice still TBD; several stocked non-custom options exist at this height (Xinyangze YZD0029-20135-01, YZD0047-25131-01, generic 13mm collared pins). See refs/pogo_selection.md.

Oct 16, 2026 11:02 AM ET: No bare copper rule

Oct 16, 2026 · 11:02 AM ET · journal ↗

the designer: avoid bare copper. Every laser-exposed copper area gets solder via paste and reflow, including unused (no-populate) pads, which still get paste. All other pads must be ENIG from the factory. Process change: the stencil paste windows include no-populate pads; step 13 (optional coat/OSP) is dropped.

Oct 16, 2026 11:04 AM ET: PINNED, open item

Oct 16, 2026 · 11:04 AM ET · journal ↗

Isolation-cut copper edges (bare sidewall on both sides, bottom never reflowed). Options discussed: conformal coat masked with laser-opened stencil film, or accept the edges and run tarnish tests. the designer may prefer other TBD methods. Unresolved.

Oct 16, 2026 11:14 AM ET: Companion board design note (future)

Oct 16, 2026 · 11:14 AM ET · journal ↗

the designer: some companion boards may extend beyond the overall 140mm outline to allow large or specialty components. OSSO note: this affects the 150mm enclosure (it needs openings or a larger shell) and the no-edge-stop side at x=0.

Oct 16, 2026 11:20 AM ET: Blank spec decisions

Oct 16, 2026 · 11:20 AM ET · journal ↗

2026-10-19 9:06 AM ET — Corner standoff confirmed

Oct 19, 2026 · 9:06 AM ET · journal ↗

2026-10-19 10:25 AM ET — DECISION: 20A system max

Oct 19, 2026 · 10:25 AM ET · journal ↗

2026-10-19 11:33 AM ET — DESIGN NOTE: top/bottom board used as bottom board

Oct 19, 2026 · 11:33 AM ET · journal ↗

2026-10-19 12:36 PM ET — DECISION (the designer): unified companion board size

Oct 19, 2026 · 12:36 PM ET · journal ↗

2026-10-19 4:00 PM ET — DECISION (the designer): mains companion uses a 5.08 mm (0.200 in) grid

Oct 19, 2026 · 4:00 PM ET · journal ↗

2026-10-19 7:40 PM ET — DECISION (the designer): enclosure and stack height are per-build, not fixed

Oct 19, 2026 · 7:40 PM ET · journal ↗

2026-10-19 7:59 PM ET — DESIGN RULE: companions are standalone-testable

Oct 19, 2026 · 7:59 PM ET · journal ↗

2026-10-19 8:41 PM ET — Design rule: on-board PSU limit

Oct 19, 2026 · 8:41 PM ET · journal ↗

Anything larger than 8VA uses a dedicated external power supply, not an OSSO companion.

2026-10-20 8:08 AM ET — Design rule: ground pours

Oct 20, 2026 · 8:08 AM ET · journal ↗

No separate inner ground plane (stay 2-layer). Both outer pours are ground; unused vias are tied to ground to stitch top and bottom and avoid floating islands. Stitch densely near the pogo block and along signal traces.

2026-10-20 8:09 AM ET — Decision: interposer ground via extra pogo pins

Oct 20, 2026 · 8:09 AM ET · journal ↗

Ground through the interposer is provided by adding more pogo pins (dedicated ground sites, same part and process), not by a separate technique (wire, ring, gasket). Count and placement to be decided with the pinout.

2026-10-20 8:10 AM ET — Note: grounding rules in spec-to-object

Oct 20, 2026 · 8:10 AM ET · journal ↗

Pinout and routing will include automated grounding rules (ground pin placement and count, return paths, stitching) as part of spec-to-object programming.

2026-10-20 8:18 AM ET — Decision: via-in-pad on companion lap pads

Oct 20, 2026 · 8:18 AM ET · journal ↗

Companion lap pads get plated via-in-pad (~Ø0.4–0.6) with an exposed top ring so solder wicking confirms each blind joint visually; add extra paste. Logged in PENDING_ADJUSTMENTS.md for the next batch.

2026-10-20 9:37 AM ET — Design note (the designer)

Oct 20, 2026 · 9:37 AM ET · journal ↗

Top v1i card-edge footprints: the 2×10 and 2×22 are both optional per build. Either, both, or neither may be populated depending on component mounting; suppressing either carries no penalty.

2026-10-20 10:00 AM ET — Design note (the designer)

Oct 20, 2026 · 10:00 AM ET · journal ↗

Card-edge connectors/cards may use a 3D-printed skeleton for standardized mounting to the enclosure (pairs with queued corner drills on card-edge boards).

2026-10-20 10:13 AM ET — Design note (the designer)

Oct 20, 2026 · 10:13 AM ET · journal ↗

Placement/routing code test harnesses: use known, tested PCBs with full designs as references; the harness attempts to replicate each as an OSSO stack.

2026-10-20 10:56 AM ET — Machine layout decision (the designer)

Oct 20, 2026 · 10:56 AM ET · journal ↗

Cell is a C shape for a standing operator: no lateral movement, every operation within reach (turn at the waist only). Planning numbers (to verify): ~500–600 mm comfortable reach, inner C radius ~0.6 m, counter at elbow height ~950–1050 mm, tall tools on outer ring/upper shelf, kitting/parts below counter.

2026-10-20 10:57 AM ET — Machine rule (the designer)

Oct 20, 2026 · 10:57 AM ET · journal ↗

Every machine (laser, reflow, dip pot, pick-and-place, printer, test) is built into the C cell, within the standing operator's reach. No separate rooms or remote tools. Implies compact, cell-integrated tools with built-in fume extraction and enclosures for the hot/laser stations.

2026-10-20 11:01 AM ET — Machine rule: no conveyance (the designer)

Oct 20, 2026 · 11:01 AM ET · journal ↗

No part conveyance in the cell. The operator moves the part between operations to reduce clutter in the mechanism. Implies: each station has a clear landing/staging spot and a common, repeatable board nest/fixture interface so the board registers the same way at every station.

2026-10-20 11:01 AM ET — Machine rule: jigs per machine (the designer)

Oct 20, 2026 · 11:01 AM ET · journal ↗

Every machine has a dedicated jig for repeatable operations. Jigs share one board datum (tooling holes + fiducials on the 140 mm blank) so the board registers identically at each station; jigs keyed/poka-yoke, 3D-printable in the cell. Ties to the no-conveyance common nest rule.

2026-10-20 11:05 AM ET — Machine decision: process order via signage (the designer)

Oct 20, 2026 · 11:05 AM ET · journal ↗

Station physical placement implies NO sequence (no top-to-bottom/left-to-right order). Process order is shown by the digital display at each machine indicating what is next. Displays are e-watch sized (~1.5–2 in). Placement is then free to optimize reach, frequency and ventilation; sequence can vary per spec. Suggestion (open): next station highlights itself (flashing display or light ring) for at-a-glance guidance.

2026-10-20 11:06 AM ET — Machine decision: station lighting cue (the designer)

Oct 20, 2026 · 11:06 AM ET · journal ↗

Accepted: the next station highlights itself (light ring/display), like a theater program cueing the next scene. Moves from open suggestion to decision.

2026-10-20 11:07 AM ET — Machine rule: sequence-tied interlocks (the designer)

Oct 20, 2026 · 11:07 AM ET · journal ↗

Any machine requiring an interlock is tied to the process sequence: it stays locked and unlocks only when its step is the current required step. Out-of-sequence access is blocked (poka-yoke at the cell level). Open follow-ups: e-stop always active independent of sequence; keyed maintenance/override mode for cleaning, jams and service.

2026-10-20 11:08 AM ET — Machine decision: e-stop and safety rollback (the designer)

Oct 20, 2026 · 11:08 AM ET · journal ↗

E-stop is always engaged/active, independent of the sequence. Faults and e-stop trigger safety rollbacks to a defined safe state, and restart requires a defined reset sequence before resuming. (Keyed maintenance mode is still an open item.)

2026-10-20 11:09 AM ET — Machine decision: inspection in the sequence (the designer)

Oct 20, 2026 · 11:09 AM ET · journal ↗

An inspection step follows operations in the sequence: the operator brings the part to the inspection station (jigged), where it gets magnification and image capture, AI interpretation, and an operator decision (pass / rework / scrap). Images and decisions are logged to the traveler (builds a dataset for future checks). Now: visual inspection with AI interpretation; more sophisticated checks later.

2026-10-20 11:11 AM ET — Machine decision: clad exterior (the designer)

Oct 20, 2026 · 11:11 AM ET · journal ↗

The outside of the C is fully clad in the concept, so external operations cannot interfere; all access is from the inside, operator position. (Service access, exhaust and utility penetrations to be planned through the cladding.)

2026-10-20 11:12 AM ET — Machine decision: entry opening (the designer)

Oct 20, 2026 · 11:12 AM ET · journal ↗

The C may close around until only a door-width opening remains for operator entry; no physical door is required.

2026-10-20 11:13 AM ET — Machine decision: height and header (the designer)

Oct 20, 2026 · 11:13 AM ET · journal ↗

Cell height is about door height (~2.0–2.1 m). A closing brace/header spans above the entry opening for structural strength, closing the ring.

2026-10-20 11:22 AM ET — Machine decision: blanks bought-in (the designer)

Oct 20, 2026 · 11:22 AM ET · journal ↗

Blanks, companions and cards are bought-in pre-plated fab stock (PTH/vias, ENIG, hard-gold bevelled fingers, routed outlines/key slots/tooling holes). The cell does personalisation (laser) and assembly. Note: the mains PSU card test needs an isolated, guarded fixture (possibly hipot) with its own interlock and shielding at test station 9.

2026-10-20 11:23 AM ET — Machine decision: paste by XYZ dispensing (the designer)

Oct 20, 2026 · 11:23 AM ET · journal ↗

Solder paste is applied by an automated XYZ dispenser (jet/auger) driven directly from the spec paste layer. No stencils are produced. Open: fine-pitch support level; possible shared gantry with pick-and-place.

2026-10-20 11:24 AM ET — Machine decision: shared paste/placement gantry (the designer)

Oct 20, 2026 · 11:24 AM ET · journal ↗

Paste dispensing and pick-and-place share one gantry (tool heads: dispenser + vacuum nozzle). Custom equipment optimized for the 140 mm OSSO board size (and companion/card boards), not adapted generic machines.

2026-10-20 11:27 AM ET — Machine decision: paste pitch limit (the designer)

Oct 20, 2026 · 11:27 AM ET · journal ↗

Locked: 0402 is the smallest supported package for now. A jet dispensing head is required on the shared gantry. Still no stencils. Anything smaller than 0402 goes on an externally fabricated companion board.

2026-10-20 12:31 PM ET — Decision: film stencil in drum frame locked (the designer)

Oct 20, 2026 · 12:31 PM ET · journal ↗

Locked: 0.075 mm film (the designer already has it) tensioned in a 3D-printed drum frame, laser-cut in the board jig, used as the near-term paste stencil. To confirm: whether the film is polyimide (Kapton) or polyamide (nylon). Next design: stencil laser jig + drum frame. Confirmed (12:32 PM ET): film is polyimide (PI), non-adhesive, 0.075 × 500 × 2000 mm roll. Order screenshot saved as refs/stencil/PI_film_0075_order.png.

2026-10-20 12:39 PM ET — Decision: stencil frame punching (the designer)

Oct 20, 2026 · 12:39 PM ET · journal ↗

Locked: screw holes are punched as you go by hand (vat method), outside the laser field. Only the stencil apertures are lasered, on the 150 mm galvo lens; the frame registers to the jig so the 140 mm board area sits in the 150 mm field. Final mounting step (12:40 PM ET): trim excess film outside the clamp ring to keep it out of the way. Frame feature: an outer edge to trim against.

2026-10-20 2:24 PM ET — Decision: board goes in after the film cut

Oct 20, 2026 · 2:24 PM ET · journal ↗

The stencil film is laser-cut with NO PCB in the jig. This avoids marking the board with the out-of-focus beam that passes through the cut openings, and avoids film debris landing on the pads. After the cut, with the frame still on its dowels, place the PCB on the lift carrier (lowered), clear any debris, then lift it to the film plane and print. Applies to stencil v2 and later. The stencil v2 drawing notes will be updated at the next regen.

2026-10-21 8:15 AM ET — Decision: OSSO PnP architecture, G-code coarse moves with human fine control

Oct 21, 2026 · 8:15 AM ET · journal ↗

2026-10-21 8:16 AM ET — Decision: PnP fine motion

Oct 21, 2026 · 8:16 AM ET · journal ↗

Fine XYZ moves use the printer's own axes in small jog steps. The custom head only needs to add rotation (theta) and the vacuum. No separate micro-manipulator stage for now.

2026-10-21 8:19 AM ET — Decision: PnP part tray

Oct 21, 2026 · 8:19 AM ET · journal ↗

2026-10-21 8:22 AM ET — Decision: PnP tray loading

Oct 21, 2026 · 8:22 AM ET · journal ↗

Tray loading is a separate step done ahead of time on the same machine. The operator advances the part tape through a tape jig by hand to expose the next part. G-code moves the head to the tape pickup point, then to that part's tray cell. The human makes the final pick and drop, the same way as at placement.

2026-10-21 8:24 AM ET — Decision: PnP operator controls

Oct 21, 2026 · 8:24 AM ET · journal ↗

The operator controls X, Y, Z, rotation and vacuum on/off. X/Y/Z use the printer's own axes. Rotation is driven by the extruder (E) axis and vacuum by the fan output (M106/M107), both triggered from G-code on the head.

2026-10-21 8:27 AM ET — Decision: PnP camera alignment

Oct 21, 2026 · 8:27 AM ET · journal ↗

One angled microscope camera with a calibrated digital crosshair or part-outline overlay on the monitor. Alignment is judged at a fixed hover Z above the pad, then Z drops straight down. Calibrate once by placing a test part and locking the overlay to where it lands. No second camera, mirror or prism.

2026-10-21 8:33 AM ET — Decision: PnP chassis accuracy scope

Oct 21, 2026 · 8:33 AM ET · journal ↗

The bed slinger does not need to be precise. The camera and operator absorb all slop, such as backlash, squareness and endstop error, when landing each part. The chassis only has to hold the part without dropping it, and travel without crashing into placed components or the tray walls: safe travel height, Z clearance and smooth motion. Priorities this sets: safe-Z travel moves, gentle acceleration, and secure vacuum hold during travel.

2026-10-21 8:34 AM ET — Confirmed: PnP chassis requirements

Oct 21, 2026 · 8:34 AM ET · journal ↗

the designer confirmed all current chassis notes as requirements:

2026-10-21 8:39 AM ET — Decision: PnP rotation strategy

Oct 21, 2026 · 8:39 AM ET · journal ↗

The camera is fixed and only the nozzle rotates. Rotation is limited to very small fine trims, within about ±5°. All 90°, 180° and 270° rotation happens at the tape jig: the operator feeds the tape into the jig at the right starting orientation, so each part goes into its tray cell already facing the way it will be placed. The overlay crosshair or outline never rotates, and the head stays light.

2026-10-21 8:40 AM ET — Decision: tray cells keep part rotation

Oct 21, 2026 · 8:40 AM ET · journal ↗

Each tray cell is shaped and rotated to hold its part in the final placement orientation (set at the tape jig) and keep it there. Placement from the tray therefore needs only minor rotation correction (fine trim), the same as loading.

2026-10-21 8:43 AM ET — Decision: PnP nozzle rotation drive

Oct 21, 2026 · 8:43 AM ET · journal ↗

Only the nozzle and a short flexible silicone tube rotate (±5°). There is no rotary seal and no hollow-shaft motor. The valve, sensor and camera stay fixed. The drive is a very small stepper (on the E axis) through a gear reduction, keeping moving parts to a minimum. The nozzle runs in a bearing or bushing so it spins true.

2026-10-21 8:44 AM ET — Decision: PnP rotation gear

Oct 21, 2026 · 8:44 AM ET · journal ↗

The nozzle holder carries a lever-arm gear sector with only enough teeth to mesh with the stepper pinion over ±5° plus margin. No full gear.

2026-10-21 8:51 AM ET — Design note: PCB engraving as a placement aid

Oct 21, 2026 · 8:51 AM ET · journal ↗

The laser engraving on the PCB can be designed to help the camera crosshair and outline overlay, through deliberate graphics such as part outlines or courtyard marks, corner ticks, pin-1 marks, local fiducials and center marks. These would make manual alignment faster and more accurate. To be developed later; no action now.

2026-10-21 8:52 AM ET — Design note: engraved labels for human confirmation

Oct 21, 2026 · 8:52 AM ET · journal ↗

At each placement position, the laser engraves a tiny text label (e.g. the reference designator) inside the camera's view at the crosshair, so the operator can confirm the G-code brought the head to the right part before placing. The part tray gets the same treatment: each cell has a printed or engraved index/label that matches the G-code prompt. To be developed later; no action now.

2026-10-21 8:54 AM ET — Design note: nozzle changes are manual

Oct 21, 2026 · 8:54 AM ET · journal ↗

For now the human operator changes nozzles by hand. There is no automatic tool changer. G-code pauses with a prompt (e.g. 'fit nozzle N502') when the next part needs a different nozzle.

2026-10-21 8:56 AM ET — Decision: PnP operator controls (game controller)

Oct 21, 2026 · 8:56 AM ET · journal ↗

Wired handheld game controller, used while watching the video monitor. Mapping: left stick = X/Y step nudge (discrete steps, not analog speed); D-pad = single X/Y steps, D-pad up/down = step size 1/0.1/0.01mm; triggers = Z down/up (Z down needs a deliberate hold); bumpers = rotation trim -/+; A = vacuum on (pick); B = vent (release); Start = continue to next part; Back/Select = pause/skip. Separate hardware e-stop, not on the controller.

2026-10-21 8:56 AM ET — Decision: PnP e-stop is a foot pedal

Oct 21, 2026 · 8:56 AM ET · journal ↗

The hardware e-stop is a foot pedal, so the operator can stop the machine without letting go of the controller.

2026-10-21 8:57 AM ET — Decision: PnP foot pedal is an enable switch (supersedes e-stop pedal)

Oct 21, 2026 · 8:57 AM ET · journal ↗

The foot pedal is a hold-to-run enable: the machine moves (G-code and jog) only while the pedal is held down. Releasing it stops motion immediately. A separate e-stop is still recommended. A 3-position enabling pedal (off / enable / panic-press-through) is worth considering.

2026-10-21 8:57 AM ET — Decision: 3-position enabling pedal plus a separate e-stop

Oct 21, 2026 · 8:57 AM ET · journal ↗

The foot pedal is a 3-position enabling switch: released = stop, middle = run (motion allowed), stomped through = stop (panic). A separate e-stop button stays on the machine.

2026-10-21 8:59 AM ET — Decision: PnP nozzle uses a Luer-lock needle

Oct 21, 2026 · 8:59 AM ET · journal ↗

The nozzle is an off-the-shelf Luer-lock blunt dispensing needle. It mounts on a Luer fitting on the rotating holder, which carries the gear sector and lever arm (one printed part, ideally resin). The needle tip is not printed. Nozzle changes are a manual swap of Luer tips, sized by gauge to the part.

2026-10-21 9:00 AM ET — Decision: PnP head illumination

Oct 21, 2026 · 9:00 AM ET · journal ↗

The head has an illumination LED for the camera view. It may come built into the camera (many USB microscopes have a ring LED). Add a separate diffused LED only if the camera's light is missing or causes glare.

2026-10-21 9:01 AM ET — Decision: PnP dedicated LED (supersedes camera LED)

Oct 21, 2026 · 9:01 AM ET · journal ↗

Don't use the camera's built-in LED. A separate LED sits in a 3D-printed mount on the head, so its angle and position can be tuned by reprinting the mount until the lighting is right. After that, only the brightness is adjusted (e.g. PWM from a spare printer output or a simple dimmer).

2026-10-21 9:11 AM ET — Decision: PnP platform printer

Oct 21, 2026 · 9:11 AM ET · journal ↗

the designer wants more controllable outputs for future actions. Leading pick: Elegoo Neptune 4 Pro (stock Klipper, several fan outputs that can be remapped, 225×225×265 bed, about [amount removed]–239 at us.elegoo.com). Stage 1 uses it unmodified. Not yet purchased.

2026-10-21 9:23 AM ET — DECISION (the designer): PnP stage 1 printer

Oct 21, 2026 · 9:23 AM ET · journal ↗

Ordering two "Damaged as Parts Only" Elegoo Neptune 4 units (about [amount removed] each plus shipping, NV Liquidation, eBay item 266477091033) to combine into at least one working PnP platform. The seller warrants one fully working unit per two bought, or free replacement parts. The mainboard is shared across the Neptune 4/Pro/Plus/Max. The bed is about 235x235mm: the 140x140 OSSO board plus a combined tray/tape jig strip about 78mm wide with 5 lanes (drawings/osso_pnp_bed_n4_v1). Companion boards use the swap-mode layout.

2026-10-21 9:38 AM ET — DECISION (the designer): use existing film first

Oct 21, 2026 · 9:38 AM ET · journal ↗

the designer will use his existing 0.075mm polyimide film first. The ZXAKAOSI practice pack becomes backup stock.

2026-10-21 10:16 AM ET — DECISION (the designer): paste dispensing on its own machine

Oct 21, 2026 · 10:16 AM ET · journal ↗

Paste is dispensed (not filament or stencil-squeegee on the PnP) from a custom applicator head on a dedicated bed-slinger, separate from the PnP machine. Each machine shares a common jig datum so boards move between them without re-registering, and each runs a pre-run calibration. Details to be defined later. Background: the designer considered a filament with embedded paste and set it aside (the flux and solder heat window conflicts, binder residue, and dot volume control).

2026-10-21 10:21 AM ET — DECISION (the designer): pre-tinned boards (two-stage solder)

Oct 21, 2026 · 10:21 AM ET · journal ↗

Boards are tinned ahead of time. Stage 1: flux, place a solder sphere per pad, reflow with no parts, which leaves exact, repeatable domed solder on each pad and can be inspected by camera. Stage 2 (end user): tacky flux only, place parts, reflow. Things to watch: parts rocking on domed pads (tacky flux, or flatten or coin the pads), two reflows on ENIG (test this), and sphere sizing or count for large pads. Earlier option logged: spheres plus flux for BGA and array pads, paste for chip parts. The paste dispenser on its own machine stays the general path, and it can dispense flux too.

2026-10-21 10:22 AM ET — DECISION (the designer): ball stencil for pre-tinning

Oct 21, 2026 · 10:22 AM ET · journal ↗

Pre-tinning uses a laser-cut ball stencil: a film mask with one hole per pad, laid on the fluxed board. Spheres are poured on, the extras are swept off, the mask is lifted, and the board is reflowed with no parts. It is made with the stencil v2 frame and the laser. For 0402, pads are about 0.5mm and spheres about 0.25-0.3mm. The PnP (30-32 gauge Luer needle, vacuum) is used only to replace a missing ball, since placing balls one at a time is too slow. Watch for static or sticking on release (a puff of air, a grounded tip).

2026-10-21 10:34 AM ET — DECISION (the designer): standard ball size and ball stencil film

Oct 21, 2026 · 10:34 AM ET · journal ↗

2026-10-21 10:36 AM ET — DECISION (the designer): stencil-free ball dispensing head (supersedes ball stencil)

Oct 21, 2026 · 10:36 AM ET · journal ↗

Tinning uses a ball dispensing head on a bed-slinger instead of a ball stencil: no stencil, no per-board mask. Proposed concept (not yet confirmed): a hopper of 0.25mm SAC305 balls, then a singulator (an E-axis pocket disc), then a short gravity drop tube about 0.5mm above the pad. N balls per pad set the volume, and an optical gate and/or camera confirm each drop. Flux is applied first (dispenser). The earlier 0.2mm ball stencil film entry is superseded.

2026-10-21 11:47 AM EDT — Design note: separate machines today, one machine later

Oct 21, 2026 · 11:47 AM ET · journal ↗

the designer's design note: in time, all operations (paste or flux dispensing, ball tinning, pick and place) can be collapsed into one machine. For simplicity and maintenance, they stay as separate machines today, each sharing the common jig datum.

2026-10-21 12:15 PM EDT — BR-G1 decision: FR4 PCB over laser-cut 304 stainless

Oct 21, 2026 · 12:15 PM ET · journal ↗

the designer compared the BR-G1 gear disc as a PCBWay laser-cut 304 stainless part with the fab-made 0.30mm FR4 PCB. The costs are very similar, but PCBWay lists laser cutting at ±0.1mm, which is too loose for the 0.30mm pockets, while a PCB's drilled unplated holes hold ±0.05mm with tighter hole positions. Decision: make BR-G1 as an FR4 PCB using pcb/br_g1_v1. The laser STEP and DXF in pcb/br_g1_v1/laser/ are kept as an alternate, for a precision etching or fiber-laser shop later.

2026-10-21 12:29 PM ET — DECISION (the designer): flux dispensing for tinning = syringe head on its own Neptune 4

Oct 21, 2026 · 12:29 PM ET · journal ↗

Flux for the tinning step is dispensed by a syringe applicator on its own Neptune 4 (bed-slinger). It uses the same common jig datum and pre-run calibration as the other machines. The flux is tacky gel flux pushed by a stepper-driven plunger (leadscrew or the E-stepper) through a 22-25ga blunt tip, with a suck-back retract after each dot to prevent stringing. Flux dots must be tacky enough to hold a 0.25mm ball in place. Backup: pin transfer (dip a pin in a thin flux film, then touch the pad). A brush or felt stripe was considered but not chosen. Not confirmed yet: whether the paste machine shares the same syringe head design. Concept drawing: drawings/osso_flux_syringe_head_v1.

2026-10-21 12:39 PM EDT — Decision: spray conformal finish after assembly

Oct 21, 2026 · 12:39 PM ET · journal ↗

Laser-cutting isolation lines through the mask and copper leaves the trace edges as bare copper (about 35µm tall for 1 oz copper). the designer decided to spray a conformal finish after assembly for confidence. The suggested coating is acrylic (for example MG Chemicals 419D), which seals the exposed edges and can still be reworked through. The specific product isn't chosen yet.

2026-10-21 1:05 PM ET — DECISION (the designer): universal OSSO Test Board, hybrid matrix

Oct 21, 2026 · 1:05 PM ET · journal ↗

Pin assignments belong to each board under test and change from board to board. To keep the number of tester designs and copies small, the tester is universal: all 40 interposer sites get identical flexible channels, and the per-board test script assigns each site's role.

2026-10-22 9:38 AM EDT — Design note: farm model (high level)

Oct 22, 2026 · 9:38 AM ET · journal ↗

the designer: The process may be slow per board, but if operations are combined into one machine, many machines can run in parallel on longer jobs, like a 3D printer farm. Implications: optimize each machine for low cost, reliability, and unattended runtime rather than speed; throughput scales by adding machines; standardized heads, tools, and jigs ease farm maintenance. This fits the consumer-printer-based machine design and the earlier note that operations can eventually collapse into one machine.

2026-10-22 9:47 AM EDT — Single-machine scope decisions (ideation)

Oct 22, 2026 · 9:47 AM ET · journal ↗

Decisions (the designer): Test stays a separate station. A second side is done by a manual board flip. Conformal coating is manual. The laser can mark the board at any time and may assist with supplemental ablation steps (TBD). Parts tray concept: one carrier plate holding the blank and parts, registered on dowels at the tooling hole and slot, loaded in and an assembled board out. Next topic: through-hole pads.

2026-10-22 9:55 AM EDT — Cost comparison basis: high volume (decision)

Oct 22, 2026 · 9:55 AM ET · journal ↗

the designer: Price comparisons use high-volume pricing. Low-quantity/low-cost sourcing choices are business decisions, not design ones. At volume, TH washer preforms cost about the same as paste metal (~[amount removed]/g; Alpha HF850 SAC305 washer, [amount removed]/60k reel, https://www.hisco.com/Product/278163-1998), so about 1x, versus 15–30x in small lots. A header joint needs ~1.6 mm³ (~[amount removed]). A washer sized for a 1.0mm hole appears to be quote-only.

2026-10-22 9:58 AM EDT — Two job types: bottom and top (decision)

Oct 22, 2026 · 9:58 AM ET · journal ↗

the designer: The machine runs two job types. Bottom job: bare blank only, laser the bottom side, then alert the operator. The operator flips the board, loads the parts tray/kit, and starts the top job. Top job: top laser, flux, ball drop, tin inspection, reflow, flux, PnP, reflow, clean, all unattended. The parts tray is only needed for the top job.

2026-10-22 9:59 AM EDT — Bottom and top jobs can run on different machines (decision)

Oct 22, 2026 · 9:59 AM ET · journal ↗

the designer: Bottom and top jobs don't have to run on the same machine. Each machine does its own job alignment check at job start (dowel registration plus a camera fiducial find, and probing where needed), so a board can move between farm machines between jobs.

2026-10-22 11:12 AM EDT: Cleaning needle is the base tool for the first tool-drop prototype (decision)

Oct 22, 2026 · 11:12 AM ET · journal ↗

the designer: The first tool-drop prototype uses the IPA cleaning needle as its tool. It is the simplest tool (hose-fed, no reservoir, metering or heat). The early risk to test is the IPA and air hoses flexing at the pivot. The PoC is a single tool station cycled on a regulated compressed air feed, built so we can try it.

2026-10-22 5:17 PM EDT: Pneumatic ball dispenser ratchet decision

Oct 22, 2026 · 5:17 PM ET · journal ↗

the designer chose the 24-tooth printed ratchet for osso_ball_dispenser_pneumatic_v1. Each pulse is 15 degrees (2.62 mm pawl travel, 3.0 mm cylinder stroke to a hard stop). The fill stays aligned with a pocket at rest, and one ball drops every two presses (fill pulse, then exit pulse).

2026-10-23 7:43 AM EDT: Design note: all metric, minimize fastener sizes

Oct 23, 2026 · 7:43 AM ET · journal ↗

the designer set a design rule for OSSO: everything is metric, and the number of different fastener sizes is kept to a minimum. For the tool drop v2c this means M5 instead of 10-32 for the cylinder port threads, with metric push-to-connect fittings and tube (for example 4 mm OD instead of 1/8 inch), and reducing the M2/M3 screws and pins to as few sizes as possible. The earlier 10-32 ball plunger and 1/8 inch tube choices get replaced with metric equivalents when v2c is modeled. Notes only until the designer gives the drawing/model command.

2026-10-23 7:44 AM EDT: Design note: fasteners limited to M5 and M3

Oct 23, 2026 · 7:44 AM ET · journal ↗

the designer wants everything in M5 and M3 only. For the tool drop v2c this means: M5 for the cylinder ports and large threads, M3 for all screws and tapped holes, and no M2 or 10-32. Pins and dowels should be sized to match (3 mm), and the metric ball plunger should use M5 or M3 thread. Notes only until the designer gives the drawing/model command.

2026-10-23 7:44 AM EDT: Design note: exceptions to the M5/M3 rule

Oct 23, 2026 · 7:44 AM ET · journal ↗

the designer allows exceptions to the M5 and M3 only rule. Specialty hardware that is only available in imperial sizes needs his approval before it goes into a design. Specialty hardware in other metric thread sizes (for example M4, M6 or fine-pitch) is fine without asking. Notes only until the designer gives the drawing/model command.

2026-10-23 9:27 AM EDT - Tool drop: magnet hold sizing result and Plan B decision

Oct 23, 2026 · 9:27 AM ET · journal ↗

Magnet hold sizing (calculation and research only; refs/tool_drop_magnet_hold_v1.md/.png). Plan A: two supermagnete S-06-03-N discs, 12 mm lever, gap about 0.92 mm for about 60 Nmm; hold 1.90, release 1.94 at 60 psi; not below about 45 psi. Plan B: electropermanent holding magnet, release pulse 0.2-0.3 s via GPIO + MOSFET + flyback. the designer chose Plan B with hold against the 2 N tip push (Hyab 71-1811-24-JSK, 24 V, about 270 Nmm), simple manual test electronics, and commanded the v2d drawing next (drawing only). Open: 40 mm lever, stop block room (3-8 mm deeper), supplier, mount.

2026-10-23 1:48 PM EDT - Design note: 3D manifold on the head (notes only)

Oct 23, 2026 · 1:48 PM ET · journal ↗

the designer: matrix all of the multiple air lines to the tools in a 3D manifold, to reduce tubing and connectors in the moving head. No drawing or model requested yet.

2026-10-23 1:48 PM EDT - Design note: resin printing for better seals (notes only)

Oct 23, 2026 · 1:48 PM ET · journal ↗

the designer: use resin printing for the manifold and pneumatic parts for a better seal. To check: brittleness at thin walls and threads (use inserts or metal fittings), post-cure and wash, O-ring material compatibility. No drawing or model requested.

2026-10-23 8:29 PM EDT, Decision: all-metal Luer needles for consistency

Oct 23, 2026 · 8:29 PM ET · journal ↗

2026-10-23 8:33 PM EDT, Decision: larger bed slinger base

Oct 23, 2026 · 8:33 PM ET · journal ↗

2026-10-23 8:34 PM EDT, Design note: solder ball drop above the needle array

Oct 23, 2026 · 8:34 PM ET · journal ↗

2026-10-24 9:41 AM EDT — Design note: TH parts by jig + underside solder rings

Oct 24, 2026 · 9:41 AM ET · journal ↗

the designer proposed an aligned jig holding the through-hole (TH) parts with the board on top, then placing solder rings (preforms) from the underside and spot reflowing them. the designer's reasoning:

2026-10-24 9:42 AM EDT — Process flow decision: bottom reflow first

Oct 24, 2026 · 9:42 AM ET · journal ↗

the designer decided the bottom-side reflow (TH solder rings from the jig, plus any bottom SMT) comes first in the process flow, before top-side SMT. OSSO notes: a benefit is that top-side SMD parts can't reflow a second time when the TH joints are heated, and the jig doesn't need relief pockets for top parts. Still to plan: how TH parts stay held when the board is flipped for top-side work, and whether their bodies need pockets in the top-side fixture. The process flow drawing (drawings/osso_process_flow_v1.py) isn't updated yet. That waits for a command.

2026-10-24 9:45 AM EDT — Design rule: lay out boards with reflow in mind

Oct 24, 2026 · 9:45 AM ET · journal ↗

the designer set a rule: PCB layout planning has to account for OSSO's reflow process (design for reflow). OSSO notes on what that covers: SMD-to-TH keepouts so the top hot-air needle has a clear path and the TH plastic bodies stay out of the jet, needle-height clearance around tall TH parts, TH pads sized for solder ring preforms, thermal relief on TH pads tied to ground planes so one-sided spot reflow can heat them, and enough spacing between SMD parts for the local hot-air spot. Notes only.

2026-10-24 9:50 AM EDT — Design note: 3D-printed needle tips

Oct 24, 2026 · 9:50 AM ET · journal ↗

the designer noted that if a needle needs a specific tip geometry, a 3D-printed tip can be added to it. The retract, deploy and calibration methods then have to compensate for the tip, and so do the motion kinematics and path planning. OSSO notes: every tip variant needs its own length/offset and mass, so each one needs a tool offset from calibration and an updated clearance envelope for path planning (for example around TH bodies). Watch-outs: printed plastic near E hot air, or near reflow temperatures, needs a heat-rated material or shouldn't be used there. The tip also adds mass that can change deploy timing and the latch/magnet margin. Notes only.

2026-10-24 9:52 AM EDT — Decision: bond 3D-printed needle tips

Oct 24, 2026 · 9:52 AM ET · journal ↗

Thread-tapping a stainless needle tube was ruled out: the walls are too thin (about 0.15 mm at 23 ga, about 0.25 mm at 14 ga) for any thread, even a custom one. the designer chose bonding printed tips onto the needle. His reasons: it keeps the mass low, and the tip's alignment (angle and orientation) gets fixed once at bonding. OSSO notes: use a high-temperature epoxy wherever heat is nearby. A small alignment fixture at bonding time would set the tip's clocking repeatably, and calibration then measures the final tip offset. Bonded tips are permanent, so a tip change means swapping the whole needle on its Luer. Notes only.

2026-10-24 9:55 AM EDT — Design note: calibration feature for zeroing tips

Oct 24, 2026 · 9:55 AM ET · journal ↗

the designer noted that a tip may need a calibration feature so that any tip, or any plain blunt needle, can be zeroed (its XYZ offset found for that station). OSSO notes, as ideas only: a reference feature on the tip itself (a flat, a notch, or a small ring visible to the camera), matched by a fixed datum on the machine such as a touch-off plate, an optical break-beam or a camera view of the tip. Zeroing would then run the same way for a bare needle or a bonded tip, and the measured offset would feed the motion kinematics and path planning. Notes only.

2026-10-24 4:39 PM EDT — Decision: cell grid of 10 mm and 20 mm

Oct 24, 2026 · 4:39 PM ET · journal ↗

the designer changed the cell grid to 10 mm so the columns and rows are easy to read. The small cell is 10x10 mm (one grid unit) and the large cell is 20x20 mm (2x2 units, so it takes the place of four small cells). Replaces the 12 mm / 18 mm sizes on a 6 mm grid. OSSO notes: pockets inside each cell stay sized to the part. A 10 mm cell holds parts up to about 7–8 mm, such as SOIC-8 and QFN up to 5–6 mm, while TQFP-32 at 9 mm is borderline. A 20 mm cell holds parts up to about 16–17 mm, covering TQFP-44 and 64 (12 mm). Tray positions can be addressed by column/row times 10 mm from the datum corner. Notes only.

2026-10-24 5:22 PM EDT — Decision: oversize parts and a manual park spot

Oct 24, 2026 · 5:22 PM ET · journal ↗

the designer set the rule that any part bigger than the 20 mm cell goes on a special carrier or gets placed manually. That means the machine needs a park spot where someone can set a part by hand for PnP pickup. OSSO notes: give the spot a fixed position the head can reach, a datum corner or a shallow tapered nest so the part sits roughly square, and a camera check so B can fix the rotation before picking it up. The process would pause until someone confirms the part is in place. The spot could also take parts that are odd shapes or that were reworked. Notes only.

2026-10-24 5:59 PM EDT — Decision: try the magazine first, as a wall of drawers

Oct 24, 2026 · 5:59 PM ET · journal ↗

the designer chose to try the magazine (cell shuttle) delivery first, while keeping the other options (tray on the bed, tray off the bed, indexing cassette) open: "We're too early to not try." His concept: a wall of drawers next to the work area, where the PnP vacuum needle (B) opens and closes the drawers itself, with no dedicated drawer motors. Experiment, not a red flag. OSSO ideas to explore (notes only):

2026-10-24 6:01 PM EDT — Decision: drawer wall behind the bed

Oct 24, 2026 · 6:01 PM ET · journal ↗

the designer placed the drawer wall behind the bed. His reasoning: on a bed slinger the bed never rises, so the drawer and pickup heights can sit at a fixed reference relative to the work surface. OSSO notes: with the bed run toward the front (full Y), the head reaches back past it to the drawers, so Y travel or the frame needs room for the drawer depth plus an open drawer. The drawers would open forward (toward -Y) when the needle pulls them, which matches the head's natural pull direction. The bed's rear edge, at its rearmost travel, must clear an open drawer, or the drawers have to be closed before the bed moves back. Notes only.

2026-10-24 6:02 PM EDT — Design note: rail detail built into the carrier box

Oct 24, 2026 · 6:02 PM ET · journal ↗

the designer noted that a rail detail built into the carrier box (drawer) makes sense. OSSO notes: printed side rails (a tongue, or a dovetail riding in a slot in the wall) guide each drawer in Y with no separate slide hardware. The rail can also carry an open-stop and a closed detent, so the open position is repeatable for pickup. Watch-outs: friction and slop, since the needle has to drag the drawer, and print tolerance on the rail fit. A PTFE dry lube or a small rolling contact could keep the drag force low. Notes only.

2026-10-24 6:06 PM EDT — Decision: gravity detent for the drawers

Oct 24, 2026 · 6:06 PM ET · journal ↗

the designer chose a gravity detent over a magnet per drawer, since magnets in every drawer add up to a lot of magnets. The rails tilt slightly so each drawer falls shut on its own. To open a drawer, the needle has to lift the front over the closed stop and then pull. OSSO notes: a short ramp at the closed end makes that lift-and-pull motion the only way a drawer opens, so vibration from the bed can't open one by accident. The open position is held by a hard stop while the needle is still in the handle. Notes only.

2026-10-24 6:09 PM EDT — Decision: one-row cell carrier as a nested container

Oct 24, 2026 · 6:09 PM ET · journal ↗

the designer defined the loading scheme. The stock tray is a set of one-row cell carriers, loaded at stock-loading time, so a single tray can hold more than one component type. The one-row carrier is another nested container type. Once a part is in its carrier, it stays there until it's placed, which lets every move after loading be automatic. Container hierarchy as of now:

  1. Part sits in an insert pocket sized for it.
  2. The insert goes into a cell, 10x10 mm or 20x20 mm, on the 10 mm grid.
  3. The cell goes into a one-row carrier (one row of cells).
  4. Carriers are loaded into the stock tray (a set of carriers), then moved into drawers in the drawer wall behind the bed (gravity detent, opened by lift-and-pull with the needle, rail built into the carrier box). OSSO notes: the carrier's footprint becomes the common interface, so drawer, stock tray and rail details are all sized to it. Each carrier could carry a readable ID (printed code or notch pattern) so the camera knows which parts it holds. Notes only.

2026-10-24 6:18 PM EDT — Decision: QR code on each one-row carrier, stored as inventory

Oct 24, 2026 · 6:18 PM ET · journal ↗

the designer decided each one-row carrier gets a QR code, on both its edge and its top. A loaded carrier can be stored as inventory the way a drawer is. OSSO notes: the edge code can be read while carriers stand in storage or sit in a drawer, and the top code can be read by the head camera during pickup. The QR maps to a record (component type, cell positions, quantity left), so the carrier itself is the stock unit. A small edge code limits how much data fits, so it should hold an ID that points to the record, not the data itself. On a 14K resin print the QR could be embossed or a label could be applied. Notes only.

2026-10-24 6:22 PM EDT — Decision: names for PnP part storage

Oct 24, 2026 · 6:22 PM ET · journal ↗

the designer set these names, from smallest to largest:

2026-10-24 6:23 PM EDT — Decision: manual strip loading for offline storage

Oct 24, 2026 · 6:23 PM ET · journal ↗

the designer decided that loading parts into strips for offline drawer storage is manual for now. A person puts each part into its nest and pod on the strip. Automated loading stays a possible later step.

2026-10-24 6:25 PM EDT — Decision: intelligent camera confirmation when strips load into the matrix

Oct 24, 2026 · 6:25 PM ET · journal ↗

the designer wants the camera to confirm parts intelligently as strips are loaded into the matrix. OSSO notes on what it could check: read the strip's QR (top) to pull its record, then look at each pod to confirm a part is present, that it's the expected package or marking, and that its orientation and polarity are right. Any mismatch flags that pod before placement starts. This catches mistakes from manual strip loading, and it keeps the inventory record up to date. Experiment, not a red flag. Notes only.

2026-10-24 6:26 PM EDT — Decision: matrix positions chosen for PnP efficiency

Oct 24, 2026 · 6:26 PM ET · journal ↗

the designer decided that the machine picks where each strip goes in the matrix to make PnP efficient, not so a human can find things. The QR code and the inventory record track where every strip is, so people never need to know matrix positions. OSSO notes: the machine can put frequently used or soon-to-be-placed parts in the drawers closest to the head's path, group parts by placement order to shorten moves, and reorganize between jobs. Notes only.

2026-10-24 6:45 PM EDT — Decision: two hooks, one on the bed and one on the head, open the matrix drawers

Oct 24, 2026 · 6:45 PM ET · journal ↗

the designer chose to open drawers with existing motion. There's one hook on the bed and one on the head. The combined bed (Y) and head (X/Z) moves pull a drawer open and bring it into the head's reach. The head hook is offset from the needle, so the needle no longer works as the drawer handle. OSSO notes: this removes the drawer-drag loads from the B needle, its Luer and the tool-drop latch (tension 2), and it uses no added motors. The head hook adds a little mass to the head and has to clear the five stations, the ball hopper and C's fold. The lift-and-pull over the gravity-detent stop could come from the head hook's Z, while the bed hook supplies the long Y pull. To check: hook engagement tolerance, the order of moves to open and close, and making sure the bed can't move with a drawer half open. Experiment, not a red flag. Notes only.

2026-10-24 6:59 PM EDT — Decision: matrix stays at the back; lift latch with no actuator, opened by bump to lift

Oct 24, 2026 · 6:59 PM ET · journal ↗

the designer kept the matrix at the back, fixed next to the gantry. He chose the non-actuator latch: the gravity detent is the latch itself. The drawer drops into a notch when it closes and opens with a bump to lift. OSSO clarified that the head moves only in X and Z, so the head hook can lift (Z) and move along X but can't pull in Y. Working sequence: (1) the head hook bumps the drawer front up with Z, out of its notch; (2) the bed hook, moving in Y, pulls the drawer forward into the head's reach; (3) the bed pushes the drawer home to close it, and gravity drops it back into the notch. No added parts, motors or magnets. To check: how much lift clears the notch, whether bed motion or vibration can unseat a drawer, and the timing hand-off between the head lift and the bed pull. Notes only.

2026-10-25 8:15 AM EDT — Design rule: minimal tray movement

Oct 25, 2026 · 8:15 AM ET · journal ↗

the designer: the tray moves into position without interfering with bed operations, and tray movement is kept to the minimum needed to reach parts. Implication: the slide indexes to the strip that's needed (a partial extension), not full travel every time, and parks clear of the bed whenever the bed is working.

2026-10-25 8:16 AM EDT — Motion planning by AI rule set

Oct 25, 2026 · 8:16 AM ET · journal ↗

the designer: the coordination of tray, bed, and needle is a complex ballet, but AI will handle the rule set. The rules so far: jerk-limited moves for loose parts, the tray never interferes with the bed, minimal tray movement, fast needle moves, picks grouped by strip, and keepouts around TH bodies. The planner sequences the moves within those constraints.

2026-10-25 11:14 AM EDT — Design note: companion boards as snap-outs inside the 140x140 board

Oct 25, 2026 · 11:14 AM ET · journal ↗

the designer: the current 140x140 middle and top boards are just the start. Next version: the same board, with companion boards on its interior as a snap-out frame. Same alignment marks and frame drills. No interposer. For now the template drills and cuts with snap-outs (tabs). Later, when a higher-powered 355 nm laser is available, the laser can drill and cut the companions out.

2026-10-25 11:50 AM EDT — Rule: all boards share the same frame fiducials

Oct 25, 2026 · 11:50 AM ET · journal ↗

the designer approved: every OSSO board (middle, top, test, companion panels) uses the same fiducials on the outer frame: A (22,4), B (118,4), C (118,136), C' (22,136), with the tooling hole (70,4) and slot (70,136) unchanged. The jigs and camera fiducial positions need updating to match.

2026-10-25 11:58 AM EDT — Confirmed: corner drills not needed on card panels

Oct 25, 2026 · 11:58 AM ET · journal ↗

the designer: as long as the jig can hold these boards, the corner (power) drills aren't essential. The card panels drop the M3 corners; the jig registers on the tooling hole (70,4), slot (70,136), and the frame fiducials.

2026-10-25 11:59 AM EDT — Rule: hold all boards the same way

Oct 25, 2026 · 11:59 AM ET · journal ↗

the designer: hold all boards the same way to reduce jig types. Proposed common hold: dowels in the tooling hole (70,4) and slot (70,136), clamping on the 8 mm top/bottom frame rails clear of the fiducial keep-outs, with no dependence on the corner drills. Applies to the middle, top, test, companion, and card panels.

2026-10-25 1:28 PM EDT: Five skeleton decisions (the designer)

Oct 25, 2026 · 1:28 PM ET · journal ↗
  1. Frame: custom 2020/2040 extrusion frame with a bed-slinger layout (the head moves in X and Z, the bed carries Y).
  2. Head: 5 stations in one row (~118 mm).
  3. Laser: overhead in front of the gantry, 150 mm lens.
  4. Enclosure: fully enclosed, interlocked front door.
  5. Electronics: bay under the bed, external compressor. Team: specialist roles run in the background under OSSO. Next is the skeleton assembly (overall size, zero point, travel budget, placeholder blocks).

2026-10-25 1:38 PM EDT: Skeleton v1 built; laser decision

Oct 25, 2026 · 1:38 PM ET · journal ↗

Skeleton v1 (integration/skeleton_v1.*): the frame is 540W x 720D x 800H. Travel is Y 345, X 290, Z 100, tray 232. Nothing collides with the tray parked. Interlocks: head Z high while the tray is extended, and no lasing unless the tray is parked. TODO items 23-27 were added. the designer: the laser source connects directly to the galvo as one unit, like a typical engraving machine. There's no extra fiber or mirrors, and the chiller is external.

2026-10-25 7:05 PM EDT: the designer's 10/25 decisions applied; Laser & Optics mount v1 built

Oct 25, 2026 · 7:05 PM ET · journal ↗