Skip to content

Pcb Tray V1

implemented unverified

Open mounting tray for a bare PCB: a low-walled shell, four screw bosses on the board's hole span (pilot bores sized for heatset inserts by default), a rim cable notch and two countersunk base screws through the floor. The open cousin of enclosure_base_v1 — reach for the enclosure when the board needs a closed box and lid.

Built from a real example — orbit to inspect.

Declaration example

A minimal product declaration for this archetype — exposed parameters at their defaults. Validate and build it with forge validate / forge build.

schema: product/v1
id: my_pcb_tray
archetype: pcb_tray_v1@1

params:
  tray_l: 90mm
  tray_w: 70mm
  wall_h: 15mm
  pcb_sx: 66mm
  pcb_sy: 48mm

modifiers:
  - id: add_hex_perforation
    target: floor

Parameters

parametertypedefaultrangerole
tray_llength90mm50mm … 200mmfunctionalexposed
tray_wlength70mm40mm … 160mmfunctionalexposed
wall_hlength15mm8mm … 40mmfunctionalexposed
walllength2.4mm1.6mm … 4mmstructural
floor_tlength3mm2.4mm … 6mmstructural
corner_rlength4mm2mm … 10mmaesthetic
pcb_sxlength66mm15mm … expr(tray_l - 18)assemblyexposed
pcb_sylength48mm15mm … expr(tray_w - 18)assemblyexposed
bosslength7mm5mm … 10mmstructural
boss_hlength6mm4mm … 12mmassembly
pilot_dlength4mm2.4mm … 5.6mmassembly
cable_dlength6mm3mm … 14mmfunctional
mount_screwchoiceM4M3 | M4assembly
min_weblength3mm3mm … 8mmmanufacturing

Regions

  • shell mounting surface
  • floor aesthetic lightening

Contract

Guarantees

must-have features and invariants — verified on every build

  • box_shell
  • screw_bosses
  • pass_through_cutout
  • boss_h < wall_h

Will refuse

explicit prohibitions — the engine refuses to build these

  • none declared

Not claimed

what passing validation does not mean

  • Provided “as is” under Apache-2.0 — no warranty of fitness for a particular purpose.

Built from operations

rounded_box_shellboss_patternwire_exitcountersunk_hole_pattern

Allowed modifiers

add_hex_perforationadd_voronoi_fieldfillet_soften

Subscribed validators (12)

interface.frame_existsinterface.frame_orthonormalform.shell_walls_okform.cuts_respect_keepoutsform.min_web_between_holesform.holes_within_outlinetopology.cutout_presenttopology.ribs_presenttopology.pockets_presenttopology.screw_holes_opentopology.countersinks_presenttopology.single_connected_solid