Commit Graph
173 Commits
Author SHA1 Message Date
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 5 4c1517884b wifi: set country=Bulgaria on all radios, remove TKIP from cfg-xtrm
The country=United States override existed to reach UNII-3 (5745 MHz),
which is not permitted in the EU. It cost more than it gained: clients in
the BG regulatory domain were power-restricted on those channels.

Setting country=Bulgaria raised the test client from 241 to 295 Mbps
immediately and ~451 Mbps once rate adaptation settled, with client signal
improving from -72 to -67 dBm. Total gain this session: 38 -> 451 Mbps.

Also:
- cfg-xtrm security.encryption tkip -> ccmp (provisioning rule 0 would
  have handed TKIP to any new 5GHz CAP interface, forcing legacy rates)
- cap-wifi1 moved to 5220 MHz (ch 44, non-DFS, legal in BG); still disabled
- Corrected: HAP wifi2 is disabled with encryption="", not tkip
- Noted that country does NOT hard-block an illegal frequency

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-27 17:32:15 +03:00
Kaloyan DanchevandClaude Opus 5 1fba4673be wifi: move hAP 5GHz from ch 149 to ch 36, fix doc drift
Channel 149 (UNII-3) is not permitted in Bulgaria/EU. The radio reached it
via country=United States, but BG-domain clients were power-restricted
there, giving a badly asymmetric link and ~38 Mbps at the desk.

Moving to 5180 MHz (ch 36), legal in BG and non-DFS, raised the same
client to ~241 Mbps.

Also corrected:
- CAP capdp datapath is vlan-id=30, not 40
- RouterOS versions: hAP, cAP XL and cAP AC are all on 7.23.3
- Added WAN baseline: ~880 Mbps down / ~720 Mbps up on a 1 Gbps ONT link

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-27 16:55:29 +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
jazzymc 21ff7f5c12 [IMMICH] Deploy Immich v3 photo server (Google Photos replacement)
ci/woodpecker/push/woodpecker Pipeline was successful
- Compose stack at appdata/immich, exposed via Traefik at photos.xtrm-lab.org
- Library on cache NVMe (raidz1), Postgres on cache
- Nightly backup (DB dump + originals rsync) to parity-protected array disk1
- Google Takeout import ready via immich-go v0.32.0
2026-07-08 15:15:14 +00: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
jazzymc 08874ca0b3 autokuma: fix v1->v2 config and label syntax
- Replace v1 AUTOKUMA_DOCKER=1 with v2 env vars (ENABLED, HOSTS, SOURCE)
- Rewrite traefik-manager labels in v2 4-part syntax: kuma.<id>.<type>.<setting>
- Delete manually-created monitor #38; AutoKuma recreates it (now #39) cleanly
- Document v2 label requirements and the remaining v1-label migration

Default AUTOKUMA__DOCKER__SOURCE is Swarm Services — must be set to
Containers for standalone Docker. v2 also doesn't accept the v1 shorthand
(kuma=URL + kuma.name=... + kuma.type=...), only the explicit 4-part form.
2026-05-18 12:45:19 +03:00
jazzymc 980df5517d dockerproxy: pin traefik-manager to .4, add direct TCP monitor for traefik
- Pinned traefik-manager to 172.18.0.4 (was floating in the dynamic pool)
- Added Uptime Kuma monitor id=38 "Traefik Container (direct)" — TCP probe
  at 172.18.0.3:80, decoupled from the routing-layer HTTP probe so a
  Traefik container failure is distinguishable from a routing breakage
- Documented that AutoKuma v2 is silently broken; monitor was created via
  direct SQL insert as a workaround
2026-05-17 11:54:29 +03:00
jazzymc dd1c15cf6b dockerproxy: redesign IPAM with static block + dynamic /25 pool
Recreated dockerproxy network with --ip-range 172.18.0.128/25 so Docker
auto-allocations are isolated from the .2-.127 static reservation block.
Eliminates IP-collision class that caused the 2026-05-17 Traefik outage.

Adds 13-DOCKERPROXY-NETWORK.md as the canonical reference for the
network spec, recreate command, and current IP assignments.
2026-05-17 08:36:46 +03:00
jazzymc 6506b22aea incident: traefik IP collision on dockerproxy (2026-05-17) 2026-05-17 08:10:39 +03:00
jazzymcandClaude Opus 4.6 02d07a8e52 docs: add Plex RD mount propagation fix to changelog
Fixed Transport endpoint not connected error — Plex volume mount
needed :rslave propagation to see rclone FUSE mount from zurg.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-05 21:15:38 +00:00
jazzymc 38e83410bd docs: update Docker container inventory to current state
- Add new services: Ollama, Open WebUI, Overseerr, Radarr, Sonarr, Prowlarr,
  Zurg/Rclone, Plex Debrid, ntfy, Obsidian LiveSync, Supabase stack, pgAdmin4,
  Dockhand, SeekAndWatch, xtrm-agent, Tuya Gateway
- Remove NetBox and Diode (no longer running)
- Fix Speedtest URL (speed.xtrm-lab.org)
- Update monitor count to 24
- Update stopped/disabled services list
- Update shared databases and Redis consumers
2026-05-05 19:24:57 +00:00
jazzymc 9cad25d25b docs: HA Traefik fix, Nextcloud upgrade, Uptime Kuma monitor fixes — all 24 monitors green 2026-05-05 19:13:48 +00:00
jazzymc b05a5f1574 docs: Uptime Kuma cleanup - fix stale IPs and remove duplicates 2026-05-05 18:40:30 +00:00
jazzymcandClaude Opus 4.6 8e3cde9d7c docs: add Kasm Workspaces service and fix changelog
Document Kasm DinD architecture, Traefik integration, and the
proxy_port/frameDeny fixes that resolved session connection failures.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-05 17:38:17 +00: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
jazzymcandClaude Opus 4.6 d0b4fae25e WiFi troubleshooting guide, fix empty security overrides, update config docs
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 16:18:50 +02: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
jazzymc 8aef54992a Docker audit: migrate all containers to Dockge, clean up Traefik config
ci/woodpecker/push/woodpecker Pipeline was successful
2026-02-28 20:39:16 +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