SmartestHome/docs/components.md

279 lines
15 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

Components
==========
##Servers
2 X64 hosts
1x tiny with 1x zigbee adapter
1x PC with 1x GPU (rtx 3060 or better)
##Endpoints
#Living Room
1xMedia Station/TVPC (doesn't technically need to be in the same room) -> 1xThinClient (tiny is sufficient)
1xVoice Reciever - Round screen thingy
1xSound System (already have it, see #Have)
1xRuView Presence Node (ESP32-S3 CSI board)
#Loggia
1xMiniscreen System (Lenovo all-in-one PC, large built-in touchscreen — already own it, free, see #Have)
1xSound System
1xVoice Reciever - Round screen thingy
1xRuView Presence Node (ESP32-S3 CSI board)
#Linus Room
1xVoice Reciever - Round screen thingy
1xSound System
1xRuView Presence Node (ESP32-S3 CSI board)
???
#Amirs Room
1xBeamer
1xThinClient (tiny is sufficient)
1xHA Voice PE
1xSound System
1xRuView Presence Node (ESP32-S3 CSI board)
#Kitchen
1xTiny PC with Mini Touchscreen
1xCamera
1xVoice Reciever - Round screen thingy
1xSound System
1xRuView Presence Node (ESP32-S3 CSI board)
##Lighting
~16x RGB smart bulb (exact count/room split TBD — see #Open items). Zigbee, not
WiFi, to match this project's existing local-first Zigbee2MQTT backbone (already
have the coordinator dongle) rather than adding a second, cloud-dependent lighting
ecosystem. See #Need for the specific pick and why.
##Summed totals
#Servers
2x X64 host
1x Zigbee adapter
1x GPU (rtx 3060 or better)
#Endpoints (all rooms combined)
2x ThinClient (tiny)
1x Miniscreen System (Lenovo all-in-one, built-in touchscreen — already owned)
1x Beamer
4x Voice Reciever - round screen thingy (Living Room, Loggia, Linus Room, Kitchen)
1x HA Voice PE
5x Sound System (all confirmed: Living Room, Loggia, Linus Room, Amirs Room, Kitchen)
1x Tiny PC with Mini Touchscreen (Kitchen)
1x Camera (Kitchen)
2x Spare webcam (destination TBD)
5x RuView Presence Node (ESP32-S3 CSI board — one per room: Living Room, Loggia, Linus Room, Amirs Room, Kitchen)
#Lighting
~16x RGB smart bulb (Zigbee) — count/room split not finalized
#By room
Living Room: 1x ThinClient, 1x Voice Reciever, 1x Sound System (have), 1x RuView node
Loggia: 1x Miniscreen System (have), 1x Sound System, 1x Voice Reciever, 1x RuView node
Linus Room: 1x Voice Reciever, 1x Sound System, 1x RuView node, +1 unresolved (???)
Amirs Room: 1x Beamer, 1x ThinClient, 1x HA Voice PE, 1x Sound System, 1x RuView node
Kitchen: 1x Tiny PC w/ Touchscreen, 1x Camera, 1x Voice Reciever, 1x Sound System, 1x RuView node
#Open items
- Linus Room's "???" line is still undecided.
- Bulb count/room split is a guess ("like 16") — not yet mapped to specific rooms
or fixture counts per room.
#Have
1xSound System (earmarked for Living Room)
Near infinite Tiny Pcs
near infinite ATX Pcs
1xHA Voice PE
1xZigbee adapter
1xLenovo all-in-one PC, large built-in touchscreen (Loggia's Miniscreen System — free, already have it)
##Need
Need = Summed totals minus Have. "Tiny Pcs"/"ATX Pcs" are covered (near-infinite
supply on hand), so ThinClients and the LLM-host chassis are NOT listed below —
only parts not already owned. Composite items ("Sound System", "Voice Reciever")
are broken into their actual sub-components, since "1x Sound System" isn't a single
SKU. Amazon links are real listings found via search (mostly amazon.com — search
only returned US results; check amazon.de for local pricing/shipping/VAT before
buying). No prices are invented below — where docs/project-plan.md already
documents one it's reused as-is, otherwise it says "see link."
#GPU (LLM host) — need 1
- Used RTX 3060 12GB (~€200250, per docs/project-plan.md §1.2) — condition/model
don't matter much, 12GB VRAM is the requirement (Q4 Qwen2.5-14B). New alternative:
[MSI GeForce RTX 3060 Ventus 2X 12G OC](https://www.amazon.com/MSI-GeForce-Ventus-NVIDIA-Graphics/dp/B08WHJFYM8)
#Beamer (Amirs Room) — need 1
- [TMY 1080P Mini Portable Projector, HDMI/USB](https://www.amazon.com/TMY-Projector-Supported-Projection-Compatible/dp/B082F13J55)
(see link for price) — budget pick; if the ThinClient output needs to look good on
a big wall, a brighter/native-1080p unit is worth paying more for than a mini
LED projector like this one
- HDMI cable, length depends on beamer placement vs. ThinClient — not sized yet
- Ceiling/shelf mount — only if not just resting on furniture
#Voice Reciever - round screen thingy (Living Room, Loggia, Linus Room, Kitchen) — need 4
This is `firmware/esp32-s3-touch-lcd-1.85c/` from this repo (Phase 14) — each unit
is a kit of:
- [Waveshare ESP32-S3-Touch-LCD-1.85C, round touch display dev board](https://www.amazon.com/waveshare-ESP32-S3-1-85inch-Touch-LCD/dp/B0DK6NH65T)
(~€3545 each per docs/project-plan.md §1.12) — **must be the V2 revision**, see
`firmware/esp32-s3-touch-lcd-1.85c/README.md`; the listing needs checking for which
hardware revision it actually ships, this repo's firmware assumes V2 (V1 has no AEC
circuit and different audio pins)
- USB-C power adapter, one per unit — [5V/3A USB-C wall adapter](https://www.amazon.com/Security-01-Supply-Adapter-Type-C-MLF-C060503000CU/dp/B09JW4QQJ2)
- USB-C cable, one per unit (often included with the board — check the listing before
buying separately)
4x board + 4x power adapter (+ cable if not bundled).
#RuView Presence Node (Living Room, Loggia, Linus Room, Amirs Room, Kitchen) — need 5
This is `firmware/ruview/` from this repo (Phase 2/§1.6) — anonymous room-level CSI
presence, still an unbuilt placeholder in this repo (no firmware written yet), but
the hardware spec is fixed regardless: a plain ESP32-**S3** board, no camera, no
extra peripherals — CSI presence reads WiFi channel state, not a camera. Separate
boards from the Bermuda BLE-proxy ESP32s (§1.5) — one chip runs one firmware.
- [Espressif ESP32-S3-DevKitC-1-N8R2](https://www.amazon.com/Espressif-ESP32-S3-DevKitC-1-N8R2-Development-Board/dp/B09D3S7T3M)
(~€812 each per docs/project-plan.md §1.6) — the official board, minimal
8MB-flash/2MB-PSRAM variant; RuView's own firmware has no published minimum spec
yet (nothing's been written), so this is picked for being the plain, cheap,
official option rather than a specific requirement.
5x boards, one per room.
#Sound System (all 5 rooms confirmed: Living Room, Loggia, Linus Room, Amirs Room, Kitchen) — need 4
Have 1 already (earmarked for Living Room), need 5 total, all confirmed → need 4 more.
Each unit is a kit of:
- [Fosi Audio V3 stereo amp (300W x2, TPA3255, w/ 48V PSU)](https://www.amazon.com/Fosi-Audio-V3-Amplifier-48V/dp/B0CGCSM191)
(~€130 per docs/project-plan.md §1.13) — USB DAC/amp for the passive speakers below,
same choice this repo's `hosts/audio-endpoint/` and `hosts/thin-client/` docs already
make for amd64 rooms
- [Micca MB42X G2 passive bookshelf speakers, pair](https://www.amazon.com/Micca-Passive-Bookshelf-Speakers-Surround/dp/B0CGBKWBGM)
(~€100/pair per docs/project-plan.md §1.13)
- [16-gauge speaker wire, 100ft spool](https://www.amazon.com/AmazonBasics-16-Gauge-Speaker-Wire-Feet/dp/B006LW0W5Y)
(one spool easily covers multiple rooms — buy once, not once per Sound System)
1x spool of wire total; 4x (amp + speaker pair).
#Kitchen — need 1 touchscreen + 1 camera
`hosts/kitchen-display/` (Phase 17) — the Tiny PC is covered by "Have", these two
are not:
- [10.3" portable USB-C touchscreen monitor](https://www.amazon.com/Touchscreen-Stretched-Portable-Computer-Monitoring/dp/B0DFVZ2Z35)
(see link for price) — needs to expose itself as a native Wayland `wl_touch`
device, not just an emulated-mouse HID surface (unverified either way — see
`hosts/kitchen-display/README.md`)
- [Logitech HD Pro Webcam C920](https://www.amazon.com/Logitech-Widescreen-Calling-Recording-Desktop/dp/B006JH8T3S)
(see link for price) — any UVC webcam works; picked for wide availability/driver
support, not a specific requirement
#Spare webcams — need 2
Destination not decided yet — going to whichever future camera-equipped clients need
one next (see docs/project-plan.md Phase 6/18: any camera-equipped endpoint can run
the identity registration flow, not just kitchen-display/door-panel).
- [Logitech C270 HD Webcam, 720p](https://www.amazon.com/Logitech-C270-Webcam-Megapixel-Interpolated/dp/B01IFBKK3W)
(see link for price, typically the cheapest widely-stocked UVC webcam) — cheaper
than the C920 above on purpose: these two are general-purpose spares, not tied to
pantry-vision's food-photo use case that specifically wants the C920's autofocus,
so there's no reason to pay for that here.
#Fixed BLE tags — need ~4 to start
For household members who don't (or shouldn't have to) carry a phone for presence to
work — a grandmother without a smartphone is the concrete case, but this is also just
generally the more reliable anchor `docs/project-plan.md` §1.5 already recommends over
a phone's own randomizing MAC. `identity/`'s registration flow supports registering
someone with **no** device at all (a manual home/away toggle instead), but a physical
tag is the better long-term answer once it's worth the ~€58 — see
`identity/README.md`'s "no device" section.
- [The Smart Anti Lost Tracker iTag-Tiny](https://www.amazon.com/iTag-Tiny-Innovative-Bluetooth-Anything-bidirectional/dp/B07FG7XJ9D)
(see link for price, typically €38) — a plain Bluetooth 4.0 beacon with a
replaceable coin-cell battery, not locked into Apple Find My/Google Find Hub's
proprietary rotating-identifier scheme (most "key finder" listings on Amazon *are*
locked to one of those and won't work here) — this is the generic style the HA/
Bermuda community actually uses. **Verify before buying more than one**: cheap
tags in this class often advertise a BLE *static random* address (technically
"random" address-type, but stable for the tag's lifetime, unlike a phone's
*resolvable private* address which deliberately rotates) — community reports say
they "show as Random MAC but are stable," which is what actually matters for
`identity`'s `TRUSTED_ENTITY_PREFIXES` allowlist, not the address-type label
itself. Confirm one tag's address is genuinely stable (watch it in HA's Bluetooth
debug log over a few hours) before buying a batch.
4x to start (one for the concrete grandmother case plus a few spares/guests); buy
more as more device-less household members come up.
#Lighting — need ~16 RGB smart bulbs (count TBD)
**Zigbee, not WiFi/cloud bulbs** — the whole point of the Zigbee2MQTT backbone this
project already runs (§1.3) is one local mesh instead of N different manufacturer
clouds; a WiFi bulb (Tuya/WiZ/etc.) would be a second, cloud-dependent ecosystem
bolted onto a stack that's explicitly local-first everywhere else. Mains-powered
Zigbee bulbs also act as mesh **routers**, which matters here specifically: ~16 of
them spread across every room does more for whole-house Zigbee coverage (for the
battery sensors in §1.4) than the coordinator alone ever could.
Three real options were compared, not just the first search hit:
| Option | Router? | Zigbee2MQTT support | Price | Verdict |
|---|---|---|---|---|
| [innr RB 285 C](https://www.amazon.de/Smart-dimmbar-kompatibel-Philips-RB/dp/B07GT1LWDH) (also [2-pack](https://www.amazon.co.uk/Innr-Colour-Philips-Assistant-Required/dp/B07GT12JTJ)) | Yes | Confirmed — [zigbee2mqtt.io device page](https://zigbee.blakadder.com/Innr_RB_285_C.html) | ~€1520/bulb (docs/project-plan.md §1.4) | **Picked** — already this project's own documented choice, real listings on multiple Amazon EU sites, RGBW + tunable white 22006500K |
| IKEA TRÅDFRI color | Yes | Well-supported, huge install base | ~€1215/bulb (cheapest of the three) | Not on Amazon in most regions (IKEA.com/stores only) — cheaper on paper but doesn't fit "find it on Amazon," and the color-capable SKU specifically (not the tunable-white-only ones) needs care to pick |
| Sengled Zigbee color (e.g. [2-pack](https://www.amazon.com/Sengled-Changing-Dimmable-Multicolor-Equivalent/dp/B0899LJHVV)) | **No** — end device only | Supported, but community reports of RGB/XY color quirks on some zigbee2mqtt versions | Similar ballpark to innr | Skipped — buying 16 non-router bulbs throws away the mesh-strengthening benefit that's the actual reason to prefer mains-powered bulbs here |
Buying at this quantity: check amazon.de for a 4-pack or larger multi-pack of the
RB 285 C (cheaper per-unit than 16x single-packs) before ordering singles.
4x-pack pricing wasn't found in search results — verify against the live listing.
#Open items carried over from above
- Linus Room's "???" line is still a completely open slot — nothing to shop for
until it's decided what it is.
- Loggia's Lenovo all-in-one is already owned, so nothing to buy. `hosts/touch-panel/`
now handles either way its touch panel shows up to Linux (native `wl_touch`, or an
emulated-mouse HID device via the `type:pointer` fallback + a udev override to fix
it properly — see that host's README "Touch input: two tiers"), so this is no
longer a go/no-go check, just worth running once to know which tier it landed in
and whether the override needs filling in for full multi-touch.
- Bulb count/room split — priced below at ~16, but that's a placeholder pending an
actual per-room fixture count.
##Price estimate
Rough figures in EUR, for the #Need list above. **Estimates, not live-checked
prices** — the four docs/project-plan.md-sourced ones (GPU, ESP32 board, amp,
speakers) are reused from that doc as-is; everything else is a typical-market-price
guess for that exact product category, not pulled from the live Amazon listing (the
search used to find these links doesn't return price data — click through and check
before budgeting against this). All EUR figures assume roughly 1:1 with the USD
prices these products actually list at; check amazon.de directly for real
local pricing/VAT/shipping.
| Item | Qty | Est. unit price | Est. subtotal |
|---|---|---|---|
| Used RTX 3060 12GB | 1 | €200250 | €200250 |
| TMY 1080P mini projector | 1 | €4065 | €4065 |
| HDMI cable | 1 | €610 | €610 |
| Ceiling/shelf mount *(optional)* | 1 | €1525 | €1525 |
| Waveshare ESP32-S3-Touch-LCD-1.85C board | 4 | €3545 | €140180 |
| USB-C 5V/3A wall adapter | 4 | €712 | €2848 |
| Fosi Audio V3 amp | 4 | €130 | €520 |
| Micca MB42X G2 speakers, pair | 4 | €100 | €400 |
| 16AWG speaker wire, 100ft spool *(one-time)* | 1 | €1522 | €1522 |
| 10.3" portable USB-C touchscreen monitor | 1 | €85130 | €85130 |
| Logitech HD Pro Webcam C920 | 1 | €5575 | €5575 |
| Logitech C270 spare webcam | 2 | €2535 | €5070 |
| innr RB 285 C Zigbee RGB bulb | ~16 (TBD) | €1520 | €240320 |
| iTag-Tiny fixed BLE tag | 4 | €38 | €1232 |
| Espressif ESP32-S3-DevKitC-1-N8R2 (RuView) | 5 | €812 | €4060 |
**Subtotal (excludes the optional beamer mount): ~€1,8312,182**
**Subtotal, including the optional beamer mount: ~€1,8462,207**
All 5 Sound Systems (Living Room, Loggia, Linus Room, Amirs Room, Kitchen) are
confirmed — see `#Open items` above — so all 4 needed amp+speaker kits are in the
main table above. The bulb line is the least certain figure in this whole table —
16 is a round-number placeholder, not a counted fixture list, so treat that
€240320 as the roughest estimate here. Linus Room's still-blank "???" line isn't
priced at all — there's nothing to estimate until it's decided what it is.