QualityRelay manual-track demo · virtual line, wiring, and step-by-step run

Physical build → Tabletop demo → VIRTUAL SIMULATION · no hardware connected · produces no evidence
Baseboard ≈ 800 × 250 mm, top view. Operator stands at the bottom edge and pushes the carrier left → right. Click any part for details. --.-- digital caliper (manual) CALIPER-CAM-A VISION-CAM-B (overhead) diffuse lightdiffuse light — dashboard ESP32 confirm button servo + flap PASS (left) HOLD (center) REJECT (right) 0 parts 0 parts 0 parts left/right as seen looking along travel

ESP32 firmware emulator (logic copied from firmware/manual_sorter/esp32_manual_sorter.ino)

Gate angle90° (HOLD) Staged routenone ConstantsPASS 35° · HOLD 90° · REJECT 145° · timeout 15 s · debounce 250 ms · 115200 baud
Serial Monitor (115200 baud). Type P, H or R and press Enter, exactly as you would in the Arduino IDE.
After a move the gate stays at that angle. Return it to HOLD (send H, press the button) before the next specimen.

Session evidence (virtual)

Every row is tier SIMULATED. In a real run you record these fields in the CSV log (today) or the planned app.
#eventsourcevalue / result

Part details

Click any part of the line drawing above.
Laptopdashboard · Arduino IDE Powered USB hub3 data ports Webcam A (CALIPER-CAM-A) Webcam B (VISION-CAM-B) Servo 5 V supplyELEGOO Power MB V2+− + − breadboard power rails (servo supply only) 470–1000 µF (+ up, stripe down) Servo (SG90/MG90)flap OFF for first test ESP32 dev board 3V3 ✗ servo GND GPIO13 GND GPIO32 momentary button brown/black red orange/yellow → GPIO13 common GND
Pin positions differ between ESP32 boards. Follow the printed silkscreen labels, not the drawing position.

Connect in this order (everything unplugged)

    Connection table

    stepfromtowhycheck

    Works today with this repository

    • Printable specimens in examples/cad/stl/.
    • Servo firmware firmware/manual_sorter/esp32_manual_sorter.ino: stage P/H/R over serial, move only on a button press, 15 s expiry.
    • You stage the route by typing P/H/R in the Arduino Serial Monitor.
    • You record readings, captures, and the actual bin by hand in docs/engineering/templates/manual_track_run_log.csv.

    Planned, not implemented yet

    • /demo/sessions API with the state machine shown in the chips.
    • Browser two-webcam capture with source identity and image digests.
    • Operator caliper confirmation form and fit form.
    • Local serial bridge that writes P/H/R for you (button stays the final authority).
    • Correlated arrival acknowledgement (action_id).

    What this page is

    • A training and planning aid. Thresholds used for the illustrative decision are placeholders shown on screen.
    • The firmware emulator copies the sketch logic and message strings, so you can rehearse timing, held buttons, and expiry.
    • Nothing here is physical evidence. Hardware checks H1–H11 stay unchecked until you run them on your bench.