project
Ghost Hand
Public Unreviewedby John Lauer
A small battery gadget that keeps an automatic sink faucet running while you use the sink: it learns the faucet's timeout, re-arms with the shortest blip, and stops after 10 minutes or when picked up.
← Commit history
Rev 2 hero 3D: the routed board inside the rev 2 case (2.8 MB)
4 files changed
+11−11
README.md+10−10@@ -4,30 +4,30 @@ <!-- rev2-status:begin --> ## Rev 2 build status -Rev 2 is being built right now by three AI threads in Adom Hydrogen; this section follows their work. Last updated Nov 8, 2:07 PM Central.+Rev 2 is being built right now by three AI threads in Adom Hydrogen; this section follows their work. Last updated Nov 8, 2:16 PM Central. | Stage | | What it covers | |---|---|---| | Aim | **done** | faucet drawing, window height and the tilt | | Case | **done** | the smaller sealed case, light pipes, engraving | | Parts | **done** | every part in stock with its symbol, footprint and 3D |-| Placement | *in progress* | parts placed on both sides of the 30 x 22 mm board |-| Routing | next | every net routed, vias and copper pours |-| Silkscreen | next | names of every light and part, 0.6 / 0.3 mm text |-| Checks | next | DRC, current and heat (Adom Fields), finish |-| 3D | next | the finished board in 3D, inside the case |+| Placement | **done** | parts placed on both sides of the 30 x 22 mm board |+| Routing | **done** | every net routed, vias and copper pours |+| Silkscreen | **done** | names of every light and part, 0.6 / 0.3 mm text |+| Checks | **done** | DRC, current and heat (Adom Fields), finish |+| 3D | *in progress* | the finished board in 3D, inside the case | | Fab files | next | Gerbers, drill, BOM and placement file | | Wiki | *in progress* | this page, the hero image and the release | | Thread | Now | |---|---|-| Board (Claude) | 1:40 PM: Placement (back again): QFN escapes fixed for good by a keep-out under U1's pad field on the bottom, U5 1 mm forward, U4 turned 180 deg so SCL. |+| Board (Claude) | 2:12 PM: Board 3D: routed + poured board STEP and GLB in for the case and studio threads. Next: Fields solve, current, thermal. | | Case (Codex) | 1:55 PM: Case: DONE visually checked, outer 38 x 32 x 17 mm, tilt 5 deg, IR axis 13.733 mm above counter, mass 15.38 g estimate. | | Studio and wiki (Claude) | 1:59 PM: Studio: full page publish for the case refit, pin span 24 x 16 mm, and the build status block. | -+ -*The latest rev 2 board model, 1:12 PM.*+*The latest rev 2 board model, 2:12 PM.* <!-- rev2-status:end --> ::adom-video{src="/john/ghost-hand/render/docs/videos/ghost-hand-film.video.json"}@@ -436,7 +436,7 @@ Design notes, print settings and assembly: [case/README.md](case/README.md); eng ## Firmware -Plain C for the ATtiny1616, updated for rev 2 (the STATUS dot takes the logo's job at about half the drive, a 30 mA light cap for the small cell, the 77 mA charge), updated for rev 2 (the STATUS dot takes the logo's job at about half the drive, a 30 mA light cap for the small cell, the 77 mA charge), updated for rev 2 (the STATUS dot takes the logo's job at about half the drive, a 30 mA light cap for the small cell, the 77 mA charge), updated for rev 2 (the STATUS dot takes the logo's job at about half the drive, a 30 mA light cap for the small cell, the 77 mA charge), updated for rev 2 (the STATUS dot takes the logo's job at about half the drive, a 30 mA light cap for the small cell, the 77 mA charge), updated for rev 2 (the STATUS dot takes the logo's job at about half the drive, a 30 mA light cap for the small cell, the 77 mA charge), updated for rev 2 (the STATUS dot takes the logo's job at about half the drive, a 30 mA light cap for the small cell, the 77 mA charge), updated for rev 2 (the STATUS dot takes the logo's job at about half the drive, a 30 mA light cap for the small cell, the 77 mA charge), updated for rev 2 (the STATUS dot takes the logo's job at about half the drive, a 30 mA light cap for the small cell, the 77 mA charge) (avr-gcc, about 13.1 KB of the 16 KB flash). The echo path is pure hardware:+Plain C for the ATtiny1616, updated for rev 2 (the STATUS dot takes the logo's job at about half the drive, a 30 mA light cap for the small cell, the 77 mA charge), updated for rev 2 (the STATUS dot takes the logo's job at about half the drive, a 30 mA light cap for the small cell, the 77 mA charge), updated for rev 2 (the STATUS dot takes the logo's job at about half the drive, a 30 mA light cap for the small cell, the 77 mA charge), updated for rev 2 (the STATUS dot takes the logo's job at about half the drive, a 30 mA light cap for the small cell, the 77 mA charge), updated for rev 2 (the STATUS dot takes the logo's job at about half the drive, a 30 mA light cap for the small cell, the 77 mA charge), updated for rev 2 (the STATUS dot takes the logo's job at about half the drive, a 30 mA light cap for the small cell, the 77 mA charge), updated for rev 2 (the STATUS dot takes the logo's job at about half the drive, a 30 mA light cap for the small cell, the 77 mA charge), updated for rev 2 (the STATUS dot takes the logo's job at about half the drive, a 30 mA light cap for the small cell, the 77 mA charge), updated for rev 2 (the STATUS dot takes the logo's job at about half the drive, a 30 mA light cap for the small cell, the 77 mA charge), updated for rev 2 (the STATUS dot takes the logo's job at about half the drive, a 30 mA light cap for the small cell, the 77 mA charge) (avr-gcc, about 13.1 KB of the 16 KB flash). The echo path is pure hardware: AC0, the event system and TCB0/TCB1 single-shots. The CPU runs the state machine, the learner, the lights and the safety checks, and a 1 s watchdog guards the main loop. Full source is in [firmware/](firmware/README.md), with a host test that runs the learner against simulated faucets
docs/3d/ghost-hand-hero-abd28840.glbadded⋯ 1 unchanged line ⋯
docs/status/board-6f8da5cb.pngadded⋯ 1 unchanged line ⋯
page.json+1−1@@ -43,7 +43,7 @@ "subcategory": "", "body_size": null, "parts": {- "model_3d": "docs/3d/ghost-hand-hero-afb2ce3f.glb"+ "model_3d": "docs/3d/ghost-hand-hero-abd28840.glb" }, "distributor_links": {}, "viewer_3d": {