Platform Overview¶
Zelos App¶
Zelos App is the central, interactive application designed to provide a seamless experience for visualizing, analyzing, and collaborating on data collected by the Zelos Agent. Whether you're debugging live systems, performing post-mortem analysis on recorded traces, or reviewing test results, Zelos App offers a powerful and intuitive interface.
Think of Zelos App as your window into the real-time and historical behavior of your systems. It connects directly to local or remote Zelos Agents for live data streams and loads detailed .trz
trace files for in-depth investigation, all within a customizable workspace environment.
Key Advantages¶
- Live Monitoring & Debugging Connect directly to Zelos Agents running on development machines, test benches, or edge devices for real-time insights with minimal latency.
- Powerful Trace Analysis
Load and explore rich
.trz
files containing time-synchronized data. Navigate complex scenarios with intuitive timeline controls. - Flexible Visualization Tools Choose from various panel types (Plots, Tables, Value Displays). Customize arrangements and save reusable layouts.
- Interactive Data Exploration Zoom, pan, and inspect high-performance plots with tooltips showing precise values and timestamps.
- Streamlined Workflow Integration Switch between live connections and trace files. Integrates directly with Zelos Test data for faster debugging.
Core Capabilities¶
Workspace¶
- Modes: Live Mode (connect via IP/hostname) or Trace Mode (load
.trz
files) - Tabs: Multiple tabs per workspace, each with its own panel layout
- Connections: Local or remote agents
Dynamic Panel System¶
- Plot Panel High-performance time-series visualization with multi-signal support, zoom/pan, and tooltips.
- Table Panel Structured view of recent messages and signal values. Supports filtering, sorting, and quick actions.
- Value Panel Monitors a single signal’s latest value—perfect for key metrics.
Interactive Timeline Control¶
- Drag markers to select exact time ranges.
- Pan by dragging the window.
- Pause/resume live data with custom window durations (e.g., “Last 30 seconds”).
Layout Management¶
- Save and load named Layouts.
- Share layouts across your organization.
Data Discovery & Export¶
- Searchable tree view of all signals (nested by source/message).
- Drag signals/messages onto panels.
- Export data to
.trz
, CSV, or JSON with timeline-based ranges.
Zelos Agent¶
Zelos Agent is a lightweight, high-performance component for development machines, test setups, and embedded Linux targets. It captures rich, high-frequency structured data and streams it in real time.
Think of Zelos Agent as your local data gateway.
Key Advantages¶
- Instant Local Insights Live data streams without latency.
- High-Performance & Minimal Footprint Written in Rust for low CPU/memory usage.
- Effortless Integration SDKs for Python, Rust, and more.
- Flexible Streaming Publishes data via gRPC to any number of clients.
Core Capabilities¶
- Centralized Collection: Receives telemetry via Zelos SDKs.
- In-Memory Buffering: Configurable cache for recent events.
- Real-Time Publication: Streams to authorized clients.
- Intelligent Filtering: Define filters by source/event type.
Python SDK Example¶
import zelos_sdk
# Initialize and name this data source
zelos_sdk.init("my_component_name")
# Log structured data
zelos_sdk.log("motor_controller", {
"rpm": 3250.5,
"torque_nm": 42.8,
"battery_voltage_v": 48.2,
"status": "running"
})
Zelos Test¶
Zelos Test integrates hardware interaction, automated test execution, and rich data capture. Built on pytest, it streams data to Zelos App for real-time visualization and rapid debugging.
Think of Zelos Test as the bridge between your test logic and real-world system behavior.
Key Advantages¶
- Unified Hardware Interaction Standardized links (CAN, Serial, VISA, BLE, UDS, gRPC) and intelligent codecs (CAN DBC, BLE GATT, etc.).
- Intuitive Test Authoring Write pytest tests with an object-oriented API and the Checker Plugin for time-aware assertions.
- Seamless Data Capture
The Trace Plugin logs signals, interactions, and assertions into
.trz
files. - CI/CD Integration
Station Config (
.toml
) files define repeatable hardware setups. - Actionable Reports Generate HTML test reports and analyze traces in Zelos App for root-cause analysis.
Example CAN Test Snippet¶
def test_device_state_change(can_bus, check):
"""Ensure device transitions to ACTIVE after command."""
# Verify initial state
check.that(can_bus.DUT_Status.current_state, '==', 'IDLE')
# Update state request command
can_bus.DUT_Command.state_request.set('ACTIVE')
# Check updated state within 1 second
check.that(
can_bus.DUT_Status.current_state,
'==',
'ACTIVE',
within_duration_s=1.0
)