Skip to main content

Lesson

SDK overview

When to reach for Cyberwave SDKs and how to start experimenting.

The Cyberwave SDKs are the primary way to build Edge Agentsโ€”the software that runs on your robot and connects it to the platform. They wrap our low-level APIs with ergonomic, language-specific abstractions.

Supported Languages

  • Python SDK (cyberwave-python):

    • Best for: Prototyping, ML/AI integration, and general-purpose robotics.
    • Features: Includes a high-level Twin API, local development helpers, and integration with popular libraries like numpy and opencv.
    • Structure: Combines auto-generated REST clients with hand-crafted MQTT and utility layers.
  • C++ SDK (cyberwave-cpp):

    • Best for: Production deployment, resource-constrained devices, and ROS2 integration.
    • Features: High-performance async I/O, strict typing, and a dedicated ROS2 Bridge for seamless mapping of ROS topics to Cyberwave assets.

Core Capabilities

  • Authentication: Secure, token-based handshake with the platform.
  • Telemetry Loop: Automatic background buffering and publishing of device state (JSON/Binary).
  • Command Handling: Callbacks for handling incoming mission instructions from the cloud.
  • Video Streaming: Utilities to capture frames (e.g., from cv2) and stream them via WebRTC.

Quickstart

from cyberwave import Cyberwave

# Initialize the client
cw = Cyberwave(token="your_api_token")

# Connect to a Twin
robot = cw.twin("my-robot-id")

# Publish Telemetry
robot.publish_state({"battery": 98, "status": "idle"})

More tracks

Keep exploring Cyberwave Learn

Every track is defined in markdown so adding new lessons stays fast and versioned.