Skip to main content
Hoplynk is built around a simple hierarchy: kits contain assets, assets produce feeds and accept commands, and kits connect to the internet over links.
Kit (field hardware bundle)
├── Links          WAN connections — Starlink, cellular, wired
└── Assets         Cameras, drones, sensors, radios
    ├── Feeds      Live data — GPS, battery, motion, attitude
    └── Commands   Actions — PTZ move, arm, reboot, set mode
Everything in the platform — the Argus dashboard, the API, the WebSocket streams — is organized around this structure.

Kit

A kit is the hardware package you deploy in the field: a router, a compute board (Raspberry Pi), and one or more WAN connections (Starlink dish, cellular modem). The kit is the anchor point for everything attached to it. Kits report their own GPS position and link health. From the API you can query a kit’s live location, active WAN links, link throughput, and signal quality.

Kits →


Assets

An asset is any device connected to a kit — a camera, a drone, a radio, a sensor, or any externally-tracked vehicle. Assets are identified by a UUID and an optional human-readable key. Assets can be parent/child: a drone is a parent asset; a payload camera mounted on that drone is a child asset with parent_id pointing to the drone. The Argus map shows them together. Assets are either:
  • Connector-managed — registered automatically by a connector running on the Pi. The connector discovers the hardware, registers it, and keeps its feeds current.
  • Partner-managed — created via the API by an external system. You register the asset once and push GPS fixes whenever you have them. Useful for drones or vehicles with their own telemetry pipelines.

Assets →


Feeds

A feed is a named stream of data from an asset. Each feed has a category (position, power, detection, etc.) and pushes messages at whatever rate the connector produces them.
Asset typeExample feeds
Drone (MAVLink)gps, attitude, battery, sys_status, radio
Camera (Reolink)status, motion, ai_detection
Camera (ONVIF)status, motion
Partner assetgps
You can pull the latest message per feed via REST, or subscribe to live updates over WebSocket.

Feeds & Commands →


Commands

A command is an action dispatched to an asset — PTZ move, arm/disarm, change flight mode, reboot. Commands return a task that tracks execution: pendingrunningcompleted or failed. Each asset exposes the commands it supports via the List Commands endpoint. Commands include a JSON Schema describing the required payload, and a risk level (low, medium, high) that determines whether the Argus dashboard shows a confirmation dialog.
A link is a WAN connection attached to a kit. A kit may have several active simultaneously — Starlink for primary bandwidth, LTE as backup, a Silvus tactical radio for mesh. The API exposes per-link health: throughput, latency, signal quality, and monthly data usage.

Links API →