Skip to main content

Module Presence

ArmorLink automatically tracks whether paired modules are currently online or offline.

Unlike many ESP-NOW frameworks, ArmorLink does not require dedicated heartbeat packets.

How Presence Detection Works

Whenever a module communicates with the Gateway, ArmorLink updates its internal "last seen" timestamp.

Module sends packet
|
v
Gateway updates Last Seen
|
v
Timeout exceeded?
No -> Online
Yes -> Offline

Any valid communication updates the module's presence information.

Examples:

  • Commands
  • Configuration requests
  • Telemetry updates
  • Log messages
  • Pairing traffic

No Heartbeats Required

ArmorLink uses activity-based presence detection.

This minimizes network traffic and reduces power consumption while still allowing reliable online/offline detection.

Timeout Configuration

Presence behavior can be configured through ArmorLinkOptions.

ArmorLinkOptions options;

options.modulePresenceCheckIntervalMs = 300000;
options.moduleTimeoutMs = 900000;

modulePresenceCheckIntervalMs

Defines how often the Gateway checks module status.

moduleTimeoutMs

Defines how long a module may remain silent before being considered offline.

Online and Offline State

A module is considered online if communication has been observed within the configured timeout window.

A module becomes offline automatically once the timeout expires.

Gateway Responsibilities

Presence detection is performed by the Gateway.

Regular modules do not need to implement heartbeat logic or timeout tracking.

App Integration

The ArmorLink App can display module availability information based on Gateway presence data.

This allows users to quickly identify disconnected modules.

Summary

ArmorLink provides automatic module presence detection.

Features include:

  • No heartbeat packets required
  • Activity-based detection
  • Automatic online/offline state tracking
  • Configurable timeout intervals
  • Gateway-managed monitoring