Algol - Edge Platform¶
Algol is an embedded edge platform that runs on field-deployed devices - for example the RET (Rail Edge Telemetry) and RAR (Robust Automotive Router) series. What a given device does depends on its configuration and hardware capability.
What it does¶
Depending on configuration and hardware, a device can provide:
- Measurement - read sensor data (GPS, IMU, ADC, and other sources); evaluate trigger rules against live telemetry, per-batch statistics, or events; open and extend measurement windows; record columnar parquet files; export recordings to S3 or a removable medium; forward telemetry to the cloud
- Gateway - host networking (ethernet, WLAN, bridge, GSM/mobile data, DNS), optional LoRaWAN, and cloud connectivity
- Remote access - a managed SiteManager for operator access to the device
Triggers can start or extend measurements, send commands to components, publish events, or update configuration at runtime.
Key concepts at a glance¶
| Concept | Short description |
|---|---|
| Component | Every addressable entity: moduleId.componentName.componentId |
| Data Channel | A named bundle of columns from one data source (e.g. gps.channel.position) |
| Measurement | A time-bounded recording window, with a start and a deadline |
| Trigger | A rule (match + action) that opens/extends measurements or sends commands |
| Flow | Coordinates one measurement at a time for a set of channels |
See Terminology for the full reference, Messaging for NATS subjects, Configuration for config types, and Events for the event catalog.
Modules¶
Algol is a multi-process system. Each module is an independent process communicating over NATS. The main modules are:
| Module | Role |
|---|---|
nats |
Central NATS broker - all IPC goes through here |
configurer |
Persists configuration to disk; serves startup configs on reboot |
trigger |
Evaluates stream expressions and fires actions |
flower |
Coordinates measurement windows across sinks |
board-controller |
Talks to the on-board MCU over Modbus |
gps |
GPS data source -> NATS data channels |
gate |
Forwards telemetry to a cloud NATS endpoint |
recorder |
Writes Parquet recordings, owns the catalog, exports to S3 or a removable medium |
secomea |
Manages the Secomea SiteManager for remote access |
sys |
Network, GSM, DNS, mounts, LEDs, host scripts |
See Modules for details on each.
Deployment¶
Algol runs on TorizonOS inside Docker containers. See Deployment for build and deploy instructions.