Coco Cassette V1
implemented unverified
Vertical Farm Pack v1: the Coco Cassette — the first implementation of the Cassette Interface Standard. A removable tray that drops into the water rail seat from above and lifts out by hand: flat ORTHOGONAL mesh floor (holds coco, aerates roots, directs no flow), one localized contact window reaching 1-2 mm into the channel's upper zone so the substrate touches PULSE water only and drained water never, snap windows through the walls for the retainer frame (pierced = brushable), finger notches in the rim. The cassette is the agrotech adapter, the rail is the water infrastructure: future sprout_mesh / rockwool_cube / netpot cassettes publish the same cassette_*/window_* frame keys and mate with the same rail untouched. Never a second water tray: the floor pierces through everywhere, nothing under the coco can pool.
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_coco_cassette
archetype: coco_cassette_v1@1
params:
cassette_l: 177mm
cassette_w: 177mm
cassette_h: 26mm
mesh_cell: 8mm
window_w: 12mm
window_drop: 1.5mm Parameters
| parameter | type | default | range | role | |
|---|---|---|---|---|---|
cassette_louter envelope X — shared with the rail seat | length | 177mm | 160mm … 236mm | assembly | exposed |
cassette_wouter envelope Y — shared with the rail seat | length | 177mm | 160mm … 236mm | assembly | exposed |
cassette_htray height — the substrate depth budget | length | 26mm | 18mm … 40mm | functional | exposed |
wallshell wall — lightweight default (VF correction): the mesh floor already dominates stiffness | length | 2.2mm | 2mm … 3.2mm | structural | |
floor_t | length | 2mm | 1.6mm … 3mm | structural | |
corner_r | length | 3mm | 2mm … 6mm | aesthetic | |
mesh_cellsquare mesh opening — holds coco, passes water and air. Default 8: coarse enough that the holey floor tessellates into a clean manifold STL (a fine 4-6mm mesh packs 600+ openings into one planar face and out-runs OCC BRepMesh — manufacturing.mesh_manifold catches it) | length | 8mm | 4mm … 10mm | functional | exposed |
mesh_ribweb between mesh cells | length | 1.5mm | 1.2mm … 2mm | manufacturing | |
mesh_marginsolid rim inside the walls before the mesh starts | length | 6mm | 4mm … 12mm | structural | |
window_wcontact window width — must drop INSIDE the rail channel (verified in the assembled pose); contact area scales with window_l | length | 12mm | 8mm … 40mm | functional | exposed |
window_lcontact window length along the flow axis | length | 60mm | 40mm … 120mm | functional | |
window_drophow deep the window reaches into the channel's upper zone | length | 1.5mm | 1mm … 2mm | functional | exposed |
snap_w | length | 10mm | 8mm … 14mm | assembly | |
snap_h | length | 4mm | 3.5mm … 6mm | assembly | |
snap_top_offsetwindow top below the rim — positions the frame hook lips | length | 5.5mm | 4mm … 12mm | assembly | |
snap_offsetY offset of each snap window pair from the center | length | 60mm | 30mm … 100mm | assembly | |
notch_w | length | 18mm | 16mm … 30mm | functional | |
notch_d | length | 8mm | 6mm … 14mm | functional |
Regions
-
contact_windowtransient water path -
mesh_canvassubstrate support mesh -
flooraesthetic lightening -
traymounting surface
Contract
Guarantees
must-have features and invariants — verified on every build
substrate_mesh_floorpulse_contact_windowtool_free_removalcleanable_snap_interfacemesh_cell >= 4 and mesh_cell <= 10mesh_rib >= 1.2window_drop >= 1.0 and window_drop <= 2.0
Will refuse
explicit prohibitions — the engine refuses to build these
permanent_substrate_floodingsecondary_water_channelclosed_water_reservoiruncleanable_snap_cavity
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
substrate_tray_bodycontact_windowmesh_floorsnap_window_pairsnap_window_pairlift_tabs
Subscribed validators (19)
interface.frame_existsinterface.frame_orthonormalinterface.normal_points_outwardinterface.up_consistentform.shell_walls_okform.mesh_floor_orthogonal_okform.cassette_no_reservoirform.min_ligament_okform.no_secondary_water_channelform.no_standing_water_irform.contact_window_geometry_okform.snap_pockets_cleanableform.lift_access_okform.substrate_retained_under_mountform.cuts_respect_keepoutstopology.cutout_presenttopology.single_connected_solidtopology.contact_window_presenttopology.hex_field_present