HALO overview
HALO is an infrastructure intelligence platform. It turns commodity ARM hardware into self-organizing mesh networks with built-in monitoring, automation, and control. A deployment is a set of low-cost devices — Raspberry Pi-class nodes — running a compiled Rust control plane, a mesh networking layer, and a sensor collector, all managed from a browser.
Nodes discover each other over 802.11ah HaLow radio, form authenticated mesh links, auto-assign addresses, and begin reporting telemetry. No per-node network configuration is required. The platform is built for environments where conventional networking does not exist or cannot be relied upon: remote sites, mobile operations, temporary deployments, and distributed sensor networks.
HALO
v0.1.0is an early release. On-disk formats, the API surface, and configuration schemas are still stabilizing against live hardware. Treat them as subject to change.
What HALO is
HALO ships as a small set of statically linked Rust binaries, deployed by systemd, with no runtime dependencies — no Python, no Node.js, no container runtime on the control path.
- HALO — the platform.
- HALO Portal — the web admin UI.
- HALO Flows — the event pipeline engine (trigger → condition → action automation).
- ethrx — the parent organization.
Each component is a single file under 25 MB. Deployment is a binary push plus a service restart. This matters in bandwidth-constrained and air-gapped environments where update payloads must be small and atomic.
Who it is for
HALO targets field operators managing deployed mesh networks: tactical comms, remote site monitoring, IoT sensor networks, and edge computing clusters. Technical literacy is assumed — operators work in terms of nodes, meshes, telemetry, hostnames, and IPs.
Core capabilities
- Zero-configuration mesh networking over 802.11ah HaLow in the sub-GHz band, with multi-kilometer range at low power.
- A self-healing radio stack — graduated recovery from peer loss, driver faults, and routing failures without operator intervention. Cold boot to full encrypted reachability is typically under 90 seconds.
- A two-layer encrypted mesh:
batman-advLayer 2 underlay with a WireGuard overlay carrying all control traffic. - HALO Flows — a visual pipeline engine for automated responses to network and sensor events.
- Plug-and-play I2C sensor integration via templates, with nine built-in sensors and TOML-defined custom devices.
- A canonical device model — every physical device maps to one identity, with interfaces, sensors, and roles modeled as its children.
- Agent-less monitoring of external systems (Proxmox, Synology, UniFi, HTTP, ping).
- HALO Field — a mobile-first diagnostics UI served on-device for in-field testing.
How HALO is delivered
A flashable Raspberry Pi OS image boots directly into a working HALO node. The image carries all binaries, the custom wpa_supplicant build with mesh support, mesh scripts, the frontend, systemd units, nginx, and a first-boot provisioner. Role-based service enablement decides whether a node comes up as a gateway or a remote node. See getting started for the install path.
Where to go next
- Install and bring up a network in getting started.
- Understand the model in architecture and networking.
- Read the subsystem references: HALO Portal, HALO Flows, field diagnostics, IO and sensors, and external systems.
- Use the haloctl CLI and gateway API references for day-to-day operation.
- Review configuration and operations for deploy and service management.
