38
submitted 1 day ago* (last edited 1 day ago) by neon@sh.itjust.works to c/homeassistant@lemmy.world

Background: I used Tailscale for remote access to HA. It mostly worked well, but in the driveway the phone is half on cellular, half on wifi. The HA app keeps an old connection and hangs most of the time when I just quickly want to open the garage door. Kill, reopen, wait. That was annoying enough that I wrote something that fixes that over the weekend.

ha-iroh is a small Android app plus a HACS integration, built on iroh (p2p QUIC). Every phone has a keypair with HA, traffic is end-to-end encrypted, NAT hole punching is done automatically where possible, otherwise a relay is used that only sees ciphertext. Setup (one-time, first connection) is done by scanning a QR-Code.

There is no persistent tunnel. The app dials HA when you tap something and disconnects afterwards, so network switches don't matter and my in-front-of-the-garage-door wait is gone.

Features

  • Device Controls in the Android power menu / quick settings: lights, switches, fans, climate, covers, locks, scenes, scripts, buttons, with live state
  • Assist via quick settings tile or launcher shortcut (text only for now)
  • the normal HA dashboard in a WebView, login once, any auth provider incl. MFA
  • several HA instances in one app
  • pairing by QR code from the HA config flow. Delete the device in HA and the phone is out

Not included, on purpose Sensors, location, notifications, widgets, Wear OS, iOS. I still use the official app for all of that. ha-iroh only covers quick control when I'm not home.

Status

  • v0.2.x. I've not received any major bug reports yet, but DO expect rough edges. For me at least it currently works reliably enough.
  • Android 12+, arm64 APK via GitHub Releases or Obtainium. Not on Play.
  • HA 2026.3+, HACS custom repo. The integration starts a small Rust bridge as a subprocess, x86_64 and aarch64 bundled, so HA OS / Container / Supervised work.
  • Optional: forward one UDP port and iroh connects directly always instead of sometimes via relay. Not required.
  • Two HA settings to check, both in the README: ip_ban_enabled (the bridge connects from localhost, so wrong passwords from one phone can ban 127.0.0.1, i.e. all phones) and never put loopback into trusted_networks.

Disclosure

Large parts of this were built with an LLM. If that's a dealbreaker for you, this project is not for you.

Links

Bug reports welcome, especially from people behind CGNAT or on Fritz!Box / MikroTik.

you are viewing a single comment's thread
view the rest of the comments
[-] peregus@lemmy.world 2 points 18 hours ago

Cool! I'll try this. bout the garage door, I'd like to tell you how I do it: a car tracker (Teltonika FMB120 for about 45€), a small push button under the steering wheel, when I push it, it does a curl request to my Node Red instance that, based on the car location, opens the gate of my home, or office or parents. Bonus: the FMB120 can connect to the CAN bus and you can get some telemetry and you can also always locate your car (I use Traccar). It does need a data SIM card, but with 1NCE, you can get one that lasts 10 years and it only costs 10€ (not per month, not per year, for the whole 10 years.)

this post was submitted on 11 Oct 2026
38 points (79.7% liked)

homeassistant

20846 readers
35 users here now

Home Assistant is open source home automation that puts local control and privacy first.
Powered by a worldwide community of tinkerers and DIY enthusiasts.

Home Assistant can be self-installed on ProxMox, Raspberry Pi, or even purchased pre-installed: Home Assistant: Installation

Discussion of Home-Assistant adjacent topics is absolutely fine, within reason.
If you're not sure, DM @GreatAlbatross@feddit.uk

founded 3 years ago
MODERATORS