Elina MQTT Simulator (Beta)
Overview
Elina MQTT Simulator is a Cradlepoint NCOS SDK application that simulates a fleet of independent IoT devices — drones, UGVs, sensors, or any other MQTT-speaking device type — running directly on your CPE. Each simulated device holds its own genuine MQTT client session and publishes according to a configurable traffic pattern, letting you generate realistic, protocol-correct MQTT load from the exact point in the network where your real device fleet's traffic would originate.
Elina MQTT Simulator is purpose-built for validating network and RAN capacity under realistic IoT or robotics fleet density — a swarm of drones, a fleet of ground vehicles, an array of sensors — rather than a single synthetic bandwidth stream. It complements QoS Agent (which monitors baseline network quality) and Elina-TG (which generates general-purpose application traffic from a host or VM) by bringing genuine, per-device MQTT simulation onto the CPE itself.
Each simulated device is a real, standalone MQTT connection — this is not one traffic stream scaled up, but N genuinely separate sessions, each with its own connection lifecycle, keepalive behavior, and publish schedule.
Prerequisites
- A Cradlepoint NCOS device with SDK application support, enrolled in NetCloud Manager (NCM). Validated platforms: S700, E3000. R890, R980, and R2400 are planned targets, not yet hardware-validated.
- The
elina_mqpackage (.tar.gz), available from your LatenceTech representative. - An MQTT broker reachable from the device — a LatenceTech Reflector, an on-premises broker (Mosquitto, EMQX, HiveMQ, etc.), or a third-party MQTT service. Note its host, port, and whether it requires TLS.
Key features
- Protocol-correct MQTT, not an approximation — real CONNECT / PUBLISH / ACK traffic at QoS 0, 1, or 2, with QoS 2's full four-step handshake supported.
- MQTT v3.1.1 and v5, selectable per run.
- TLS, with server certificates resolved through NCOS's own Certificate Manager — no certificates bundled in the package.
- Last Will and Testament (LWT) per simulated device, so a broker sees a realistic "offline" status on an ungraceful disconnect.
- A growing, bundled device profile library — 12 profiles today, spanning civilian/IoT devices (drones, UGVs, connected vehicles, industrial sensors, quadruped and humanoid robots, smart cameras) and defense-representative devices (tactical UAV swarms, soldier wearables, reconnaissance sensors and UGVs, acoustic sensor nodes).
- Four publish-flow trigger types — steady-rate, wall-clock-aligned (synchronized across a whole fleet), bursty, and jittered — so a profile can represent event-like or randomized traffic, not just a metronome.
- Ready-made fleet templates (
default,iot,industrial,defense) for getting a realistic mixed fleet running without hand-writing a configuration. - Fully NCM-driven configuration — broker target, TLS, protocol version, fleet composition, and run duration are all settable through NetCloud Manager's own App Data fields, with no file push required for routine changes.
How it works
Given a fleet composition (how many devices of each type to simulate) and one or more device profiles (what each device type's MQTT traffic looks like), Elina MQTT Simulator:
- Builds one independent simulated device per unit in the fleet.
- Connects each device's own MQTT client session to your chosen broker, staggering connections slightly to avoid an artificial connection burst.
- Runs every device's configured publish flows on their own schedule — a device profile can combine, for example, high-frequency telemetry with lower-frequency status updates, each running independently.
- Reports live, aggregated fleet statistics — message counts, byte throughput, connection health — visible through the router's own logs and NetCloud Manager.
- Shuts down cleanly at the end of a configured test duration, disconnecting every device and reporting final statistics.
Download and install
- Obtain the package (
elina_mq_v<version>.tar.gz) from your LatenceTech representative, or download with:
wget https://api.latence.ca/software/elina_mq_v1.0.1_release.zip
- Upload via NetCloud Manager:
- In NCM, go to Apps & SDK for the target device or device group.
- Upload the package.
- Assign it to the device(s) or group you want to run it on.
- Leave the app stopped until you've set the App Data fields below — configuration is read once at startup, so it's simplest to configure first, then start.
Your first test run
- In NCM, open the device's SDK Application Data (App Data) for
elina_mqand set:
| Key | Example value |
|---|---|
LTI_broker_host |
your broker's hostname or IP |
LTI_broker_port |
1883 |
LTI_use_tls |
false |
LTI_duration_seconds |
60 |
- Leave the fleet composition fields (
LTI_fleet_config,LTI_template) unset for now — with nothing set, the app runs a small bundled default fleet, so you can confirm connectivity before choosing a real composition. - Start the application from NCM or the router's own admin interface.
- Watch the router's log (
log show -f -s elina_mq) for devices reportingconnected, followed by periodic fleet statistics, then a clean shutdown onceLTI_duration_secondselapses.
Once that works, pick a fleet template (fastest) or a custom LTI_fleet_config string to run a composition representative of your actual use case — see the User Guide below for both.
Using Elina MQTT Simulator with QoS Agent
Elina MQTT Simulator is designed to run alongside QoS Agent on the same CPE:
- QoS Agent continuously monitors baseline network quality (latency, loss, throughput) on the connection.
- Elina MQTT Simulator generates the IoT fleet's MQTT traffic load at the same time.
Running both together lets you correlate network quality metrics directly against a realistic, configurable IoT fleet load — rather than observing baseline network health and application load in isolation.
Recommended deployment: run QoS Agent and Elina MQTT Simulator together on a larger, more capable CPE model. Each application has its own CPU and memory footprint, and running both concurrently — alongside the router's own normal operation — uses meaningfully more of a platform's resources than either running alone. Contact your LatenceTech representative for guidance on matching CPE model to your intended combined-deployment scale.
Further documentation
This page covers the basics. For a real test campaign, see:
- User Guide — every App Data field, the full profile library, TLS/Certificate Manager setup, monitoring and troubleshooting, and platform capacity guidance.
- Profile library reference — flow-by-flow numbers, units, and sourcing notes for every bundled profile, civilian and defense.
- Fleet templates — the exact composition behind each bundled template (
default,iot,industrial,defense), as a starting point for your own.
Feedback on profiles, features, or platform behavior is always welcome — share it through your LatenceTech representative, or Customer Support.