Engineering Concept · Rev E · Third product, portfolio tier: premium/selective
A 56×42×17mm adhesive-mount camera that runs on-device object classification to tell a drink from a food item — and only fires the siren for food, at night. No cloud, no streaming: a wake sensor keeps everything off until it's needed, and a local model makes the call.
The last two are per-part renders of the actual STL files — a print/assembly reference: print both shells, seat the LiPo cell flat in the rear shell first, then the PCB+camera stack on top of it, then press the front shell on until its pegs seat in the rear shell's sockets. One extra step versus the other two products: bond a clear window into the lens aperture before final assembly — see Section 10's manufacturing notes for why this one can't ship as a bare hole.
* estimated — see the power budget below for the assumptions behind it.
Night Guard (the sibling product) can only answer "did the door open?" — it has no way to tell what someone took. Solving "drinks OK, food restricted" for real requires actually seeing what's in the frame. That's a different sensor, a different compute budget, and a different privacy posture — different enough that this is a new product, not a Night Guard revision.
The same ultra-low-power wake circuit as Night Guard — a phototransistor plus an always-on MCU with its own real-time clock — sits idle at microamp current until the fridge's interior light comes on inside the armed window. Only then does it switch on the camera and vision MCU via a load switch. The ESP32-S3 grabs a frame (with IR fill light, since fridge lighting is inconsistent), classifies it locally, and either does nothing (drink) or drives the piezo (food) — then powers back down. The camera is never on except for that one- to two-second window per door-open.
This spec covers the hardware that would run a classifier — it does not include a trained model, and that's a real, separate workstream, not a BOM line item. A working version needs:
The load-switch gating is what makes this viable on a small battery at all — an ESP32-S3 and a camera left continuously powered would drain 500mAh in well under a day. Every number here is an engineering estimate pending real firmware measurement, not a datasheet spec.
| Component | Real part | Price | Status |
|---|---|---|---|
| Vision MCU + Wi-Fi/BT | Espressif ESP32-S3-WROOM-1-N8R8 | $3.50 | Verified |
| Wake MCU + internal RTC | ST STM8L051F3P6TR | $0.58 | Verified |
| Camera sensor module | Olimex CAMERA-OV2640, 2MP | $14.21 | Verified, 1pc† |
| IR illuminator LEDs ×2 | Everlight IR67-21C, 940nm | $0.10 | Verified |
| Ambient light sensor | Senba SMD0805-20 | $0.057 | Verified |
| Load-switch MOSFET | AOS AO3401A | $0.06 | Verified |
| LiPo charge IC | TP4056-42-ESOP8 | $0.11 | Verified |
| USB-C receptacle | SHOU HAN TYPE-C 6P | $0.03 | Verified |
| LiPo cell, 500mAh | Adafruit 1578 | $7.95 | Verified, 1pc‡ |
| Piezo siren | TDK PS1240P02CT3, 12.2mm | $0.164 | Verified |
| Hour + confirm buttons ×2 | ALPS SKSCLBE010 | $0.148 | Verified |
| Status LED | Nationstar NCD0603R1 | $0.008 | Verified |
| PCB | JLCPCB 2-layer, ~50×38mm | ~$0.35 | Est. |
| Enclosure (2-piece shell + lens bezel) | — | ~$0.75 | Est. |
| Adhesive mount pad | — | ~$0.05 | Est. |
| BOM total | $28.07 | ||
† Real DigiKey quote, but for a single-unit eval board — Arducam's bare OV2640 DVP module runs similarly ($13–26 at UCTRONICS/Amazon depending on variant). No mainstream distributor (LCSC, Mouser, DigiKey) carries bulk OEM camera-module pricing; this is the best real number available short of a factory quote. ‡ Real DigiKey quote (Adafruit 1578), also single-unit hobbyist pricing with a built-in protection circuit and connector — a bulk bare-cell price from a battery factory direct would likely land much closer to the original ~$1.20 estimate.
What the hardware itself needs to charge, independent of customer acquisition. See Groove's spec for the full formula derivation. Recomputed with the real (if worst-case) $28.07 BOM from Section 07 — Landed COGS is now $29.27, up from $10.81.
| Channel | Break-even (0%) | Price @ 15% | Price @ 20% | Contribution @ 20% |
|---|---|---|---|---|
| Pre-order | $32.87 | $38.67 | $41.09 | $8.22 |
| Retail / wholesale | $33.52 | $39.44 | $41.90 | $8.38 |
The hardware itself now needs ~$41 to clear a 20% margin — but it also throws off over twice the absolute contribution margin per unit ($8.22-8.38) as before, which changes the next section's conclusion more than it might look at first glance.
Same M values and sourcing as Groove's spec: $6/unit for pre-order/crowdfunding, $70/unit for standalone retail DTC.
| Channel | Contribution @ 20% price | CAC (M) | Gap | Fully-loaded price to still hit 20% after M |
|---|---|---|---|---|
| Pre-order | $8.22 | $6.00 | +$2.22 | $48.59 |
| Retail DTC | $8.38 | $70.00 | −$61.62 | $129.40 |
The real BOM flips pre-order from "gap" to "covered." At the $41.09 product-only price, pre-order's contribution margin ($8.22) now exceeds the $6 CAC with $2.22 to spare — the higher (if worst-case) BOM leaves enough absolute margin per unit to fund its own acquisition cost without a price increase. Retail DTC is still deeply uncovered ($61.62 short), pushing the fully-loaded price to ~$129 — high, but within range of premium smart-home camera competitors. This BOM revision makes Vision Guard's pre-order economics stronger, not weaker — worth remembering that CAM1 and BT1 are still ceiling prices (Section 07), so the real numbers, once sourced in bulk, are likely to look better still.
The lens bezel is the one feature that forces a side-action in the mold — everything else on both shells still pulls straight. The bezel's aperture needs a clear window (glass or polycarbonate) bonded in during assembly, both to protect the sensor and to keep the IP rating intact; unlike Night Guard's open sensor holes, this one can't ship as a bare hole without letting condensation reach the lens. Camera modules also need an alignment/focus check in the assembly line that the other two products don't require at all — reflected in the higher assembly-cost estimate in the unit economics above.