Every home we run,
on one screen.

Dispatch is the monitoring console we built to operate our Home Assistant installations. A small client in each home reports its health every 60 seconds; Dispatch turns those reports into a ranked fleet, correlated incidents and update-risk verdicts — so a dozen homes can be run like one.

Reporting · 60s Self-hosted · no third-party cloud Built on Home Assistant
DISPATCH FLEET TRIAGE 12 RISK CONFIG Super Administrator admin@hadispatch.local BUILD DEV FLEET 6 of 12 need attention POLLING · 60S INCIDENT Zigbee Home Automation 0.0.48 5 failed · 2 clean T+31H Open → SITEPROBLEMFORCORESEEN Sycamore BarnAsh LaneHarbour ViewOld MillFern CourtLakeside HouseElmtree CottageBeech RoadCarlton MewsPriory GateWharf StudioCopper Beeches Not reportingFailed integration · Zigbee Home…Failed integration · Zigbee Home…Failed integration · Zigbee Home…Failed integration · Zigbee Home…Failed integration · Zigbee Home…Unavailable entity · Garden temp…No open issuesNo open issuesNo open issuesNo open issuesNo open issues 7H 1M 1D 2H 22H 52M 18H 20M 10H 47M 5H 9M 39M 2026.9.12026.9.12026.9.12026.9.12026.9.12026.9.12026.9.12026.9.12026.9.12026.9.12026.9.12026.9.1 7h 1m3m3m2m3m3m3m2m2m2m2m3m Sycamore Barn OFFLINE sycamore-barn.local · Core 2026.9.1 · OS 14.2 CPU1.00 MEM45% DISK40% Not reporting · seen 7h 1m ago Up 4w Remote access NO SESSION Ask the customer for time-boxed access. They see who is asking and why, and get a record of everything that was done. REQUEST ACCESS → OPEN HA ISSUES WHAT CHANGED COMPONENTS 6 Nothing open This installation is reporting clean. FLEET 6 of 12 need attention POLLING · 60S 15121 OFFLINECRITICALOPENSNOOZED INCIDENT CAUTION T+31H Zigbee Home Automation 0.0.48 Failing on 5 of the 7 sites that took it. The 5 that stayed on 0.0.47 are fine. 5 failed · 2 clean Open incident → // NEEDS ATTENTION / 1 Sycamore Barn Offline · last seen 7h 1m ago 7H // IN THE ZIGBEE INCIDENT / 5 Open → Lakeside House Failed integration · Zigbee Home Au… 5H 8M Fern Court Failed integration · Zigbee Home Au… 10H 46M FLEET 12 TRIAGE RISK CONFIG

From twelve homes to the one that matters.

Raw alerts stop scaling at the second house. Dispatch ranks, groups and correlates so the queue stays honest: the site that needs a visit is at the top, and one bad update is one incident — not five separate faults to drive to.

FLEET 6 of 12 need attention POLLING · 60S 15121 OFFLINECRITICALOPENSNOOZED INCIDENT CAUTION T+31H Zigbee Home Automation 0.0.48 Failing on 5 of the 7 sites that took it. The 5 that stayed on 0.0.47 are fine. 5 failed · 2 clean Open incident → // NEEDS ATTENTION / 1 Sycamore Barn Offline · last seen 7h 1m ago 7H // IN THE ZIGBEE INCIDENT / 5 Open → Lakeside House Failed integration · Zigbee Home Au… 5H 8M Fern Court Failed integration · Zigbee Home Au… 10H 46M FLEET 12 TRIAGE RISK CONFIG
FleetRanked by attention, not by nameThe home that needs a visit is at the top. Quiet homes stay quiet. A sensor that flaps twice a day is one bad battery, not five hundred alarms.
TRIAGE 12 OPEN · 5 CRITICAL OPEN 12 CRITICAL 5 ACKNOWLEDGED FL Grouped by incident swipe → ack · ← snooze Sycamore Barn Installation offline No report for 7h 1m · last metrics 05:25 AM Zigbee Home Automation 0.0.48 10 Ack all Zigbee Home Automation Failed integration · Ash Lane 1D 2H Zigbee Home Automation Failed integration · Harbour View 22H 51M Zigbee Home Automation Failed integration · Old Mill 18H 19M Zigbee Home Automation Failed integration · Fern Court 10H 46M Show 6 more from this incident Elmtree Cottage 2 Unavailable entity FLEET 12 TRIAGE RISK CONFIG
TriageA queue you can actually clearFaults arrive grouped by incident, acknowledged in one gesture. Twelve open items collapse into the two problems that are real.
INCIDENT INTEGRATION CAUTION MEDIUM CONFIDENCE INTEGRATION Zigbee Home Automation 0.0.47 → 0.0.48 5 / 7 sites failed after upgrading 0 / 5 failed on 0.0.47 // HOW IT FAILS component_failing:integration:zha Most of the affected sites also lost “Back door contact” shortly afterwards. // AFFECTED / 5 Harbour View upgraded 23h 1m ago · fault 9m later 22H 52M Fern Court upgraded 11h 1m ago · fault 14m later 10H 47M Old Mill upgraded 19h 1m ago · fault 41m later 18H 20M Lakeside House upgraded 6h 1m ago · fault 52m later 5H 9M FLEET 12 TRIAGE RISK CONFIG
IncidentFive broken homes, one problemWhen one bad update breaks several homes, Dispatch shows it as one incident with every site it hit, instead of five separate faults.
UPDATE RISK Every installation that takes an update runs an experiment for the rest of the fleet. Versions that hit faults get flagged here — usually before an advisory is published anywhere. CAUTION MEDIUM CONFIDENCE scored 1m ago Zigbee Home Automation 0.0.48 Integration · 7 of your 12 sites are on it 5 of 7 installations hit a fault within 120 minutes of this update. UPGRADED HELD BACK // HOW IT FAILS component_failing:integration:zha ×5 Verdict computed · not pinned HOLD CAUTION WATCH CLEAR Pinning a verdict overrides the fleet's own score until you clear it. Open the incident // EVERYTHING ELSE / 6 Nothing else is flagged The fleet is on Core 2026.9.1, OS 14.2, Hue 4.1.0, Frigate 5.3.0 — and none of them are flagged. FLEET 12 TRIAGE RISK CONFIG
Update riskEvery update is a fleet-wide experimentEach home that takes an update is a test for the rest. A version that causes faults gets a Hold or Caution verdict and stops rolling out.
A person checking a glowing phone in a dark, candlelit room at night

The one page that matters reaches a person.

Noise is budgeted, faults are grouped, and the fleet is ranked — so when a phone buzzes at night it's real, it's one item, and it already says what changed.

22:52 · 1 CRITICAL · PAGED · ACKED IN 40S

Every fault arrives with its cause attached.

Open a site and the story is already assembled: health and uptime, the critical fault, the version change that landed an hour before it, and the same failure on four other sites. Remote access is requested right there — scoped, time-boxed, and waiting on the homeowner's consent.

What changedFaults are shown next to the version and config changes that preceded them, so the fix starts from the cause
CorrelationThe same failure across sites folds into one fleet incident with every affected home listed
Remote accessRead-only, maintenance or full — each session consent-gated, time-limited and receipted
Signed updatesClient updates are signed offline; the server that schedules them never holds the key

Boring choices, on purpose.

// Reporting

Polling, not hope

Every site reports on a 60-second cycle, with an offline check every 5 minutes. Silence is itself a signal: a home that goes dark is noticed in minutes, not when someone complains.

// Alerting

Noise-budgeted alerts

Alerts spend from a budget. A flapping sensor gets folded into one item instead of paging all night, so when a phone buzzes it means something.

// Hosting

Self-hosted, end to end

Dispatch runs on our own server. No third-party cloud sits between us and the homes we're responsible for.

// Visibility

Sees the minimum

Dispatch sees health, versions and faults. It does not see cameras, media, or who is home.

// Access

Consent first

Remote access is requested per session with an explicit scope and duration. The homeowner approves it, can revoke it, and gets a receipt of everything done.

// Supply chain

Signed all the way down

Updates to the in-home client are signed with a key the scheduling server never holds, so even a compromised server can't push code into a house.

A car on a dark highway at night, headlights lighting the road

Five broken homes used to be five drives.

Correlated incidents plus consent-gated remote access turn a bad update into one rollback from the desk. The truck rolls for the faults that actually need hands.

INCIDENT ZHA 0.0.48 · 5 SITES · REMOTE FIX · 0 MILES

Built for our fleet. Released for yours.

We built Dispatch because nothing else treated a handful of Home Assistant homes like a fleet. It's the software we bet our own service on, and we're preparing to release it as open source — so any installer, integrator or determined homeowner can run their own.

The code will land at github.com/straplocked/ha-dispatch. Until then it runs privately: Dispatch is the tool our techs work in, not something customers ever need to touch — your side of it is the screen on the wall and the consent link.

STATUSRunning our fleet in production
RELEASEOpen source · in preparation
STACKClient in Home Assistant · self-hosted server · PWA console
LICENSETo be announced with the release
Blue-lit network racks in a server room

Your rack. Your fleet. Your rules.

When Dispatch ships as open source it runs where you put it — no vendor cloud, no per-site fee. The same console we bet our own service on, on your own hardware.

SERVER: YOURS · SITES: UNLIMITED · CLOUD: NONE