Skip to main content

What is the Cyberwave Python SDK?

The Cyberwave Python SDK provides a powerful, easy-to-use interface for controlling robots, running simulations, and managing digital twins programmatically. Perfect for automation, testing, and advanced robotics applications.

Robot Control

Direct robot manipulation

Simulation

Run automated simulations

Data Analytics

Collect and analyze data

Installation

Cyberwave is in Private BetaTo get started, sign up for our Private Beta and get a token!
Install the Cyberwave Python SDK using pip:
pip install cyberwave
Requirements:
  • Python 3.11 or higher
  • API token (generated from your Profile page after getting Private Beta access)

Quick Start Example

Make your robot go BRRRRRRR:
import cyberwave as cw

# Connect to your digital twin
robot = cw.twin("the-robot-studio/so101")

# Move the robot to a position
robot.move(x=1.0, y=0.0, z=0.5)
robot.rotate(yaw=90)

# Actuate the robot's joint to 30 degrees
robot.joints.set("1", 30)

Stream Video

Install the additional dependencies for camera streaming:
pip install cyberwave[camera]
Now you can stream real time video data from your robot or sensor:
from cyberwave import Cyberwave
import asyncio
import os

token = os.getenv("CYBERWAVE_TOKEN")

client = Cyberwave(
    token=token,
)

# Get or create a twin to stream to
twin_uuid = os.getenv("TWIN_UUID")

# Create camera streamer
streamer = client.video_stream(
    twin_uuid=twin_uuid,
    camera_id=0,  # Default camera (change if you have multiple cameras)
    fps=10,  # Frames per second, optional
)

try:
    await streamer.start()
    print("Stream is active. Press Ctrl+C to stop...")

    # Keep streaming until interrupted
    while True:
        await asyncio.sleep(1)

except KeyboardInterrupt:
    print("Stopping stream...")
except Exception as e:
    print(f"Error during streaming: {e}")
finally:
    await streamer.stop()
    client.disconnect()
    print("Stream stopped and resources cleaned up")

Authentication & Setup

Get your API token from the Cyberwave dashboard and configure authentication:
1

Generate Token

Go to Dashboard → Profile → API Tokens to generate your token
2

Set Environment Variable

Set your token as an environment variable:
export CYBERWAVE_API_TOKEN=your_token
3

Initialize Client

The SDK will automatically use the environment variable

Ready to Code?

Start building powerful robotics applications with the Cyberwave Python SDK. Explore our examples and documentation.