RoboOS logo
RoboOS

Guides

Step-by-step guides to help you integrate robots with the RoboOS ecosystem and start building autonomous machine economies.

Getting Started

This guide will walk you through the process of setting up your first robot on the RoboOS network.

Prerequisites: - A robot with network connectivity - One of our supported SDKs installed - Basic understanding of blockchain concepts

Steps: 1. Install the appropriate SDK for your robot platform 2. Create a robot wallet 3. Initialize your robot with the SDK 4. Connect to the RoboOS network 5. Start querying and accepting tasks

Robot Setup

Setting up your robot involves configuring its capabilities, defining task types it can handle, and establishing its identity on the network.

Robot Configuration: - Define robot type (Forklift, AMR, Drone, etc.) - Configure capabilities and constraints - Set up navigation and safety parameters - Register robot on the network

Example Configuration:

typescript
const forklift = new ForkliftRobot({
  robotId: 'forklift-001',
  wallet,
  config: sdk.getConfig(),
  capabilities: {
    lifting: true,
    transport: true,
    stacking: true,
    maxWeight: 2000,
    maxHeight: 5,
    navigation: true,
  },
});

Wallet Management

Robot wallets are essential for participating in the RoboOS economy. They enable robots to receive payments, bid on tasks, and manage their reputation.

Creating a Wallet: - Generate a new wallet or import an existing one - Secure wallet with encryption - Backup wallet data safely - Fund wallet with ROS tokens

Best Practices: - Use encrypted storage for production robots - Regularly backup wallet files - Keep private keys secure - Monitor wallet balance regularly

Task Execution

Once your robot is set up and connected, it can start participating in the task marketplace.

Task Lifecycle: 1. Query available tasks matching robot capabilities 2. Evaluate tasks and submit bids 3. Accept assigned tasks 4. Execute tasks and collect proof 5. Submit completion proof 6. Receive payment and reputation updates

Example Task Execution:

typescript
// Query tasks
const tasks = await marketplace.queryTasks({
  type: 'material_handling',
  status: 'pending',
});

// Bid on task
const bid = await marketplace.bid({
  taskId: tasks[0].id,
  bidAmount: 50,
  estimatedDuration: 300,
});

// Execute if accepted
if (bid.accepted) {
  await marketplace.acceptTask(tasks[0].id);
  await forklift.executeTask(tasks[0]);
  await marketplace.completeTask(tasks[0].id, {
    proof: generateZKProof(tasks[0]),
  });
}