Skip to main content

IoT Adapter

The IoT Adapter (zs-iot) is an on-premise gateway service running on Raspberry Pi. It manages local IoT devices (smart locks, Wi-Fi access points, cameras) and bridges them to ZenEdge in the cloud.

Why On-Premise?

  • Local network access — Many IoT devices (UniFi APs, door controllers) are only accessible on the local network
  • Low latency — Device commands execute locally without cloud round-trips
  • Reliability — Core device control works even during cloud connectivity issues
  • Security — Device credentials never leave the local network

Tech Stack

ComponentTechnology
RuntimeNode.js
FrameworkExpress
DatabaseSQLite (local persistence)
NetworkingTailscale (mesh VPN to cloud)
HardwareRaspberry Pi 4 (recommended)

What It Does

  • Device Registry — Manages local IoT devices and their configurations
  • Adapter Protocol — Implements the 7-endpoint contract for each device
  • Booking Sync — Receives booking events and triggers device actions
  • Voucher Generation — Creates Wi-Fi vouchers for UniFi networks
  • Health Reporting — Reports device health to ZenEdge
  • Remote Management — Accepts commands from ZenEdge via Tailscale

Architecture

Next Steps