Installation

This document provides installation instructions for OpenHAP on OpenBSD. For detailed configuration options, see openhapd.conf(5). For command-line options, see openhapd(8) and hapctl(8).

Requirements

Dependencies

The make deps command installs the runtime dependencies listed in the per-platform manifests under deps/ (e.g. deps/OpenBSD.txt).

Install

git clone https://github.com/dickolsson/openhap.git
cd openhap
make deps
doas make install

Setup

# Create system user
doas useradd -c "OpenHAP" -d /var/empty -g =uid -r 100..999 -s /sbin/nologin _openhap
doas usermod -G wheel _openhap  # Required for mdnsd socket access
doas chown _openhap:_openhap /var/db/openhapd

# Configure
doas cp /etc/examples/openhapd.conf /etc/openhapd.conf
doas vi /etc/openhapd.conf

# Test configuration
doas openhapd -n

# Enable mDNS (replace vio0 with your interface)
echo 'multicast=YES' | doas tee -a /etc/rc.conf.local
echo 'mdnsd_flags=vio0' | doas tee -a /etc/rc.conf.local

# Start services
doas rcctl enable mosquitto mdnsd openhapd
doas rcctl start mosquitto mdnsd openhapd

Firewall

Add to /etc/pf.conf:

pass in on $lan_if proto tcp to port 51827  # HAP
pass in on $lan_if proto udp to port 5353   # mDNS

Verify

hapctl status
hapctl devices

Upgrade

doas rcctl stop openhapd
cd openhap && git pull
doas make install
doas rcctl start openhapd

Uninstall

doas rcctl stop openhapd
doas rcctl disable openhapd
cd openhap
doas make uninstall
# Optionally remove configuration and data
doas rm -f /etc/openhapd.conf
doas rm -rf /var/db/openhapd
doas userdel _openhap

Troubleshooting

Won’t start:

openhapd -n -c /etc/openhapd.conf  # Check config
tail /var/log/daemon | grep openhap

Not found in Home app:

rcctl check mdnsd
mdnsctl browse
nc -zv <ip> 51827

MQTT issues:

rcctl check mosquitto
mosquitto_sub -h localhost -t '#' -v