Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Zelos SDK

Zelos is the data platform for hardware systems. One platform to observe, control, test, and analyze your system in real time, from prototype to production.

Use the Zelos SDK to push data into the Zelos App, Zelos Agent or directly to Zelos Cloud.

Read data

connect() is the one import you need; zelos_sdk.agent re-exports the same names.

from zelos_sdk import connect

agent = connect("http://localhost:2300")
frame = agent.query("bus0/BMS_message/cells.*", start="-5m")
df = frame.ffill().short_names().to_pandas()

soc = frame.series("cell_0") / frame.series("cell_1")
agent.check.that("bus0/BMS_message/status.pack_current", "<", 100)

Install zelos-sdk[notebook] for the pandas conversions.

Example: Logging Random Data

Install uv and save the file below as zelos_random.py and run uv run zelos_random.py to start streaming data live.

#!/usr/bin/env -S uv run --script
# /// script
# requires-python = ">=3.10"
# dependencies = [ "zelos-sdk" ]
# ///
import random
import time

import zelos_sdk

zelos_sdk.init()

src = zelos_sdk.TraceSource("example_source")
while True:
    src.log("example/message", {"value": random.randint(0, 10)})
    time.sleep(0.01)

Example: Logging Thermal Zones on Linux

Linux supports reading temperature sensors via sysfs. On a linux system, install uv and save the file below as temp_linux.py and run uv run temp_linux.py to start streaming data live.

#!/usr/bin/env -S uv run --script
# /// script
# requires-python = ">=3.10"
# dependencies = [ "zelos-sdk" ]
# ///
from pathlib import Path
import time

import zelos_sdk

zelos_sdk.init()

# Find all of our thermal zones from sysfs
thermal_zones = list(Path("/sys/class/thermal").glob("thermal_zone*"))

# Once per second, read the zone info and log it
src = zelos_sdk.TraceSource("linux_thermal")
while True:
    for zone_path in thermal_zones:
        # Read the zone info from sysfs
        zone_type = (zone_path / "type").read_text().strip()
        zone_temp_c = int((zone_path / "temp").read_text().strip()) / 1000.0

        # Log to the zelos sdk
        src.log(zone_path.name, {"type": zone_type, "temp_c": zone_temp_c})

    time.sleep(1)

Release files for zelos-sdk 0.0.12a1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for zelos-sdk 0.0.12a1
File
zelos_sdk-0.0.12a1-cp310-abi3-win_amd64.whl CPython 3.10 abi3 Windows x86-64 Details
zelos_sdk-0.0.12a1-cp310-abi3-manylinux_2_28_x86_64.whl CPython 3.10 abi3 Linux glibc 2.28+ x86-64 Details
zelos_sdk-0.0.12a1-cp310-abi3-manylinux_2_28_aarch64.whl CPython 3.10 abi3 Linux glibc 2.28+ ARM64 Details
zelos_sdk-0.0.12a1-cp310-abi3-macosx_11_0_arm64.whl CPython 3.10 abi3 macOS 11.0+ ARM64 Details

Total release size: 161.3 MB

Release files / zelos_sdk-0.0.12a1-cp310-abi3-win_amd64.whl

Download URL zelos_sdk-0.0.12a1-cp310-abi3-win_amd64.whl
Size 36.0 MB
Tags CPython 3.10 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
96bb08b18e7f7075eac3a0e78406b46b41a404a1920f7d6010071443128099e3
BLAKE2b-256 checksum
How to use checksums
2d3d0a84f47b3e430335ceca746b9c248e346f2f74b49eb0c958225ddf18dba6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release files / zelos_sdk-0.0.12a1-cp310-abi3-manylinux_2_28_x86_64.whl

Download URL zelos_sdk-0.0.12a1-cp310-abi3-manylinux_2_28_x86_64.whl
Size 45.5 MB
Tags CPython 3.10 Linux glibc 2.28+ x86-64 abi3
SHA-256 checksum
How to use checksums
a81cd7edb43e03ee5f23afaaa497b9fa6c5cb11113cd9e263c9723b1f1ac5c58
BLAKE2b-256 checksum
How to use checksums
540929caab738b739775ad7d08dcd78d4eb7b1aa0b170852dc6e8076a9ddcab4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release files / zelos_sdk-0.0.12a1-cp310-abi3-manylinux_2_28_aarch64.whl

Download URL zelos_sdk-0.0.12a1-cp310-abi3-manylinux_2_28_aarch64.whl
Size 46.0 MB
Tags CPython 3.10 Linux glibc 2.28+ ARM64 abi3
SHA-256 checksum
How to use checksums
23d4649d50cdf21bfa89066463acb85c18f5b74c96ff294832d3812e600a1f15
BLAKE2b-256 checksum
How to use checksums
54f7870c60d18f491571e6ed4f24db271205c56258bc456a364e445afebce89d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release files / zelos_sdk-0.0.12a1-cp310-abi3-macosx_11_0_arm64.whl

Download URL zelos_sdk-0.0.12a1-cp310-abi3-macosx_11_0_arm64.whl
Size 33.7 MB
Tags CPython 3.10 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
906c65d9b5fcf75eeae83bae64448a58a5775f4e74907b6132ac338153c3e2a2
BLAKE2b-256 checksum
How to use checksums
c670f435f3dc3d2f4e667eb6b8c9c2bc9b6d3c2c4b7ad2882128a7dd72b43849
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page