Commit Graph
78 Commits
Author SHA1 Message Date
Kaloyan DanchevandClaude Opus 5 32a60f0c6e docs: Unraid as a Herdr machine, and why it needed a --via wrapper
herdr-core machine add kept failing with "core did not start within 5 s".
Cause: hc puts its core socket under XDG_RUNTIME_DIR, which on Unraid is
/run/user/0 — created and destroyed per login session by elogind. The socket
vanished with the session that started the core, so later clients found an
empty directory. The core itself kept running on an unlinked socket, and
core.log stayed empty because the failure is client side.

Fixed entirely on the Mac with a --via transport that pins
XDG_RUNTIME_DIR=/var/run/herdr-rt. Nothing on the server was changed. The
transport uses key auth on 192.168.10.20:422, not Tailscale SSH, since --via
needs something that asks nothing and the default tailnet ACL demands
periodic browser re-auth.

Also records the reboot caveat (/ is RAM, so the remote hc binary is lost)
with a go-script fix written up but not applied, and corrects the
192.168.31.0/24 note: that shim was created for a Pi-hole that AdGuard
replaced.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-11-03 22:29:40 +02:00
Kaloyan DanchevandClaude Opus 5 da981a7b40 docs: Unraid exit node approved
Approved in the Tailscale admin console, so xtrm-unraid now shows as
"offers exit node" and appears in tailscale exit-node list. The tailnet has
two exit nodes: mikrotik-tailscale (primary) and xtrm-unraid (fallback).

Neither has been exercised from the Mac. Noted that without
--exit-node-allow-lan-access an exit node cuts the client's own LAN access,
which would break an SSH session routed over Tailscale.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-11-03 21:51:49 +02:00
Kaloyan DanchevandClaude Opus 5 666b9baa5c docs: Unraid re-enrolled on Tailscale as 100.100.208.69
Unraid's Tailscale plugin node had been logged out since roughly May 2026.
Re-enrolled as xtrm-unraid (100.100.208.69); the stale 100.100.208.70 node
was deleted first, so the tailnet issued a new address.

Dropped the old 192.168.31.0/24 advertisement — that subnet is only the
macvlan shim and nothing reachable lives there. No LAN subnet routes are
advertised from Unraid; the MikroTik container stays primary. accept-routes
and accept-dns stay off, the former because Unraid sits on 192.168.10.0/24
and would otherwise loop.

Tailscale SSH enabled, since sshd binds only 192.168.10.20 and
192.168.31.250 and so never listens on the Tailscale IP. Port forwarding
over it verified.

Exit node advertised, pending approval in the admin console.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-11-03 21:42:14 +02:00
Kaloyan DanchevandClaude Opus 4.6 2021c50deb docs: add IoT miIO masquerade NAT rule
Xiaomi miIO/MIoT devices silently ignore UDP packets from source IPs
outside their subnet. Added SRCNAT masquerade rule documentation for
VLAN 10 → VLAN 30 on UDP 54321, enabling HA local control of air
purifiers and other Xiaomi WiFi devices.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-10-28 23:46:21 +02:00
Kaloyan DanchevandClaude Opus 4.6 892c026ddd docs: add Music Assistant Traefik route (ma.xtrm-lab.org)
HA add-on exposed on port 8095, routed via Traefik dynamic config.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-10-17 10:32:21 +03:00
Kaloyan DanchevandClaude Opus 5.5 5690e93f60 BT proxy #1 renamed to main-bedroom-bt-proxy, static lease
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 17:29:16 +03:00
Kaloyan DanchevandClaude Opus 5.5 1f9ce581fc HA: corridor Bluetooth proxy added
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 15:20:55 +03:00
Kaloyan DanchevandClaude Opus 5.5 c9caaa6a17 Network: cAP XL ether2 on VLAN 30 for Olimex BT proxies
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 11:04:41 +03:00
Kaloyan DanchevandClaude Opus 5.5 83b1dc3b50 HA: desk monitor input switching via DDC/CI (temporary Mac transport)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 13:21:59 +03:00
Kaloyan DanchevandClaude Opus 5.5 65aaa63508 HA: Jarvis ball Now Playing view, screen timeout, battery gauge
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 10:37:53 +03:00
Kaloyan DanchevandClaude Opus 5.5 4be77bf5b7 HA: Jarvis voice satellite (XiaoZhi Ball → ESPHome), static lease 192.168.30.111, Jarvis Piper voice, switch_as_x lights
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 00:26:41 +03:00
Kaloyan DanchevandClaude Opus 5.5 f22044a2f0 Govee: govee2mqtt LAN-only, static leases, IGMP proxy removed
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-11 20:09:30 +03:00
Kaloyan DanchevandClaude Opus 5.5 bf83b4f097 MikroTik IGMP proxy for Govee discovery; HA Govee rebuilt (local + cloud package)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-11 19:19:19 +03:00
Kaloyan DanchevandClaude Opus 4.6 b88a2fc113 Home Assistant: Zigbee migration (dining/living/curtain/remote) + LG TV root
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-10-11 15:42:44 +03:00
Kaloyan DanchevandClaude Opus 5.5 26a5867bc6 Home Assistant voice control: wyoming stack, Assist pipelines, Gemini fallback
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 22:50:14 +03:00
Kaloyan DanchevandClaude Opus 5.5 77e2fa45ec MikroTik: all devices on 7.24.5, disable unused local CAP client on hAP
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 21:05:48 +03:00
Kaloyan DanchevandClaude Opus 5.5 229077d586 DNS: add Cloudflare DoH + plain fallback upstreams to AdGuard
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 21:02:04 +03:00
Kaloyan DanchevandClaude Opus 5.5 c1f607b9ef DNS: fix VLAN10 failover hairpin NAT, MikroTik AdGuard 0.107.79
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 20:40:10 +03:00
Kaloyan DanchevandClaude Opus 5.5 6c6a251865 Traefik: SAMEORIGIN frame option for HA route; SmartThings soundbar
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 20:32:50 +03:00
Kaloyan DanchevandClaude Opus 5.5 9fa2e56090 Add Samsung soundbar and mDNS repeater (VLAN 10<->30); note casting firewall drift
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 19:57:18 +03:00
Kaloyan DanchevandClaude Opus 5.5 1821492753 MikroTik: RouterOS 7.24.5, Ookla speedtest container on hAP, speed baseline
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 19:25:31 +03:00
Kaloyan DanchevandClaude Opus 5.5 d8ce9e8aa7 Unraid: remove dockge and Home-Assistant-Container
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 18:54:27 +03:00
Kaloyan DanchevandClaude Opus 5.5 a48647a0fa Unraid: restore authentik and the stopped services, fix IP/port conflicts
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 18:42:38 +03:00
Kaloyan DanchevandClaude Opus 5.5 e45d48c0e2 Unraid: container recovery after reboot, Nextcloud 35, image updates
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 18:27:06 +03:00
Kaloyan DanchevandClaude Opus 4.8 c2c7ffad1b fix(dns): failover-down redirects to Unraid AdGuard port 53 not 3000
ci/woodpecker/push/woodpecker Pipeline was successful
Audit 2026-08-07 found dns-failover-down NAT script pointed DNS traffic
at 192.168.10.10:3000 (AdGuard web UI) instead of :53 (DNS resolver).
On real failover this would have broken DNS network-wide. Fixed live on
MikroTik and verified with controlled failover test.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-08-07 11:04:11 +03:00
Kaloyan DanchevandClaude Fable 5 83bc6f4e1d HA: Floorplan v3 — per-room Gemini API renders composited on exact geometry
ci/woodpecker/push/woodpecker Pipeline was successful
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-07 10:29:26 +03:00
Kaloyan DanchevandClaude Fable 5 968b197192 HA: Floorplan photorealistic background (Gemini interiors + PIL composite on exact geometry)
ci/woodpecker/push/woodpecker Pipeline was successful
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-07 10:00:08 +03:00
Kaloyan DanchevandClaude Fable 5 5a7c9738e6 HA: Floorplan furnished with native SVG furniture (AI render path shelved)
ci/woodpecker/push/woodpecker Pipeline was successful
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-06 19:06:58 +03:00
Kaloyan DanchevandClaude Fable 5 a5bb083790 HA: Roborock tracker v4 — dock-anchored weighted calibration
ci/woodpecker/push/woodpecker Pipeline was successful
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 12:27:05 +03:00
Kaloyan DanchevandClaude Fable 5 2d34b15f32 HA: Roborock tracker calibration v3 (goto tour) + bedroom segment mapping
ci/woodpecker/push/woodpecker Pipeline was successful
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 12:07:33 +03:00
Kaloyan DanchevandClaude Fable 5 0578b64f1a HA: Roborock live-position tracker on Floorplan (calibrated from cleaning history)
ci/woodpecker/push/woodpecker Pipeline was successful
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 10:29:55 +03:00
Kaloyan DanchevandClaude Fable 5 2e1b8301ef HA: Easy Floorplan dashboard with generated apartment plan
ci/woodpecker/push/woodpecker Pipeline was successful
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-04 19:29:10 +03:00
Kaloyan DanchevandClaude Fable 5 7dc280bdcf HAOS: System monitoring dashboard + smartmon local addon (SMART via full_access)
ci/woodpecker/push/woodpecker Pipeline was successful
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-04 17:21:56 +03:00
Kaloyan DanchevandClaude Fable 5 59f71e95bd HA: Roborock single-card redesign with Browser Mod popup (presets + room cleaning)
ci/woodpecker/push/woodpecker Pipeline was successful
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-30 14:14:56 +03:00
Kaloyan DanchevandClaude Opus 4.8 ce7095f0ac docs: add 2026-07-30 Prism multi-view Mushroom dashboard deployment
ci/woodpecker/push/woodpecker Pipeline was successful
5-view Mushroom dashboard deployed to HAOS via init_commands technique
(file-based YAML cannot be saved via lovelace/config/save WebSocket).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-30 11:54:27 +03:00
Kaloyan DanchevandClaude Opus 4.8 c814a56874 docs: HAOS 6 smart-home integrations + cross-VLAN/OAuth notes (2026-07-29)
ci/woodpecker/push/woodpecker Pipeline was successful
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-29 19:54:07 +03:00
Kaloyan DanchevandClaude Opus 4.8 c22b5aefac docs: add bare-metal HAOS (ASRock Q1900) — install, UEFI-from-SATA fix, VLAN10, ha.xtrm-lab.org repoint
ci/woodpecker/push/woodpecker Pipeline was successful
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-28 23:05:01 +03:00
Kaloyan Danchev 9be1f64d99 second-brain: hybrid Claude memory + git-based vault sync (Mac + Unraid)
ci/woodpecker/push/woodpecker Pipeline was successful
2026-07-14 12:06:38 +03:00
Kaloyan DanchevandClaude Opus 4.8 ea8e1e626c docs(hardware): identify XTRM-U mainboard (N5 Air) + flag 1Gbps network anomaly
ci/woodpecker/push/woodpecker Pipeline was successful
- Mainboard was 'details TBD': Minisforum N5 Air (Meigao F8NAB/N5A), Ryzen 7 255
  + 780M, 64GB DDR5-5600, USB4/TB, free OCuLink + PCIe x8 + M.2; OS -> Unraid 7.3.1
- Network: 10G/5G NICs but link only 1Gbps (eth1 degraded at 10Mb/s) — flagged

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-30 11:45:10 +03:00
Kaloyan DanchevandClaude Opus 4.8 2a34c42270 docs(services): correct Ollama iGPU entry — remove flash-attn/q8_0, note large-prompt crash
ci/woodpecker/push/woodpecker Pipeline was successful
The flash-attention + q8_0 KV cache settings were removed after they (and the
gfx1103 ROCm path generally) crash on large prompts. Document that the 780M iGPU
is direct/interactive-chat only, not an agent backend (Hermes ~15.5k-token prompt
crashed every call; reverted to cloud model).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-29 22:14:41 +03:00
Kaloyan DanchevandClaude Opus 4.8 3a28e42543 docs(services): add Ollama iGPU (Radeon 780M / ROCm) entry
ci/woodpecker/push/woodpecker Pipeline was successful
- Document ollama migrated to Dockge stack on ollama/ollama:rocm with
  gfx1103 enablement (HSA_OVERRIDE_GFX_VERSION=11.0.0, OLLAMA_IGPU_ENABLE=1)
- Verified Ornith 1.0 9B runs 100% on the 780M iGPU (~11 tok/s)
- CHANGELOG entry for 2026-06-29
- (also includes previously-uncommitted Development services section
  already present in the working tree)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-29 21:38:28 +03:00
Kaloyan DanchevandClaude Opus 4.6 9cc955e62b docs: document wifi-qcom-ac driver limitation for CAPsMAN manager processing
cAP XL ac cannot support traffic-processing=on-capsman (Qualcomm driver
limitation). Updated CAP device info, VLAN assignment notes, and added
troubleshooting entry for "could not assign vlan" errors.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-07 19:27:53 +03:00
Kaloyan DanchevandClaude Opus 4.6 6320c0f8d9 Docs: Claude Code tooling setup on Unraid — Cooperator, glab, skills, MCP prep
Installed Cooperator CLI, glab, uv+Python 3.12, 6 custom skills,
and built MCP servers (shortcut, mikrotik, unraid). MCP registration
via `claude mcp add` still pending as TODO.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-09 22:13:44 +02:00
Kaloyan DanchevandClaude Opus 4.6 7867b5c950 WiFi VLAN fixes, CAP bridge filtering, AdGuard IP conflicts, channel optimization
ci/woodpecker/push/woodpecker Pipeline was successful
- Enable bridge VLAN filtering on CAP for proper per-client VLAN assignment
- Fix AdGuard container IP conflicts (.2→.10, .3→.11) with static IPs
- Fix 2.4GHz co-channel interference (both APs were on ch 1, CAP now ch 6)
- Fix 5GHz overlap (HAP ch 36/5180, CAP moved to ch 52/5260)
- Update WiFi access-list: VLAN assignment now active with per-device VLAN IDs
- Add Xiaomi Air Purifier MC1 to VLAN 30 access-list

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-27 09:40:29 +02:00
Kaloyan DanchevandClaude Opus 4.6 cdb961f943 Post-migration container cleanup: fix broken services, remove obsolete containers
ci/woodpecker/push/woodpecker Pipeline was successful
Fixed Traefik networking (stale Docker bridge), adguardhome-sync config,
diode stack (Hydra DB + OAuth2 bootstrap), diode-agent auth. Removed 5
deprecated/duplicate containers. Started unmarr + rustfs stacks. 53
containers now running.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 17:30:15 +02:00
Kaloyan DanchevandClaude Opus 4.6 877aa71d3e Update docs: motherboard swap, NVMe cache pool, Docker migration
ci/woodpecker/push/woodpecker Pipeline was successful
- New motherboard installed, MAC/DHCP updated
- 3x Samsung 990 EVO Plus 1TB NVMe cache pool (ZFS RAIDZ1)
- Docker migrated from HDD loopback to NVMe ZFS storage driver
- disk1 confirmed dead (clicking heads), still on parity emulation
- Hardware inventory, changelog, and incident report updated

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 14:47:07 +02:00
Kaloyan DanchevandClaude Opus 4.6 bf6a62a275 Add incident report: disk1 hardware failure (clicking/head crash)
HGST Ultrastar 10TB drive (serial 2TKK3K1D) failed on Feb 18.
Array running degraded on parity emulation. Recovery plan documented.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-22 17:54:23 +02:00
Kaloyan DanchevandClaude Opus 4.6 0119c4d4d8 docs: add Minecraft server, WiFi DHCP fix to changelog
ci/woodpecker/push/woodpecker Pipeline was successful
- Added Minecraft Java server section to 03-SERVICES-OTHER.md
- Documented WiFi DHCP fix (VLAN 40 tagged→untagged on wifi1/wifi2)
- Documented Minecraft deployment and hairpin NAT setup

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 22:16:32 +02:00
Kaloyan DanchevandClaude Opus 4.6 2a522d56d2 docs: update configs after CAP recovery and roms share setup
ci/woodpecker/push/woodpecker Pipeline was successful
- 07-WIFI-CAPSMAN: CAP both radios working, access list no VLAN assignment
- 01-NETWORK-MAP: fix CAP IP .6→.2, add Nobara and SMB shares section
- 04-HARDWARE-INVENTORY: CAP SSH/version details, add Recalbox device
- 06-VLAN-DEVICE-ASSIGNMENT: add Nobara (VLAN 10), Recalbox (VLAN 25)
- 03-SERVICES-OTHER: add Roms SMB share section with mount details
- CHANGELOG: add 2026-02-14 entries

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 16:50:01 +02:00
Kaloyan DanchevandClaude Opus 4.6 4e726a4963 Add cross-VLAN casting docs, update device assignments
ci/woodpecker/push/woodpecker Pipeline was successful
- New doc: 11-CROSS-VLAN-CASTING.md with full MikroTik config
  (firewall rules, FastTrack exclusion, mDNS, IGMP proxy,
  AirPlay/Chromecast troubleshooting)
- Update device IPs: LG TV .40/.41, Chromecast .42
- Move HP printer from VLAN 40 to VLAN 30 at .30

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 18:28:55 +02:00
Kaloyan DanchevandClaude Opus 4.6 ecbce1ca94 Add VRRP failover infrastructure documentation (Nobara)
ci/woodpecker/push/woodpecker Pipeline was successful
Deployed automatic failover for critical services (Traefik, Vaultwarden,
Authentik, AdGuard) from Unraid to Nobara workstation via Keepalived VRRP
with VIP 192.168.10.250. ~4 second failover time.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 18:03:26 +02:00
Kaloyan DanchevandClaude Opus 4.6 d2f49e9130 Add Vaultwarden sync script for MikroTik cold standby
Syncs the Vaultwarden database, RSA key, and config from Unraid
to the MikroTik container standby instance via a temporary PHP
HTTP server. Designed for manual daily runs before maintenance.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 11:21:24 +02:00
Kaloyan DanchevandClaude Opus 4.6 4305657ad0 Add Bosch Home Connect integration to HA setup docs
Oven (HRG7784B1) and Washing Machine (WGB24400BY) added via OAuth2.
Both dashboards updated with Bosch appliance sections.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 19:23:46 +02:00
Kaloyan DanchevandClaude Opus 4.6 5af3c9478b Add Home Assistant setup documentation
Covers HAOS VM setup, Xiaomi/Gree/Tuya integrations, visionOS theme,
Mushroom Cards dashboards (mobile + desktop), and known issues.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 11:30:17 +02:00
Kaloyan DanchevandClaude Opus 4.6 c93f7da733 Add Unraid flash drive migration procedure
Flash drive on XTRM-U is failing. Created incident doc with complete
step-by-step procedure: backup retrieval (4 options), new USB prep via
Flash Creator, license transfer via Tools→Registration, post-migration
verification checklist, and prevention measures.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 15:14:43 +02:00
Kaloyan DanchevandClaude Opus 4.6 ec9659d0cb Restructure docs: archive VLAN migration, update IPs to VLAN 10
ci/woodpecker/push/woodpecker Pipeline was successful
Major documentation cleanup after VLAN migration completion:
- Archive 12 VLAN project docs to archive/vlan-migration/
- Archive 5 done WIP docs (VLAN proposals, AI stack, Fossorial, DNS backup)
- Create standing reference docs 08-DNS-ARCHITECTURE and 09-TAILSCALE-VPN
- Renumber docs to clean 01-09 sequence with merged CHANGELOG
- Update all active docs from stale 192.168.31.x to current VLAN 10 IPs
- Fix CSS1 (.10.9→.10.3) and ZX1 (.10.7→.10.4) IPs in hardware inventory
- Clean 06-VLAN-DEVICE-ASSIGNMENT: remove migration columns/sections, fix VLAN 25 subnet

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 12:45:16 +02:00
Kaloyan DanchevandClaude Opus 4.5 81f2f03400 Replace Portainer with Dockge for container management
ci/woodpecker/push/woodpecker Pipeline was successful
- Remove Portainer, add Dockge on port 5001
- Add project-specific CLAUDE.md with infrastructure instructions
- Update services documentation

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-06 08:01:42 +02:00
Kaloyan DanchevandClaude Opus 4.5 60369e6f43 Add Settop Box to VLAN 30 device list
ci/woodpecker/push/woodpecker Pipeline was successful
- LAN MAC: FC:D5:D9:EB:6A:82 → 192.168.30.50 (CSS326 Port 23)
- WiFi MAC: 08:FB:EA:61:9D:3A → 192.168.30.51 (XTRM2 2.4GHz)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 15:56:12 +02:00
Kaloyan DanchevandClaude Opus 4.5 740170a164 Add Roborock S7 to WPA+TKIP device list
ci/woodpecker/push/woodpecker Pipeline was successful
Fixed XTRM2 WiFi by enabling WPA-PSK + WPA2-PSK and setting
fixed channel 2412 MHz (channel 1) with 20MHz width.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 13:52:52 +02:00
Kaloyan DanchevandClaude Opus 4.5 c1ab68f499 Update CSS326 switch configuration with port labels
ci/woodpecker/push/woodpecker Pipeline was successful
- Configured VLANs 10, 20, 25, 30 on CSS326 via SwOS API
- Added port labels: HAP-Trunk, KVM-V10, Kids-B1/B2/G1, Main-M1/M2/M3, LR-L1/L2/L3, ZX1-10G
- Updated port assignments table with detailed per-port configuration

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 13:39:16 +02:00
Kaloyan DanchevandClaude Opus 4.5 5b8c8b72ec Add CSS326 port assignments with VLAN mapping
ci/woodpecker/push/woodpecker Pipeline was successful
- Port 1: HAP Uplink (Trunk)
- Port 2: KVM (VLAN 10)
- Ports 16-18: Kids Rooms (VLAN 25)
- Ports 19-21: Main Bedroom (VLAN 20)
- Ports 22-24: Living Room (VLAN 30, includes settop box)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 12:14:36 +02:00
Kaloyan DanchevandClaude Opus 4.5 76106664a7 Update HAP ax³ port assignments documentation
- ether1: ISP Gateway (WAN)
- ether2: CAP XL ac
- ether3: CSS326-24G-2S+
- ether4: XTRM-U (Unraid)
- ether5: Dell Monitor LAN

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 11:27:18 +02:00
Kaloyan DanchevandClaude Opus 4.5 6ba0f4c14f Add Kaloyan's device MAC addresses
- USB Hub: 34:0A:33:2C:1E:28
- MacBook Pro WiFi 5GHz: BE:A7:95:87:19:4A
- MacBook Pro WiFi 2.4GHz: CE:B8:11:EA:8D:55

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 09:19:38 +02:00
Kaloyan DanchevandClaude Opus 4.5 7e03532700 Identify Tuya Smart Gateway (JMWZG1) MAC address
- 38:1F:8D:04:6F:E4 is the Tuya Smart Gateway, not Xiaomi
- New IP: 192.168.30.5
- Requires WPA+TKIP for connectivity

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 09:14:16 +02:00
Kaloyan DanchevandClaude Opus 4.5 b7c998121e Reorganize VLAN 20/25 device assignments
- VLAN 20 (Trusted): Kaloyan's devices only (S25, MacBook, Gaming PC, USB Hub)
- VLAN 25 (Family): All other family members (Nora, Dancho, Kimi, Compusbg)
- Dell Monitor LAN moved to VLAN 10 (connected to HAP ether5)
- Added TBD section for USB Hub and Gaming PC WiFi MACs

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 09:05:02 +02:00
Kaloyan DanchevandClaude Opus 4.5 5608c45e05 Update Dell Monitor LAN device with new VLAN assignment
ci/woodpecker/push/woodpecker Pipeline was successful
- Renamed MacBook Pro LAN to Dell Monitor LAN
- Assigned to VLAN 10 (Management) with IP 192.168.20.100

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 21:51:47 +02:00
Kaloyan DanchevandClaude Opus 4.5 9a6b725a14 Add device migration worksheet with all devices by VLAN
Includes columns for new VLAN and new IP planning:
- 36 devices across 7 VLANs
- Organized by VLAN section and flat list views
- Ready for migration planning

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 20:28:28 +02:00
Kaloyan DanchevandClaude Opus 4.5 0c492d016c Add WiFi/CAPsMAN config and fix Xiaomi OUI misidentification
ci/woodpecker/push/woodpecker Pipeline was successful
- Created docs/19-WIFI-CAPSMAN-CONFIG.md documenting working WiFi settings
- Fixed 38:1F:8D:04:6F:E4 OUI - was incorrectly labeled as Tuya, is actually Xiaomi
- XTRM2 (2.4GHz) requires WPA+WPA2 with TKIP for legacy device compatibility
- CAPsMAN working with CAP XL ac on 2.4GHz

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 20:14:44 +02:00
Kaloyan DanchevandClaude Opus 4.5 7470d3f502 Update documentation with correct VLAN IPs
ci/woodpecker/push/woodpecker Pipeline was successful
Hardware Inventory:
- Unraid server: 192.168.10.20
- Unraid AdGuard (macvlan): 192.168.10.10
- Router: 192.168.10.1
- CSS326 switch: 192.168.10.9
- ZX switch: 192.168.10.7
- cAP XL: 192.168.10.6

Critical Services:
- Updated DNS section with correct container IPs
- Added failover details and Web UI URLs
- Updated routing to reflect VLAN structure
- Updated DHCP pools for all VLANs

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 22:22:10 +02:00
Kaloyan DanchevandClaude Opus 4.5 f56a43741d Update DNS failover with dual health check
- Added DNS resolution Netwatch monitor (type=dns) alongside ping
- Ping check: Fast container crash detection (10s interval)
- DNS check: Actual DNS functionality verification (30s interval)
- Either monitor failing triggers failover to Unraid
- Documented /32 routing fix for multi-container ECMP issue
- Updated troubleshooting section with routing checks

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 20:52:49 +02:00
Kaloyan DanchevandClaude Opus 4.5 d34cea9df6 Add MikroTik Tailscale container documentation
ci/woodpecker/push/woodpecker Pipeline was successful
Documents the Tailscale container setup on MikroTik hAP ax³:
- Userspace networking mode (TS_USERSPACE=true) required for RouterOS containers
- Container network configuration (172.17.0.0/24)
- NAT masquerade for internet access
- Environment variables and mount configuration
- Troubleshooting guide for common issues

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 18:43:27 +02:00
Kaloyan DanchevandClaude Opus 4.5 4b766145b4 Add AdGuard DNS setup with automatic failover documentation
- docs/16-ADGUARD-VLAN-PLAN.md: Implementation plan for AdGuard on VLANs
- docs/17-DNS-ADGUARD-FAILOVER.md: Complete DNS architecture with:
  - Dual AdGuard setup (MikroTik primary, Unraid secondary)
  - Automatic failover via Netwatch monitoring
  - NAT redirect rules for all VLANs
  - Sync configuration between instances
- docs/wip/CONSOLE-PORT-ETHER5.md: WIP plan for dedicated console port

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 17:22:18 +02:00
Kaloyan DanchevandClaude Opus 4.5 70fa8c0654 Update port forwards and IPs for VLAN 10 setup
ci/woodpecker/push/woodpecker Pipeline was successful
- Updated NAT port forwards to use 192.168.10.20 (Unraid on VLAN 10)
- Added hairpin NAT rules for internal access to WAN IP
- Updated SSH connection commands
- AdGuard DNS rules pending (not configured yet)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 13:06:02 +02:00
Kaloyan DanchevandClaude Opus 4.5 0c27218091 Update NanoKVM IP to 192.168.10.200
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 13:06:02 +02:00
Kaloyan DanchevandClaude Opus 4.5 e9572ae166 Add VLAN setup documentation - complete implementation
- docs/12-VLAN-SETUP-PROGRESS.md: Progress tracking during setup
- docs/13-VLAN-SETUP-PLAN-V2.md: Initial VLAN plan
- docs/14-VLAN-SETUP-PLAN-V3-SAFE-MODE.md: Safe mode approach
- docs/15-VLAN-SETUP-COMPLETE-2026-01-31.md: Final session summary

VLANs implemented:
- VLAN 10: Management (192.168.10.0/24) - port-based
- VLAN 20: Trusted (192.168.20.0/24) - WiFi MAC-based
- VLAN 25: Kids (192.168.25.0/24) - WiFi MAC-based
- VLAN 30: IoT (192.168.30.0/24) - WiFi MAC-based
- VLAN 40: Catch-All (192.168.1.0/24) - default

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 13:05:33 +02:00
Kaloyan Danchev 8757bccca0 Add VLAN migration plan with Unraid transition strategy
ci/woodpecker/push/woodpecker Pipeline was successful
2026-01-25 20:34:15 +02:00
Kaloyan Danchev d931d607b0 Move unknown/unidentified devices to VLAN 50 (Guest)
ci/woodpecker/push/woodpecker Pipeline was successful
2026-01-25 20:29:54 +02:00
Kaloyan Danchev de65a69334 Fix LG TV WiFi MAC and IP (DC:03:98:6B:5A:3A @ .118)
ci/woodpecker/push/woodpecker Pipeline was successful
2026-01-25 20:21:49 +02:00