URL note: this page also resolves at /projects/andi-review (legacy). Canonical is /projects/feeder-review.
Executive summary actualizado 2026-05-10
El review nació de Andi's Doc (16 items), creció con Marco's WhatsApp (motor count) + Andru R2 (3 items adicionales), y ahora tiene 21 entradas totales (19 items numerados + nota de vibración + PRT-30043).
El fab pack actual RevM (48 pp, 5.19 MB zip) ya incorpora los 14 cerrados. Update 2026-05-11: los 21 items están todos cerrados. Item 10 (Q23 deflector) cerrado con Option C — X-tilt + 2 side walls 200 mm. Item 16 (hotel noise) cerrado con Fork C — envelope declarado por ingeniería (75 dBA @ 1 m + buffer 20 m + daytime ops) en lugar de outreach a hoteles. RevN zip pendiente del repackage final con la nueva geometría del deflector + el bloque noise_envelope en spec.
Tabla master · Antes / Ahora / Decisión
Una fila por item. Antes = la queja original del reviewer. Ahora = el estado actual del diseño. Decisión = la acción concreta tomada.
| # | Antes (queja original) | Ahora (estado actual) | Decisión / acción |
|---|---|---|---|
| 1 | Andi: "No discharge chute or transfer ramp included to guide material into separation stream/process." | Q17 (chute exit 700×300 telescope 25 mm en cono) + Q22 Option C (trompa flexible 130 mm en neoprene) implementados en cadquery. | Trompa flexible Shore 60-70, paredes 200 mm, cierra el gap de strand-fall sin riesgo de roce rígido contra el tambor. Visible en /projects/feeder. Q22 PDF con las 5 opciones. |
| 2 | Andi: "Hole pattern, open area, hole size, edge distances, wear allowance, support structure missing." | Pablo confirmó: piso ES perforado (era visual issue en SolidWorks). Patrón exacto NO está locked todavía. | PENDIENTE TU DECISIÓN: Default propuesto Ø 4 mm matching drum screen. Lock paso/área-abierta/edge-distances antes de fab. |
| 3 | Andi: "5 mm floor under 1t local impact may deform it. Maybe more PTRs behind it." | Análisis Fork B confirmó: span 620 mm da SF 1.10 (falla bajo dump nominal). +2 crossmembers en X=810/1690 implementados → span 310 mm, SF 4.4. | SUB-PRT-30051 qty 8 → 10 en despiece. spec.py floor_support_crossmember_x_centers_mm: [810, 1690]. SLDASM rebuilt. Visible en SW + 3D viewer. |
| 4 | Andi: "Must be designed for 1-ton dump plus drop height, not only static." | Análisis Fork B item 4: slug asimétrico+DAF=2 (800 kg/spring) lleva spring deflection a 156 mm vs 104 mm linear range = coil-on-coil. Mitigaciones implementadas. | Springs k=50.27 → 75.4 N/mm. Bump stops como red de seguridad. Cover sheet rule operacional: "volca centrado + bucket ≤ 0.5 m altura". Cubre slug+drop-height+asimetría. |
| 5 | Andi: "Four springs may be insufficient. Risk: excessive compression, bottoming out, poor vibration stroke." | Spec actualizado k=75.4 N/mm (n_active 4). f_n=4.66 Hz, isolation 96.4%. Static SF 5.33, slug nominal SF 2.67. Vendor datasheet pendiente de validar. | Springs upgraded en spec.py. Vendor lock con Lesjöfors / Vanel / Resortes Industriales MX cuando se haga el ordering. |
| 6 | Andi: "Add upper/lower bump stops and lateral guides for high impact." | 4 bump stops dimensioned contra constraint motor↔rail. SUB-PRT-30053 (bracket PTR 60×60×4 × 295 mm) + WI 7 en RevM PDF (48 pp). | Brackets 295 mm + poly Ø80×50 60 ShA. Gap 40 mm en reposo. Engages a Δ=40 mm. Costo ~MXN $5,600 total. Spec en SPEC['bump_stops']. |
| 7 | Andi: "Type, RPM, excitation force, sync, vibration direction missing." + Marco: "Better 1 motor than 2 — sync problems." | Q1 (2026-04-23) explícitamente eligió 2 motores counter-rotating (Option A) por linear stroke, rechazó Option E single motor por circular stroke (transporte más lento de sargazo fibroso). | Fork C: 2× OLI MVE 800/3 + sub-frame torsional FEA + matched motor batch + master-slave VFD sync como backup + commissioning sync-check. Si falla sync en commissioning, retiro de un motor → run as Option E (frame ya lo soporta). |
| 8 | Andi: "Machine feet/base pads undersized for sandy ground." | Pablo intent: connecting base plate común feeder+drum. Plate distribuye carga; presión 360 → 7.5 kPa con skid 2 m². NO está en RevM fab pack. | Machine-Skid WI separado bajo v2-machine-combined, target pre-Annex-B (2026-05-31). Cover sheet RevM dice "feeder feet bolt to common machine skid; do not bear directly on sand". |
| 9 | Andi: "Adjustable threaded leveling feet too slender for 1-1.5t plus vibration." | PRT-70015 ya specced en COMPONENT_INVENTORY: M20 + spherical-pivot foot (MISUMI LSCB). Pivot esférico decouples lateral → axial. SF axial M20 grade 8.8 = 50× sobre 3.7 kN/foot. | No upsize. Doc-tightening: render del spherical pivot en WI assembly view (Andru no lo vio en RevL despiece). |
| 10 | Andi: "Lower side ramp too short, sand falls onto machine legs." | Q23 Option C IMPLEMENTADO 2026-05-11 (Pablo decision): deflector rotado de X-tilt a Y-axis tilt (eje rotación X→Y) + 2 side walls 200 mm en los Y edges, contención lateral. Sand discharge ahora -X / loader side ("atrás del feeder") en un pile único en lugar de spread lateral. | Geometría: 304 SS 2300×1000×3 mm plate a 25° tilt sobre eje Y (reducido de 30° para fit dentro del frame envelope a 2300 mm slope length). 2 side walls 304 SS 2300×200×3 mm en Y=0 y Y=1000. 10 hanger tabs A36 30×5 mm a 5 crossmembers, longitudes 84/199/314/429/544 mm. Center Z bajó −725 → −800 para clearance del crossmember underside (-470) y base plate top (-1379). Visible en SW SLDASM. Spec en SPEC['sand_deflector']. |
| 11 | Andi: "50×50×3 frame: motor loads and weld fatigue should be checked, especially at motor support crossmembers." | Análisis Fork B: σ_range ~180 MPa vs Eurocode FAT σ_allow 5-12 MPa @ 9×10⁸ ciclos = falla sub-1 año. Upgrade preventivo aplicado. | PTR 50×50×3 → 60×60×4 en spec.py + port_subframe_parametric.py + SLDASM rebuilt. Section modulus 8326 → 17,500 mm³. FEA sobre primera unidad construida antes del 100-unit fleet rollout. |
| 12 | Andi: "Welded nuts under vibration — thread locking, lock nuts, accessibility, inspection must be defined." | Master cover Notas Generales declara protocolo global. Loctite 243 + Nord-Lock washers obligatorios + re-torque schedule. | "Re-torque a 50 h commissioning + cada 500 h. TIG circumferencial completo en weld nuts (no stitched)." Aplicado a M12 spring + M16 motor + M12 perimeter anchor. |
| 13 | Andi: "A36 with sand/saltwater: abrasion + corrosion concerns." | C5-M coastal coating system declarado en master cover global notes. Aplica a todo A36 expuesto. | Arenado SA 2.5 → primer epoxi rich-zinc 2 capas (~75 µm) → topcoat poliuretano 2 capas (~75 µm). Total ~150 µm, vida 7-10 años. Wear plate Hardox/AR400 en zona impacto = diferido V2.1 (CaCO₃ Mohs 3-4 no abrasiona A36 rápido). |
| 14 | Andi: "Tipping stability — excavator dumps asymmetrically, ground is soft." | Resuelto en principio por base plate común (item 8). Calc CG/tipping específico pendiente cuando skid footprint locked. | Conjunto con Machine-Skid WI item 8. Pre-Annex-B target. Procedural envelope ("operador volca centrado") en cover sheet RevM. |
| 15 | Andi: "Springs, motors, eccentric weights, pinch points, cables require guards/protection." | Bible §13.2 mandata enclosure metálica + tool-only removal + LOTO. Diferido a V2.1 — no era oversight, era plan original. | Cover sheet RevM declara: demo opera SOLO con personal del proyecto. §13.2 enclosure se diseña post-demo cuando comportamiento operativo está observado. Para hotels presentation podría requerir pull-forward. |
| 16 | Andi: "Have you considered noise constraints at hotels?" | CERRADO 2026-05-11 (Fork C — Pablo decision, revisado Fork δ): envelope declarado por ingeniería en lugar de outreach (hoteles no tienen dB limits autoritativos). V2 declara 82 dBA @ 1 m (achievable con VFD+damping, ~5-7 dB de reducción del crudo 88) + buffer 20 m + daytime ops 07:00-18:00, queda 9 dB de margen vs NOM-081 día. Noche cerrado por regla de operación diurna. V2.1 enclosure se gatilla en pre-sale si site no tiene 20 m buffer o requiere operación nocturna. | Spec en SPEC['noise_envelope']. Anexo B declara el envelope upfront. Para 9 junio demo: probable venue controlado, constraint no aplica. Para production install en hoteles: buffer ≥ 20 m + daytime ops = 56 dBA @ 20 m (NOM-081 día 65 dBA, noche 55 dBA). Revisión Fork δ: prior target 75 dBA era optimista (requería 13 dB de reducción, achievable solo ~5-9); 82 dBA es honesto. |
| 17 | Andru R2: "Cannot find PRT-30044 placa base in 3D model. Should look like that picture (tailstock with callouts)." | Inconsistencia entre part_specs.py (PRT-30044 = 180×180×10) y wi_pdf/wi_parts_data.py (PRT-30010-P = 200×120×10) reconciliada al canonical PRT-30044. |
BOM line + step text en wi_parts_data.py actualizadas. Canonical PRT-30044 = 180×180×10 A36, 4 piezas, "soldar al pie de cada pata". |
| 18 | Andru R2: "Weld beads missing from despiece. Pedro will guess." | Master cover Notas Generales (RevM) declara tamaños de fillet por junta. Vibrating sub-frame + motor cradle = fillet 6 mm AMBOS lados + esmerilar talón → FAT 90+. | Especificado por junta: PTR 60×60×4 = fillet 6 mm both sides; chapa 5 mm = fillet 6 mm continuo; flat bar 30×5 = fillet 4 mm TIG; weld nuts = circumferencial completo. |
| 19 | Andru R2: "Plates with holes lack measure for hole location, even laser parts." | Master cover declara global convention: "todas las posiciones X-Y se miden desde la esquina inferior-izquierda (datum)". Plates específicas (motor mount, doublers, cups) tienen X-Y explícitos en checks blocks. | Convention en cover. Per-plate coordinates en checks. Para piezas láser: DXF locks geometry, dims son para QC verification. |
| — | Andru: "Decision note for vibration choice (not conveyor)?" | Reconstrucción del rationale: 20-04-26 Marco discusión "guider not funnel" (clogging risk de embudos cónicos para sargazo fibroso) → Mar 6 toy-car test (motor débil) → Apr 21 next-test-spec con OLI MVE 3-3.5 kN → Bible v3.0 Plan D canónico. Test rig cancelado, va directo a tamaño final. Conveyor belt = fallback explícito. | Sección "Vibration decision note" en este page (abajo). No hay minutes oficial — el trail empírico es el rationale. |
| — | Andru: "PRT-30043: this solera is 76.2 mm thick. true or mistake?" | Verificado: solera 150×76.2 mm A36 IS correcto (cadquery_part.py:254). Razón: PCD-115 bolt circle del lower spring cup atraviesa la solera. 3 forks abiertos (A solid / B PTR + reinforcement / C channel section). | PENDIENTE TU DECISIÓN: Spark rec Fork B (PTR + welded reinforcement blocks at PCD-115). Ahorra ~125 kg/máquina. Defensible si Pedro está cómodo con QC de soldadura. |
Concrete diff: what's now visible in CAD + PDF + SLDASM. To see the 3D, open the feeder viewer (hard-refresh with Ctrl+Shift+R if showing yesterday's geometry).
| Cambio | Items | Visible en |
|---|---|---|
| Sub-bastidor PTR 50×50×3 → 60×60×4 | 11 (fatiga) | SW SLDASM (gordura visible) · 3D viewer · despiece SUB-PRT-30050/30051 |
| +2 floor-support crossmembers en X=810/1690 | 3 (piso) | SW SLDASM (mirando bajo el sub-bastidor) · 3D viewer · despiece SUB-PRT-30051 (qty 8 → 10) |
| Bump stops (4× brackets + poly Ø80×50 mm 60 ShA) | 6 (motor↔rail) | 3D viewer (color naranja debajo de springs) · spec.py · cover sheet · LEEME · NO en SLDASM (todavía sin SLDPRT formal) |
| Trompa flexible neoprene 130 mm dentro del cono | 1 (Q22 Option C) | 3D viewer (pieza naranja saliendo del frente del bin) · NO en SLDASM |
| Springs k=50.27 → k=75.4 N/mm (n_active 6→4) | 4 (slug+DAF) | spec.py · LEEME · NO visible geometricamente (mismo Ø/wire/length, sólo cambia número de vueltas) |
| Spacer plate 33.8 → 23.8 mm | cascada | spec.py · LEEME · 3D viewer (spacer ligeramente más bajo) |
| Long rail Y 25/975 → 30/970, short rail X 25/2475 → 30/2470 | cascada | spec.py · SW SLDASM · 3D viewer (5 mm shift) |
| M16 motor bolts 62 → 72 mm | cascada | cadquery · spec.py · NO en SW SLDASM (los pernos no están dibujados como cuerpos individuales en SW) |
| Cover sheet "Notas Generales de Fabricación" (RevM) | 17, 18, 19 (Andru R2) | Master cover del PDF (página 1, después del índice) |
| PRT-30044 placa base reconciliada (era PRT-30010-P 200×120×10) | 17 (Andru R2) | wi_parts_data.py · master cover |
Si no ves los cambios en el 3D viewer: el navegador está cacheando el GLB de ayer. Hard-refresh (Ctrl+Shift+R) o abre en incógnito. La verificación rápida: file size del GLB en DevTools Network debe ser ~22 MB con timestamp 2026-05-09. Si no ves los cambios en SW: el SLDASM se rebuildeó hoy a las 02:10 + 15:58. Si lo abriste antes de ese segundo rebuild, ciérralo y reábrelo.
Pendiente para mañana (no urgente): WI 7 con despiece formal del bracket de bump stop. El componente está en el CAD + cover sheet + spec.py, pero el bracket no tiene una página de despiece dedicada con dimensiones exactas. Pedro podría fabricar siguiendo el cover sheet, pero un WI 7 dedicado es lo correcto antes del envío externo.
Historical: Pablo's per-item verdicts (voice note 2026-05-08, 21 min)
El registro original de tus decisiones por item, capturado en el voice note. La tabla master arriba es la fuente de verdad actual; ésta se mantiene como referencia histórica. Source: Drive file 1L-OQc3N8ORscyK4PnYEYyb1_iEXMWj2t.
Mostrar tabla histórica (colapsada por defecto)
| # | Item | Pablo's verdict |
|---|---|---|
| 1 | Chute into trommel | Confirms direct feeder→drum (no intermediate funnel — clogging risk). Wants a small extension / "trompa" with lower walls protruding slightly into the drum so sargasso doesn't fall through the gap. Worries about vibration→drum contact. → Q22 PDF (5 opciones). Spark rec: Option C (trompa flexible neoprene). |
| 2 | Perforated floor | Confirmed: floor IS perforated. Was a SolidWorks visual issue, not a design choice. Default hole Ø ≈ drum hole size (4 mm) unless analysis says otherwise. |
| 3 | 5 mm floor + excavator | Add more PTR ribs under the floor. Confirmed. |
| 4 | Impact load | Do the slug analysis. Confirmed. |
| 5 | Springs borderline | Doesn't think one-sided dump is realistic — sargasso volume distributes more uniformly. But if numbers are borderline, upgrade springs. |
| 6 | Missing stops | Add stops. Confirmed. |
| 7 | Motors (Marco) | Fork C explicitly endorsed. Start with 2 motors per Q1 decision. Search modern reliable sync mechanisms. "Si al final funciona con uno, el otro lo podemos usar para otra máquina, entonces no hay problema." |
| 8 | Feet on sand | Resolved by connecting base plate. Confirmed. |
| 9 | Leveling screws | Spherical pivot accepted in principle. Verify under inclined load (3° tilt → not pure axial). If marginal, upsize the jack screws. |
| 10 | Sand discharge | 5 opciones dibujadas: → Q23 PDF. History: frame was originally narrower, X-bracing crossed the deflector path which made the discharge slot hard to see; widened frame so the deflector covers full Y-span and X-bracing moved aside. Spark rec: Option B (deflector alargado a 1300 mm Y) — simplest fix, no base-plate cut. Option D (hueco en placa base) is operationally cleanest for tractor access but needs structural verification. |
| 11 | 50×50×3 frame fatigue | Check, update if needed. |
| 12 | Welded nuts under vibration | "Sí se me había ocurrido pero no quise decir nada porque estaba rezando porque no fuera a haber un problema." Agrees, find the best option. |
| 13 | A36 + saltwater | Coating spec'd for drum somewhere — verify whether feeder also has it; if not, add. |
| 14 | Tipping stability | Resolved by base plate (same as item 8). |
| 15 | Safety guards | V2.1 deferral confirmed — always intended to add later, not an oversight. |
| 16 | Hotel noise | Hotels explicitly said no gasoline motors → want quiet. Investigate vibration-motor dB level. |
| — | Vibration decision note | Confirms in-person meeting, no recording. Original plan: test rig gates vibration vs conveyor belt. Skipped rig → going straight to full size. Conveyor belt is the explicit fallback if vibration fails on the production unit. "Espero, espero, espero, espero." |
| — | PRT-30043 | Defers — pick the sensible fork. Spark recommendation: Fork B (PTR + welded reinforcement blocks at PCD-115 bolt circle) — saves ~125 kg/unit at the cost of more welding QC. Defensible if Pedro's shop is comfortable with the welds; revert to Fork A if QC risk is unacceptable. |
| 17-19 | Andru round 2 | Cerrados 2026-05-08. 17: PRT-30044/30010-P reconciliados a 180×180×10. 18: tamaños de fillet + tipo + esmerilar talón en todas las juntas (sub-frame y motor cradle = FAT 90+). 19: X-Y desde datum en cada barreno (motor mount, doublers, cups). Notas globales agregadas al master cover. |
Two items now need Q-style design exploration (drawings + pros/cons of each option) before fab cut: item 1 (chute extension into drum) and item 10 (sand-discharge geometry). Everything else is either decided or one engineering pass away.
Historical: Summary at a glance (initial 2026-05-08 sweep)
Snapshot del 2026-05-08 cuando Andru R2 acababa de aterrizar. Conservado como referencia. Master table arriba refleja el estado actual.
Mostrar tabla histórica (colapsada por defecto)
| # | Concern | Status | Action class |
|---|---|---|---|
| 1 | Chute into trommel missing | Decided · doc gap | Bible §11 callout to Q17 |
| 2 | Perforated floor not specified | Design gap | Define hole pattern, open area, edges, wear allowance |
| 3 | 5 mm floor under excavator dump | Analysis missing | FEA / hand-calc local plate strength under 1 t point load |
| 4 | Impact load not addressed | Partial | Spring level done; frame & floor level missing |
| 5 | Springs borderline | Numbers exist · vendor unverified | Validate against Lesjöfors / Vanel / Resortes Industriales datasheet |
| 6 | Missing bump stops + lateral guides | Design gap | Add stops to spec + CAD before fab |
| 7 | Motors unclear (+ Marco: 1 motor vs 2) | Q1 chose 2 · Marco re-weights · Fork C recommended | Build frame for 2, keep downgrade-to-1 as commissioning fallback |
| 8 | Feet too small for sandy ground | Design defers to skid | Open Machine-Skid WI under v2-machine-combined |
| 9 | Leveling screws undersized | Spherical pivot specced · viz gap | Render PRT-70015 in WI |
| 10 | Sand discharge under machine | Deflector exists · viz + extension | Section view + 150-200 mm overhang |
| 11 | 50×50×3 frame | Material confirmed · fatigue not checked | Weld-fatigue calc at motor crossmembers |
| 12 | Welded nuts under vibration | Real concern | Define thread-locking + inspection protocol |
| 13 | A36 with sand / saltwater | Coating spec missing | Add coating system + drainage + wear-plate plan |
| 14 | Tipping stability | Analysis missing | CG calc + tipping moment under asymmetric dump |
| 15 | Safety guards | §13.2 spec exists · deferred to V2.1 | Either pull forward or document deferral on cover |
| 16 | Hotel noise constraints | Not addressed | Verify hotel dB limits before commit; pick a noise budget |
| 17 | PRT-30044 placa base — assembly callout missing (Andru R2) | FIXED 2026-05-08 | Reconciled to PRT-30044 = 180×180×10 in wi_parts_data.py + master cover. PRT-30010-P (200×120×10) was the stale reference — propagated. |
| 18 | Weld beads missing on despiece (Andru R2) | FIXED 2026-05-08 | Explicit fillet sizes (4-6 mm), single-vs-both-sides, continuous-vs-stitched added to every WI step + master-cover global notes block. Motor cradle joints flagged for esmerilar talón to FAT 90+. |
| 19 | Hole-location dims missing on plates (Andru R2) | FIXED 2026-05-08 | Explicit X-Y from datum corner added to every checks block (motor mount, doublers, cups). Master cover declares the convention: positions from lower-left datum, DXF locks geometry, on-drawing dims for QC verification. |
Net: 4 already decided (Andi missed the doc), 5 real design or doc gaps Pablo + team can close, 4 analyses missing that need an engineering pass, 2 BOM / spec tightening tasks, 1 deferred-to-V2.1 item that the cover sheet should declare. None of the 16 invalidate the design as a whole. Several materially raise pre-fab risk if uncorrected.
- Chute into trommel missing
- Perforated floor not specified
- 5 mm floor with excavator dumping
- Impact load not addressed
- Springs likely borderline
- Missing stops
- Motors unclear
- Feet too small for sandy ground
- Leveling screws undersized
- Sand discharge under machine
- 50×50×3 frame
- Welded nuts under vibration
- A36 with sand / saltwater
- Tipping stability
- Safety guards
- Hotel noise constraints
- Round 2 — Andru WhatsApp 22:36-22:41
- Andi's separate ask — vibration-feeder decision note
- PRT-30043 — solera 76.2 mm question
- Prioritised action list
1 · Chute into trommel missing decided · doc gap
Important: do not rigidly connect vibrating hopper and fixed trommel. Clearance/flexible connection needed.
What's decided
Tier 1 Andi's exact requirement is what Q17 specifies. RUBISCO2/Sand Separator/docs/v2/qdrum_annex/Q17_drum_feeder_interface.md (locked 2026-04-26) chooses Option B — sliding overlap with EPDM-bristle skirt:
- Chute exit 700 × 300 mm rectangular telescopes 25 mm inside the cone (PRT-80004, 900 mm ID round).
- 15 mm radial gap absorbs ±10 mm field misalignment.
- EPDM bristle skirt clamped to the chute mouth fans radially, seats against cone inner wall.
- Explicit rationale in Q17: "vibration decouples — gap absorbs all relative motion."
Why Andi missed it
Q17 lives in the Q-Drum annex; the bible §11 (feeder) doesn't reference it; the RevL fab pack doesn't either. A reader of the bible + fab pack does not encounter Q17. Documentation gap, not design gap.
2 · Perforated floor not specified design gap
Hole pattern, open area, hole size, edge distances, wear allowance, and support structure are missing. Function and strength unclear.
What is in the spec
Tier 1 spec.py:47 sets floor_thickness_mm: 5.0 for the bin floor; material A36. part_specs.py BIN-PRT-30060 enumerates only fastener holes (12× M12 through-bolts to spring/sub-frame, 14× M8 lateral, 4× M8 rear, 4× M8 funnel). No sand-pass-through perforation pattern is defined.
This raises a deeper design question I should surface for you: in Plan-D, where exactly is the screen-pass-through? The drum has the modular 4 mm 316L screen panels (bible §4). The feeder's job is to vibrate the material and deliver it to the drum; whether the feeder also acts as a coarse pre-screen is a design decision that I cannot find a clear answer to in the current spec.
- If the feeder bin floor is solid: Javier's "lámina below the feeder" requirement (
meeting_notes_ordered.md) implies sand somehow reaches the deflector PRT-30070 — but if the floor is solid, sand can only spill over the chute lip, not fall through. Then PRT-30070 catches drum spillage, not feeder pre-screen. - If the feeder bin floor is perforated: hole size must match the drum-screen size (4 mm) so what the feeder passes the drum doesn't try to pass again, and edge distances + open-area must be specified.
Andi can't tell which is intended — and neither can I from the current spec.
Tier-3 default if no decision: solid floor, treat the deflector as a spillage-and-overshoot capture device, and rely on the drum screen as the only sand pass-through stage. That matches the "feeder = transport, drum = separation" division of labour and is the simplest fab.
3 · 5 mm floor with excavator dumping analysis missing
Maybe critical, when perforated. 1t dynamic local impact loads may deform it. (maybe more PTRs behind it help)
What's known
Tier 1 The bin floor is 5 mm A36 plate. spec.py:53 defines rear_loader_impact_plate_height_mm: 300.0 — there's a separate impact wall at the rear loading end, but the floor itself is single-thickness. The 1-ton loader-slug load case is analysed only at the spring level (slug_transient_load_per_spring_kg = 300 kg, deflection 58.5 mm of 104 mm linear range, design SF 1.78). Local plate-bending under a one-sided concentrated 1-t dump on a 5 mm × 1.65 m × ~2 m unsupported plate is not analysed.
Why Andi's right
5 mm A36 plate spans the bin width unsupported between sub-frame crossmembers. Yield is ~250 MPa; under a 1-t load distributed over a tractor-bucket footprint (~0.3 × 0.5 m), local plate stress can hit yield. Andi's "more PTRs behind it" suggestion is the right direction: more ribs / crossmembers under the floor distribute load.
4 · Impact load not addressed partial
Must be designed for 1-ton dump load plus drop height, not only static load. At minimum evaluate "one-sided excavator dumping" case.
What's done
Tier 1 Bible §11.2 Q4 names the 1-ton loader-slug case. spec.py:264-277 sizes the springs against this case (slug 300 kg/spring, 58.5 mm deflection, SF 1.78 vs max linear range). The spring stack is the only subsystem analysed against impact.
What's missing
- Local plate stress on the bin floor (item 3 above).
- Drop-height contribution. Bucket release height is typically 0.5-1.0 m; impulse = (load × √(2gh)) raises peak force ~2-3× over the static-equivalent slug. The current "1-ton slug" treatment is a static-equivalent that may understate peak.
- Asymmetric / one-sided dumping — the spring analysis assumes symmetric 4-point reaction. One-sided dump puts ~80 % of the impulse into 2 of the 4 springs, which roughly doubles their per-spring transient. SF for two springs at slug = 0.89 (below 1.0).
5 · Springs likely borderline numbers exist · vendor unverified
Four springs may be insufficient. Risk: excessive compression, bottoming out, poor vibration stroke.
What's specced
Tier 1 4× helical compression, OD 100 mm, wire 12 mm, free 200 mm, 6 active turns, k = 50.27 N/mm per spring, system k = 201.1 N/mm, natural f = 3.81 Hz, drive 25 Hz, isolation ratio 97.6 %. 51CrV4 chrome-vanadium, shot-peened. Static SF 3.55, slug SF 1.78. Source: spec.py:214-294. Spec source-tagged: "derived in cadquery_part.py geometry review; phase-B-stiffened to handle bible §11.2 Q4 1-ton slug. Not yet validated against a vendor datasheet."
What Andi is reading
Without the spec text he sees four cans on a CAD render and reasons from "is 4 enough?" The numbers are defensible — but the SF goes to 0.89 if item 4's one-sided-dumping case applies (see above), so Andi's "borderline" instinct is correctly calibrated to a real load case.
spec.py in the fab-pack body so reviewers see the analysis. (b) close the deep-research prompt — pull a vendor datasheet from Lesjöfors / Vanel / Resortes Industriales matching k = 45-55 N/mm at 530 kg static, slug ≥ 300 kg, 10⁶-cycle fatigue. (c) revisit if item 4 changes the load case.6 · Missing stops design gap
Add upper/lower bump stops and lateral guides for high impact.
Status
Tier 1 Bump stops, snubbers, and lateral guides are not specified anywhere in the current feeder spec. Standard practice on vibrating-screen feeders is rubber/polyurethane bump stops at the hard limit of spring travel (~95 % deflection) so a slug overload bottoms out on a controlled snubber rather than coil-on-coil. Lateral guides prevent the bin from walking sideways under asymmetric load.
Why this matters
If item 4 (one-sided dump SF 0.89) bottoms a spring out, coil-on-coil contact at peak transient creates a local ~459 MPa shear stress (already at the spring's allowable per Wahl correction at slug). Repeated coil-on-coil contact fails the spring. A stops kit limits travel to the linear range and converts overload into a controlled rubber-deformation event.
7 · Motors unclear spec'd · BOM-light
Type, RPM, excitation force, synchronization, and vibration direction missing. Function cannot be properly evaluated without this.
What's in the spec
Tier 1 spec.py:297 "OLI MVE 800/3 or equivalent", 2× counter-rotating, body 700 × 385 × 320 mm, mount plate 820 × 460 × 12 mm, 880 mm centre-to-centre spacing, 4× M16 per motor up through sub-frame motor cradle crossmembers at x = 500/1120/1380/2000.
The bible §11.4 mentions OLI 3.0-3.5 kN centrifugal force, 220V 3-phase, IP65 minimum, VFD-driven 30-80 Hz sweep. Drive frequency 25 Hz / 1500 rpm captured in spec.py:260.
What's missing in the fab pack
- Centrifugal-force rating per motor (Andi can't check kN.)
- Synchronization mode — natural frequency lock vs electrical sync vs mechanical link. With counter-rotating pairs, the standard is rigid frame sync at ~2× drive frequency above natural; this works only because the sub-frame is rigid.
- Vibration direction — counter-rotating pairs project linear vibration along the line perpendicular to the rotor axes. The current geometry implies horizontal-X linear vibration; this should be drawn explicitly with an arrow on the cover sheet.
- OEM datasheet block on the fab pack so Pedro/Marco buy the right unit.
Marco addendum (2026-05-08, WhatsApp)
And better have 1 motor instead of two. Otherwise we will have sync problems.
Q1 already decided this
Tier 1 RUBISCO2_Feeder_Q1_Motor_Placement.pdf evaluated five options A-E. Option E was explicitly the single-motor centred case. The doc named E's pros — "Cheapest. No synchronization problem — a single motor is always in phase with itself." — and rejected E on transport grounds: "Produces circular/elliptical stroke, not a linear stroke biased toward the cascade — slower material transport. Single point of failure."
Q1's recommendation was Option A (twin counter-rotating, centred transversely): "Counter-rotating twin pair produces a defined linear stroke along the long axis — drives material toward the cascade edge." The trade-off was already on the table — A traded sync complexity for linear transport.
So Marco is not introducing a new concern. He is re-weighting a known one: linear transport > sync risk in Q1 vs sync risk > linear transport in Marco's call.
What changed since Q1
Tier 1 Time constraints have killed the Apr 21 test rig — production unit goes straight to full-scale, no empirical validator before commit. That removes the path "validate single-motor on rig and switch if it works." Every choice gets validated for the first time on the production unit itself.
Failure-mode recoverability (production unit)
- Option A (2 motors) failure mode: motors drift out of sync → motion goes elliptical → transport less efficient. Recovery: tune VFD master-slave electrical sync, retighten frame, swap to matched-lot motors. Material still moves.
- Option E (1 motor) failure mode: circular stroke too slow for wet sargassum at target throughput. Recovery: not really — it's a physics constraint, not a tuning issue. Adding a second motor means redoing the motor cradle.
The frame already accommodates either
Tier 1 spec.py:313: 4 motor cradle crossmembers at x = 500/1120/1380/2000. The bolt pattern supports 2-motor (Option A at x = 810/1690) and 1-motor (Option E at x = 1250 centred). The cost of keeping both options open is zero fab change.
Forks (no test rig)
- Fork A — Option A as Q1 decided. Mitigate Marco's sync concern with: (i) FEA sub-frame torsional natural f < ½ drive f before fab, (ii) buy both motors from a single supplier batch (matched s/n), (iii) spec VFD pair as master-slave electrical-sync capable as backup, (iv) commissioning sync-verification at 25 Hz / 30 min observation. Pro: linear transport, mitigations are well-understood. Con: 2× motor cost, real sync failure mode that mitigations may not fully close on a hand-fabbed unit.
- Fork B — flip to Option E (1 motor). Honors Marco. Accept circular/elliptical transport. Pro: zero sync risk, half motor cost. Con: Q1 explicitly rejected this on transport grounds; risk is "circular too slow for wet sargassum" with no recovery path other than retrofit.
- Fork C — build frame for 2, downgrade to 1 in commissioning if sync fails. Buy 2 motors per Q1 + Fork A's mitigations. If commissioning shows uncureable sync drift, remove one motor and run as Option E with no fab change. Pro: honors Q1 decision, addresses Marco as real fallback (not hand-wave), cost of optionality = 0. Con: still buys 2 motors upfront; downgrade decision happens late, after fab.
8 · Feet too small for sandy ground design defers to skid
No-Go for beach/sand operation. Larger pads, skids, or base beams required.
The design intent
Pablo's voice note 2026-05-07: feeder feet do not bear directly on sand. Drum frame and feeder frame both bolt to a common machine skid / connecting plate; that plate distributes load.
The gap
Tier 1 The connecting plate is not in the RevL fab pack. The reader of the FEEDER pack alone sees the leveling-foot pad (Ø 115 × 12 mm, spec.py:207) and reads "small pads, sandy ground = no-go" exactly as Andi did.
Forks
- Fork A — add the connecting skid as a new WI inside the FEEDER pack. Pro: closes Andi's bullet 8 in one deliverable. Con: skid is a machine-level item, scope-creeps the FEEDER pack.
- Fork B — open a Machine-Skid WI under
v2-machine-combined. Pro: clean ownership. Con: another deliverable before Annex B. - Fork C — cover-sheet note: "feeder feet bolt to a common machine skid (separate WI, in progress); feet do not bear directly on sand." Cheapest, kicks the structural design downstream.
9 · Leveling screws undersized spherical pivot specced · viz gap
Too slender for 1-1.5 t plus vibration. Increase size, lock them properly, protect against sinking.
What's specced
Tier 1 PRT-70015 — M20 jack screw with spherical-pivot foot (MISUMI LSCB), 4× per machine, foot pad Ø 115 × 12 mm A36, anchor hole Ø 18 mm, top hex socket AF 17 mm. Source: spec.py:203-212 + COMPONENT_INVENTORY.md.
- Bending under lateral: spherical pivot decouples lateral load → axial through the rod. Andi's "thin rod will bend" mode requires fixed-base feet, which is not what's specced.
- Axial capacity: M20 grade-8.8 minor area 314 mm² × 660 MPa yield = ~207 kN axial yield. 1.5 t / 4 feet = 3.7 kN per foot. SF ~55× axial.
- Sinking on soft ground: Ø 115 pad → 0.0104 m². 1.5 t / 4 = 3.75 kN per foot → 360 kPa contact pressure. Loose dry sand bearing capacity is 50-100 kPa. Andi is right that the current pad will sink.
The real gap
Pad bearing pressure exceeds sand allowable by ~3-7×. The connecting-plate plan (item 8) dissolves this — once feet bolt onto a 2 × 1 m skid plate, contact pressure drops by ~170× and falls well within sand allowable. Without the plate, Andi is correct.
10 · Sand discharge under machine deflector exists · viz + extension
Poor design. Sand will likely accumulate near the feet and bury them. Chute should discharge further away.
What is there
Tier 1 PRT-30070 sand deflector — 304 SS plate, 3 mm, 2300 × 1000 mm, 30° tilt, centre at world (1250, 500, −725). The Z = −725 puts it well below the bin floor; the 30° tilt redirects falling material laterally away from the leg footprint. Confirms Javier's requirement (meeting_notes_ordered.md): "metal plates below feeder AND drum to redirect sand so a tractor can collect it from the side."
What's actually wrong
- The despiece for PRT-30070 shows the plate in isolation; no section view of the bin showing the full sand path screen → deflector → lateral exit.
- The Y-span is 1000 mm, centred at Y = 500. If the legs sit at Y < 0 or Y > 1000, sand sliding off the deflector at 30° projects a downstream cone of trajectories that can still land near the leg footprint.
Pablo's instinct "maybe extend a bit" is the correct geometric correction.
port_sand_deflector.py.11 · 50×50×3 frame material confirmed · fatigue not checked
May work, but motor loads and weld fatigue should be checked, especially at motor support crossmembers.
What's specced
Tier 1 Sub-frame: A36 RHS 50×50×3 mm (spec.py:143). 4 motor cradle crossmembers at x = 740/1140/1360/1760 with 4× M16 per motor up through them.
What's missing
Motor loads × eccentric weight × ω² generate ~3.0-3.5 kN per motor at 25 Hz drive. With 880 mm motor spacing, the inner crossmembers carry alternating ±3 kN at 25 Hz. Weld fatigue (FAT 80 typical for fillet welds in cyclic load) gives ~2 × 10⁶ cycles allowable at full stress range. 25 Hz × 8 h/day × 250 days/yr ≈ 1.8 × 10⁸ cycles/yr. Stress range must drop to FAT 36 territory or below to pass design life — that's typically ~50 MPa nominal weld stress. Not checked in current spec.
12 · Welded nuts under vibration real concern
Critical. Thread locking, lock nuts, accessibility, and inspection strategy must be defined.
What's specced
Tier 1 spec.py:58: "12 × M12 weld nuts on bin underside for SUB-FRAME perimeter anchor." spec.py:165: "M12 zinc bolts down through bin floor + underside doublers into M12 weld nuts on sub-frame top rail."
Why this is a real concern
Weld nuts under continuous vibration are a known fatigue site. The HAZ around the weld nut is a stress concentrator; under 25 Hz drive × millions of cycles, micro-cracks initiate at the weld toe and propagate. Mitigations: (a) Nord-Lock washer pairs (replace pre-load loss), (b) thread-locker (Loctite 243 medium), (c) K-monel locknuts above the weld nut, (d) inspection schedule (re-torque every N hours).
None of these are currently specified. Andi's call-out is on the money.
13 · A36 with sand / saltwater coating spec missing
Abrasion and corrosion are concerns. Protective coating, drainage, and replaceable wear plates recommended.
What's known
Tier 1 Most feeder structure is A36 (frame, bin walls/floor, doubler plates, spacer plates). The deflector is 304 SS. Spring is 51CrV4 with shot-peen + zinc-rich epoxy. Bin floor / frame coating: not specified.
Per memory: Caribbean sand is CaCO₃ (Mohs 3-4), so corrosion — not abrasion — is the dominant material threat. A36 in salt-laden coastal air without coating gets pitting in months.
What needs to land
- Coating system: typical for marine A36 is sand-blast SA 2.5 + 2-coat zinc-rich epoxy primer (~75 µm) + 2-coat polyurethane topcoat (~75 µm) = 150 µm total. ~7-10 year life in C5-M coastal.
- Drainage: bin floor low points (around weld nuts, doubler-plate seams) should drain. If standing water + salt sits in those corners, accelerated pitting.
- Wear plates: not strictly needed at CaCO₃ Mohs 3-4 against A36, but at the rear loader impact zone (where bucket teeth hit), an Ardox/Hardox 450 or AR400 wear plate bolted on is cheap insurance. Aligns with the Ardox wear-bar pattern in the drum (PRT-80xxx lifter wear bar).
14 · Tipping stability analysis missing
Excavator dumps asymmetrically, system vibrates, ground is soft. Stability/tipping verification missing.
What's known
The full machine is feeder + drum + skid plate. CG and tipping moment are not analysed in the current feeder spec. Drum is 4 m × 1100 mm; feeder is 2.5 m × 1.65 m. Combined mass is ~2-3 t. Footprint depends on the connecting skid plate (item 8).
The case
Worst tipping case: 1-t loader dump on the rear-far-corner of the feeder bin while the machine is at 3° tilt feed-end up. The load contributes ~5 kN·m of overturning moment at the corner-support reaction. Restoring moment depends on machine weight × distance from corner support to CG.
15 · Safety guards §13.2 spec exists · deferred to V2.1
Springs, motors, eccentric weights, pinch points, and cables require guards/protection.
Status
Tier 1 Bible §13.2 mandates feeder-drive guarding (sheet-metal enclosure, tool-only removal, Spanish warning labels, LOTO-compatible). spec.py:331: "motor_hatch: deferred to V2.1 — proper §13.2 enclosure designed once demo unit operational behavior is observed." The reasoning was "single-plate placeholder gave a false sense of compliance" — the design choice was to omit a fake guard rather than ship one.
This is a defensible posture for a demo unit operated by trained Pedro/Marco staff in a controlled fab-shop test, but it is not defensible for the 2026-06-09 hotels presentation if anyone outside the project team approaches the machine.
16 · Hotel noise constraints not addressed
Have you considered if noise constraints at the hotels do not allow noisy vibrations?
Status
Bible mentions "abnormal noise" only as a commissioning fault flag, never as an upstream design constraint. Hotel acoustic limits (typical Mexican Norma NOM-081-SEMARNAT-1994: ~65 dBA daytime, 55 dBA night at property line) are tighter than industrial vibrating screens typically deliver (~85-95 dBA at 1 m).
What this changes
If hotels run the machine in back-of-house during late night for the morning beach prep (the typical sargassum-clearing window is 04:00-07:00 before guests are out), 55 dBA at the property line is a real constraint. Possible mitigations: enclosure (10-15 dBA reduction), distance (6 dB per doubling), operating-hours window, lower drive frequency (~18 Hz instead of 25 Hz, though feed performance drops).
Round 2 — Andru post-WhatsApp 2026-05-08 22:36-22:41
Three additional items came in by Telegram after the Doc was sent. All three are fabrication-quality concerns about whether Pedro can build cleanly without ambiguity — none are design changes.
17 · PRT-30044 placa base — assembly callout missing spec inconsistency
In the assembled drawing a labeling is missing. For example I cannot find out where placa base PRT-30044 finally should go. I also cannot find that in your 3D model. Should look like that in the picture. — Andru, 22:36
What's there
Tier 1 The part exists with a clean spec at part_specs.py:113: "PRT-30044 — Placa base 180×180×10, A36 10 mm, 4 pcs, soldar al pie de cada pata, centrada, marcar centro con punzón (perno M20 jack-screw), tolerancia planitud ±1 mm, imprimación epoxi anti-corrosivo."
What's wrong
Tier 1 A second source contradicts it. wi_pdf/wi_parts_data.py:36 references "PRT-30010-P · Placa base 200×120×10mm A36 · qty 4", and step 43 reads "Soldar las 4 patas en sus respectivas placas base (200×120×10)." So the despiece part list and the WI step list disagree — 180×180×10 (PRT-30044) vs 200×120×10 (PRT-30010-P). Same role, different dimensions, different part numbers. Andru's "I cannot find PRT-30044" is correctly identifying that the part-number-as-listed-in-BOM doesn't show up in the assembly callout because the assembly callout uses the other naming.
Both files were modified in the same time window; one rename never propagated.
18 · Weld beads missing on despiece doc gap
also weld beads are missing. most of them Pedro knows by himself best, but maybe not all of them. And if he has to assume himself he might end up welding sth that should be welded. — Andru, 22:38
What's there
Tier 1 wi_parts_data.py tags individual steps with prose welds — "weld": "soldadura continua" at lines 43, 50, 54, 60, 107, 111, 112, 116, 121, 161, 166, 178, 183, 188, 233, 235. So the WI body tells Pedro which joints get welded and that they should be continuous.
What's missing
AWS-style weld symbols on the despiece drawings. Not specified anywhere:
- Weld type (fillet vs groove vs plug)
- Weld leg / size (5 mm fillet? 6 mm? 8 mm?)
- One side vs both sides
- Continuous vs intermittent (e.g. 50/100 stitch)
- Field weld vs shop weld
For a vibration-loaded structure this matters. Andi's item 11 already named weld fatigue at the motor crossmembers as a real failure mode. If Pedro picks 4 mm fillet where 6 mm is needed, the structure under-passes design life. Andru is calling out the same risk from a different angle.
19 · Hole-location dimensions on plates doc gap
the plates with holes will all be laser parts? they lack measure for hole location. (even if it's a laser part that should be included) — Andru, 22:41
What's there
Tier 1 matplotlib_dim_renders.py exposes a holes parameter (line 237: "holes: list of {x, y, d, label?} drilled-hole specs in top-view coords") and a cutouts parameter for slots. So the renderer can draw hole positions. But the spec annotations in part_specs.py for several plates list counts ("12 × M12 holes") without listing X-Y coordinates per hole — meaning the despiece pages render the holes as circles but don't always dimension them.
Why Andru is right even for laser parts
The DXF lock the hole positions geometrically — Pedro's laser shop can cut from the DXF without dims. But:
- QC verification needs the dims on the drawing — Pedro's shop measures the cut piece against the despiece, not against the DXF.
- If the DXF is regenerated mid-project (we've done this multiple times), a missing on-drawing dim means there's no cross-check between DXF and drawing.
- Standard fab-shop practice is full dims on the drawing regardless of cut method.
Is there a decision note for me or a meeting transcript from the meeting where it was decided to use vibrations finally as feeding solution? I would like to know the reasons and test results.
No single decision note exists — the decision was made in person between Apr 20 (Marco conversation) and Apr 22 (bible v3.0 cut). The trail of evidence is reconstructable from primary sources:
- Rejection of the "guider ramp" concept for clogging risk.
field_transcripts/20260420_marco_meeting.mdline 632: "harder that it gets clogged. Just like a guider, not a funnel." Wet sargassum is fibrous; converging tapers full of fibrous material are the worst-case clog scenario. Bible §11.3-11.4 lands on Plan D explicitly because it "avoids the most dangerous feeder geometry: a converging taper full of fibrous wet sargassum." - Mar 6 toy-car test was the first vibration probe. Per
next_test_spec.md: "The toy-car test (Mar 6) answered these only partially — vibration was too weak to move wet material." That was sub-watt; failure mode was under-power, not "vibration doesn't work." - Apr 21 next-test-spec scaled the experiment to industrial vibration. OLI MVE motor at 3.0-3.5 kN, two rig sizes (800×1200 and 1000×1500), 3 hole sizes × 3 incline angles × 3 frequencies = 54 data points per rig. This is the load-bearing piece of evidence: it converts "vibration didn't work at toy scale" into a proper validation matrix at industrial scale.
- Plan-D feeder geometry committed.
feeder_plan_d.pyis the parametric source; the bible v3.0 (Apr 22, supersedes v2.1) names Plan D as the canonical V2 feeder.
Direct answer to Andi: the decision was in person; the rationale chain is (a) wet fibrous sargassum clogs converging tapers, (b) Mar 6 vibration probe failed under-power, (c) Apr 21 industrial-scale rig design closes the validation loop, (d) Plan D = canonical. Test results from the Apr 21 rig builds (Pedro / Marco) close the loop empirically once those tests run.
PRT-30043 — solera 76.2 mm question fork open
PRT-30043: this solera is 76.2 mm thick. true or mistake?
Tier 1 Confirmed: cadquery_part.py:254 builds it as box_xyz(short_w=150, width, tube=76.2, ...) — solid 150 × 76.2 mm flat bar (3" × 6" A36, imperial-derived). The lower spring cup bolts into PCD 115 mm pattern through the solera; thinner section can't carry the bolt circle.
Forks
- Fork A — keep solid 150 × 76.2 mm flat bar. Pro: simplest, one cut. Con: ~208 kg of A36/unit.
- Fork B — PTR (rectangular tube) + welded reinforcement blocks at bolt-circle locations. Pro: ~60% mass reduction. Con: more welding + QC.
- Fork C — channel section (C profile). Pro: thin, strong, standard stock. Con: bolt-circle through web requires backing plate at each spring.
Recommendation deferred to Pablo's call.
Prioritised action list
Pre-fab blockers (do before Pedro cuts)
- Item 2 — Pablo decides: bin floor solid or perforated. If perforated, lock hole size + pitch + open area + edge distances.
- Item 3 — local plate-stress hand-calc for one-sided 1-t dump. Decide rib pitch / floor thickness before fab.
- Item 4 — re-do slug analysis under one-sided dumping + drop-height impulse. Adjust springs or operating procedure.
- Item 6 — spec bump stops + lateral guides; add to fab pack as a new BOM block.
- Item 11 — weld-fatigue calc at motor crossmembers. If FAT > 36, change tube spec or bolt the motor mount.
Pre-Annex-B (2026-05-31)
- Item 8 — open Machine-Skid WI under
v2-machine-combined. - Item 12 — fastener spec block (Nord-Lock + Loctite + re-torque schedule + inspection access).
- Item 13 — coating spec block (system, DFT, surface prep, drainage holes, wear-plate scope).
- Item 14 — tipping calc once skid footprint is locked. Procedural dump-zone envelope on cover.
Pre-hotel-demo (2026-06-09)
- Item 15 — pull §13.2 guarding forward, or formally restrict demo approach to project staff.
- Item 16 — confirm hotel dB limits + permitted hours; budget enclosure if < 75 dBA.
Documentation tightening (low-cost, high-clarity)
- Item 1 — bible §11 callout to Q17 + Q17 contract on fab-pack cover.
- Item 5 — include spring-stack engineering block in fab-pack body. Close vendor-datasheet validation prompt.
- Item 7 — lock motor model + datasheet block + vibration-direction arrow + sync mode.
- Item 9 — render PRT-70015 spherical pivot in the WI assembly view.
- Item 10 — section view of sand path through deflector + 150-200 mm Y-edge extension.
- Item 17 (R2) — reconcile PRT-30044 ↔ PRT-30010-P naming + show placa base in the assembly view + confirm in SW model.
- Item 18 (R2) — AWS weld-symbol callouts on the despiece for the vibrating sub-frame + motor cradle joints.
- Item 19 (R2) — full hole-location dims (X, Y, Ø) on every plate's despiece, even laser parts.
Open forks (Pablo's call)
- PRT-30043 — Fork A (solid solera) / Fork B (PTR + reinforcement) / Fork C (channel).
