Systems in Detail

Local-First Smart Home


← Back to Project Overview


A closer look at the systems that are live today, grouped by what they do.

Climate control

A dual-fuel setup pairs a heat pump with a propane furnace and switches between them at an economic changeover point, with seasonal day/night setpoint guardrails tuned for a heating-dominated Blue Ridge climate. The logic draws on both National Weather Service data and my own Ambient Weather station on the property. Anyone can override the temperature right at the thermostat, and the system honors that hold before automatically falling back to the schedule after a set time. It also exposes a friendly "season" and "mode" for other automations to reason about.

Weather

A custom weather entity blends my backyard Ambient Weather station for current conditions with National Weather Service forecasts and rainfall data, tuned for our ridge-top elevation. It drives barometric pressure-tendency storm alerts and feeds the climate logic and other automations.

Energy

Per-device power and monthly cost for the metered plugs and HVAC, plus a whole-home model that separates HVAC, metered outlets, and an "everything else" bucket for both electricity and propane. New devices join the cost picture by applying a couple of labels, with no dashboard rework. Propane gets the same treatment: live readings from a 500-gallon tank feed the cost framework along with a days-to-empty estimate.

Surfacing that propane data took some open-source work. My electric utility exposes usage through Opower, but the propane provider had no comparable feed, so I extended the community MyFuelPortal integration. My open pull request refactors the scraper into a testable, Home-Assistant-free client and adds delivery history, derived per-gallon and per-cubic-foot pricing, account info, and vanity-domain support. A follow-up is in the works to backfill historical statistics, so past usage and deliveries populate Home Assistant's long-term data instead of only accruing from the day the integration was installed.

Security

A Z-Wave deadbolt gives each household member their own keypad PIN, so every access notification names who unlocked the door and whether they used the app or a personal code, alongside auto-locking and tamper or jam alerts. Presence ties it together: using each person's phone location, the house knows when everyone has left, and can lock up, switch off the outlets that do not need to stay on, and tell the indoor cameras when to alert. Arlo cameras and doorbells feed motion and doorbell-press snapshots into those notifications.

Entertainment

Modest for now: internet radio to the speakers. A local media server for movies, shows, and music is on the roadmap.

Dashboard and notifications

A responsive dashboard reflows cleanly from phone to tablet to desktop, organized so anyone in the house can find the thermostat, lock the door, or check a camera without a tutorial. Behind it, phone notifications are rich and image-capable, with a dedicated critical-alert channel.

Remote access

When we are away, Home Assistant Cloud (Nabu Casa) provides secure remote access from anywhere, with no port-forwarding or self-managed VPN to maintain. It is the cloud convenience the family leans on most: checking whether we left a light or appliance on and switching it off, seeing what a camera caught, or confirming the door is locked (and locking it) if someone unexpected turns up. It is a paid subscription, which also helps fund Home Assistant's development, and true to the cloud-optional principle it is a convenience layer only: if the internet or the relay is down, everything still works locally on the home network.

Engineering practices

The entire configuration lives in a private Git repository (secrets excluded), so every change is versioned and reversible, with Home Assistant's own snapshots handling full bare-metal recovery.


← Back to Project Overview


← Back to all projects