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.11a2

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.11a2
File
zelos_sdk-0.0.11a2-cp310-abi3-win_amd64.whl CPython 3.10 abi3 Windows x86-64 Details
zelos_sdk-0.0.11a2-cp310-abi3-manylinux_2_28_x86_64.whl CPython 3.10 abi3 Linux glibc 2.28+ x86-64 Details
zelos_sdk-0.0.11a2-cp310-abi3-manylinux_2_28_aarch64.whl CPython 3.10 abi3 Linux glibc 2.28+ ARM64 Details
zelos_sdk-0.0.11a2-cp310-abi3-macosx_11_0_arm64.whl CPython 3.10 abi3 macOS 11.0+ ARM64 Details

Total release size: 161.1 MB

Release files / zelos_sdk-0.0.11a2-cp310-abi3-win_amd64.whl

Download URL zelos_sdk-0.0.11a2-cp310-abi3-win_amd64.whl
Size 36.0 MB
Tags CPython 3.10 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
fcd5053dc8ab23577c4e195cf61d8ef6d7014ac9d947328cc5e5cf738b97ca87
BLAKE2b-256 checksum
How to use checksums
775ebb0cc8aadfc5424a62f18d1370b49542a532fa6e7ed59784fe67426c4462
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.7

Release files / zelos_sdk-0.0.11a2-cp310-abi3-manylinux_2_28_x86_64.whl

Download URL zelos_sdk-0.0.11a2-cp310-abi3-manylinux_2_28_x86_64.whl
Size 45.4 MB
Tags CPython 3.10 Linux glibc 2.28+ x86-64 abi3
SHA-256 checksum
How to use checksums
5dfa15758b6b075781a5f974956c9d5e7c72bec56644f286ad556107cb2c4506
BLAKE2b-256 checksum
How to use checksums
7a85c5d5c98fafc4c68ce565b7cc626c55584b246a4a9e6aa517f93603e18e5b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.7

Release files / zelos_sdk-0.0.11a2-cp310-abi3-manylinux_2_28_aarch64.whl

Download URL zelos_sdk-0.0.11a2-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
395975b8c4d263ad7f80071d0b6a42c73d964f02cc0b02fcb77524181446477d
BLAKE2b-256 checksum
How to use checksums
596ce9bea347b5210f959f26d24bf61a9b4adea018d2aa3323dc05c00be36639
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.7

Release files / zelos_sdk-0.0.11a2-cp310-abi3-macosx_11_0_arm64.whl

Download URL zelos_sdk-0.0.11a2-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
5af74eb4a94ac8d216b8c37f87a0c7a3812de4d1e0d7cfc774e2d93a628073ba
BLAKE2b-256 checksum
How to use checksums
1f394bf178e938fff5437ba8fbc5d81027646fc9c07e77c87a5fd18ffdc987f6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.7
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