Connect Your Own Device

Connect any Linux or macOS device — an NVIDIA Jetson, a Raspberry Pi, an industrial gateway, even a spare laptop — to your EdgeGate workspace. Once connected, it appears on your dashboard with a live status badge and can run model benchmarks you dispatch with one click.

Time required: about 60 seconds. No firmware changes, no root access needed for the agent itself.

Before you start (2 things)

  1. A paid plan. API keys — which the device uses to authenticate — are available on paid plans. On the free plan the key-creation button will tell you to upgrade.
  2. Admin role in the workspace (if you created the workspace, you're the owner — that's enough).

Step 1 — Create an API key

In your workspace: Settings → API Keys → Create key. Name it after the device (e.g. jetson-lab-1) so you can revoke it independently later.

Copy the egk_... token now — it is shown exactly once.

Step 2 — Find your Workspace ID

It's in your browser's address bar on any workspace page:

https://edgegate.frozo.ai/workspace/<THIS-IS-YOUR-WORKSPACE-ID>

Step 3 — Run the agent on the device

pip install edgegate-runner

export EDGEGATE_TOKEN=egk_...                  # from Step 1
export EDGEGATE_WORKSPACE_ID=<workspace-uuid>  # from Step 2

edgegate-runner agent --vendor nvidia --silicon orin-nano-8gb --name my-jetson
  • --vendor is free-form: nvidia, qualcomm, intel, raspberry-pi, …
  • --name is what you'll see on the dashboard (defaults to the hostname).
  • Add --once to send a single heartbeat and exit — a good smoke test.

Within ~30 seconds the device appears under Devices in your workspace with a green "online" badge. The badge flips to offline automatically if the agent stops beating for ~90 seconds — no stale "online" lies.

Run your first benchmark

  1. Upload an ONNX model under Models (if you haven't already).
  2. On the Devices page, find your device card, pick the model in the dropdown, click Run Benchmark.
  3. The agent picks the job up on its next poll (≤30s), runs it, and the result — latency, memory, and which compute engine (CPU/GPU/NPU) ran each layer — appears on the card.

Your device can also be used as a pipeline target: in Set Up New Test, it appears under "Connected Devices (on-prem)" and can sit in the same test matrix as Qualcomm AI Hub cloud devices.

Keep it running (recommended)

Make the agent a service so it survives reboots:

# /etc/systemd/system/edgegate-agent.service
[Unit]
Description=EdgeGate device agent
After=network-online.target
Wants=network-online.target

[Service]
User=<your-user>
Environment=EDGEGATE_TOKEN=egk_...
Environment=EDGEGATE_WORKSPACE_ID=<workspace-uuid>
ExecStart=/usr/local/bin/edgegate-runner agent --vendor nvidia --name my-jetson
Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target
sudo systemctl enable --now edgegate-agent

Troubleshooting

SymptomLikely causeFix
heartbeat_auth_failed in agent outputWrong/revoked token, or wrong workspace IDRe-check both env vars; create a fresh key if unsure
Device never appearsAgent can't reach the internet, or env vars not exported in the same shellcurl https://edgegateapi.frozo.ai/health from the device should print {"status":"ok"}
Device shows offlineAgent process stopped (reboot, crash, network)systemctl status edgegate-agent / restart it — the badge recovers on the next beat
Benchmark stuck on "queued"Agent not polling (offline device)Bring the device online; jobs that sit unclaimed expire to error after 30 min
Benchmark returns an errorModel too large for the device, or unsupported opsStart with a small ONNX model (e.g. MobileNet-class); check the device has enough free RAM

What leaves the device?

Only benchmark results (timings, memory, layer placement) and heartbeat metadata (hostname, chip, OS). Model files are downloaded to the device for the benchmark and deleted afterward. Raw model outputs never leave your box in Behavioral Gate runs — only score summaries.

Questions? The full API is documented in the Integration guide.