docs/
435 pages · Updated July 19, 2026
Pages
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- Configure a Fake Generic Service | Generic
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- viam-raspberry-leaf-A4
- Phase 5: Perception-guided picking | Pick-and-Place Workshop
- Phase 2: Configure resources | Pick-and-Place Workshop
- Phase 3: Static positions and obstacles | Pick-and-Place Workshop
- Phase 6: Inline module | Pick-and-Place Workshop
- 404 Page not found | Viam Documentation
- Phase 1: Platform mental model | Pick-and-Place Workshop
- Phase 4: Control the robot from Python | Pick-and-Place Workshop
- Vision-Guided Pick-and-Place with the xArm6 | Viam Documentation
- All Tutorials | Viam Documentation
- Wrap-up and next steps | Pick-and-Place Workshop
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- Glossary | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- Set up an ESP32 | Device setup
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- Common errors and known issues | Viam Documentation
- Micro-RDK Troubleshooting | Set up an ESP32
- Frame system reference | Services
- DMC4000 | Motor Component
- Base remote control service | Services
- gpiostepper | Motor Component
- gpio | Motor Component
- Component APIs overview | Component APIs
- Encoded Motors | Motor Component
- gpio | Micro-RDK
- Generic service | Services
- webcam | Camera Component
- Discovery service | Services
- merged | Movement Sensor Component
- gpio | Servo Component
- Device setup guides | Viam Documentation
- fake | Motor Component
- gpio | Micro-RDK
- wheeled-odometry | Movement Sensor Component
- Configure workspace obstacles | Obstacles
- gpio | Input Controller Component
- Services reference | Viam Documentation
- fake | Board Component
- Vision service configuration | Services
- fake | Switch Component
- esp32 | Micro-RDK
- transform | Camera Component
- Navigation service | Services
- Switch Component | Built-in components
- Servo Component | Built-in components
- ultrasonic | Micro-RDK
- accel-adxl345 | Micro-RDK
- gyro-mpu6050 | Micro-RDK
- fake | Servo Component
- Micro-RDK servo models | Servo Component
- Sensor Component | Built-in components
- gamepad | Input Controller Component
- fake | Sensor Component
- fake | Gripper Component
- Movement Sensor Component | Built-in components
- fake | Power Sensor Component
- Power Sensor Component | Built-in components
- Micro-RDK sensor models | Sensor Component
- Motor Component | Built-in components
- sensor-controlled | Base Component
- mux | Input Controller Component
- White-labeled billing | Viam Documentation
- single-axis | Gantry Component
- fake | Movement Sensor Component
- incremental | Encoder Component
- Micro-RDK movement sensor models | Movement Sensor Component
- webgamepad | Input Controller Component
- fake | Input Controller Component
- Micro-RDK motor models | Motor Component
- single | Micro-RDK
- Input Controller Component | Built-in components
- incremental | Micro-RDK
- single | Encoder Component
- Generic Component | Built-in components
- Encoder Component | Built-in components
- Gripper Component | Built-in components
- Gantry Component | Built-in components
- fake | Gantry Component
- image_file | Camera Component
- fake | Generic Component
- Manage API keys | Viam Documentation
- Camera Component | Built-in components
- wheeled | Base Component
- ffmpeg | Camera Component
- Micro-RDK encoder models | Encoder Component
- fake | Encoder Component
- Kinematics | Reference
- fake | Micro-RDK
- fake | Camera Component
- Service APIs overview | Service APIs
- Set up custom push notifications | Viam Documentation
- Set up alerts | Viam Documentation
- Micro-RDK camera models | Camera Component
- fake | Arm Component
- two_wheeled_base | Micro-RDK
- Board Component | Built-in components
- Write control code with Viam SDKs | Viam Documentation
- Button Component | Built-in components
- Frame system API reference | Reference
- Base Component | Built-in components
- Organizations, locations, and access | Viam Documentation
- Micro-RDK board models | Board Component
- Troubleshoot problems | Viam Documentation
- Viam's Client APIs | Viam Documentation
- Pick an object | Move an arm
- Arm and end effector frames | Frame system
- Micro-RDK base models | Base Component
- fake | Base Component
- Arm Component | Built-in components
- Frame system | Frame system
- System settings | Viam Documentation
- Manage access with role-based access control | Viam Documentation
- Data dashboards | Data dashboards
- Reuse configuration with fragments | Viam Documentation
- Provision devices | Viam Documentation
- Billing and payment | Viam Documentation
- Relax a goal with a pose cloud | Move an arm
- Move an arm by setting joint positions | Move an arm
- Move an arm to a target pose | Move an arm
- How motion planning works | Viam Documentation
- Orientation vector reference | Reference
- Calibrate a camera for motion planning | Frame system
- Motion CLI commands reference | Reference
- Manage software versions and rollouts | Viam Documentation
- Move an arm through multiple waypoints | Move an arm
- Choose data region | Viam Documentation
- Allow specific frames to collide | Obstacles
- Verify a motion plan without executing it | Viam Documentation
- Monitor and operate | Viam Documentation
- Schedule automated jobs | Viam Documentation
- Custom dashboard queries | Data dashboards
- Debug motion with the Viam CLI | Viam Documentation
- Default control interface | Viam Documentation
- Quickstart: move your first arm | Quickstarts
- Attach and detach geometries at runtime | Obstacles
- Create dashboards | Data dashboards
- Fleet deployment | Viam Documentation
- End-user device setup | Viam Documentation
- Move an arm with motion constraints | Move an arm
- Teleop workspaces | Viam Documentation
- Place an object | Move an arm
- Deploy software to machines | Viam Documentation
- Arm with gripper and wrist camera | Frame system
- Configure motion constraints | Move an arm
- Monitor machine status | Viam Documentation
- Motion service configuration | Reference
- Deploy ML models across your fleet | Viam Documentation
- 3D scene tab | Viam Documentation
- Motion service API | Reference
- Obstacles | Obstacles
- Mobile base with sensors | Frame system
- Add custom metadata | Viam Documentation
- Change a machine's network | Viam Documentation
- Motion planning algorithms | Reference
- Move a gantry | Viam Documentation
- Plan collision-free paths | Obstacles
- Mobile base with arm | Frame system
- Anatomy of a module | Viam Documentation
- Quickstart: configure a frame system | Quickstarts
- Edit frames visually | 3D scene tab
- Move an arm | Move an arm
- Debug a motion plan | 3D scene tab
- Arm with a fixed external camera | Frame system
- Calibrate frame offsets | 3D scene tab
- Motion planning reference | Viam Documentation
- Verify obstacles | 3D scene tab
- viam-raspberry-leaf-8.5x11
- Verify point cloud alignment | 3D scene tab
- Motion planning | Viam Documentation
- 404 Page not found | Viam Documentation
- Build and deploy modules | Viam Documentation
- Quickstart tutorials | Viam Documentation
- Deploy a model to a machine | Viam Documentation
- Viam CLI overview | Viam Documentation
- Data pipelines with the CLI | Viam Documentation
- Manage data with the CLI | Viam Documentation
- Configure machines with the CLI | Viam Documentation
- Manage data | Viam Documentation
- Train ML models | Viam Documentation
- Automate with scripts | Viam Documentation
- Deploy and maintain ML models | Viam Documentation
- Datasets and training with the CLI | Viam Documentation
- Build and deploy modules with the CLI | Viam Documentation
- Tag captured data | Viam Documentation
- 3D vision | Viam Documentation
- Object detection | Viam Documentation
- Delete captured data | Viam Documentation
- Administer your organization with the CLI | Viam Documentation
- 404 Page not found | Viam Documentation
- Set up machines with the CLI | Viam Documentation
- Add a component | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- What is Viam? | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- 404 Page not found | Viam Documentation
- Tutorials | Viam Documentation
- 404 Page not found | Viam Documentation
- Manage your fleet with the CLI | Viam Documentation
- Motion service reference | Services
- multi-axis | Gantry Component
- Configure your Viam Rover with a fragment | Viam Rover
- Set up your Rover 2 with a Jetson | Viam Rover
- Viam Rover | Viam Rover
- Rent a Viam Rover | Viam Rover
- Unbox and set up your Viam Rover 1 | Viam Rover
- Unbox and set up your Viam Rover 2 | Viam Rover
- Navigation service API | Service APIs
- Machine-to-machine communication: end-to-end flow | Viam Documentation
- CLI reference | Viam Documentation
- App tutorials | App tutorials
- Advanced module patterns | Viam Documentation
- Reference | Viam Documentation
- Motion constraints reference | Motion
- Add software capabilities from the registry | Viam Documentation
- viam-agent reference | Viam Documentation
- viam-server reference | Viam Documentation
- viam-agent and viam-server | Viam Documentation
- Add a remote part | Multi-machine setups
- Add a sub-part | Multi-machine setups
- Frames across machines | Multi-machine setups
- Multi-machine setups | Multi-machine setups
- ML model service API | Service APIs
- Vision service API | Service APIs
- Configure a color_detector | Vision
- Configure detections-to-segments | Vision
- Configure an mlmodel detector or classifier | Vision
- Segment 3D objects from point clouds | 3D vision
- Configure a vision pipeline | Viam Documentation
- What's in the Viam registry for vision | Deploy and maintain models
- Run batch inference on stored data | Deploy and maintain models
- Deploy a custom ML model | Deploy and maintain models
- Deploy an ML model from the registry | Deploy and maintain models
- Retrain a model | Deploy and maintain models
- Roll out a new model to a fleet | Deploy and maintain models
- How a vision service works | Viam Documentation
- Act on detections | Object detection
- Alert on detections | Object detection
- Detect objects by color | Object detection
- Tune detection quality | Object detection
- Computer vision | Viam Documentation
- Build a Python monitoring service | App tutorials
- Viam hosting | Viam hosting
- C++ setup | App scaffolding
- Go setup | App scaffolding
- App scaffolding | App scaffolding
- Python setup | App scaffolding
- Control components | Common tasks
- Build a single-machine dashboard | App tutorials
- Build a multi-machine fleet dashboard | App tutorials
- Build a Flutter app with widgets | App tutorials
- Authenticating Viam client apps | Concepts
- How Viam client apps connect | Concepts
- Deploy a Viam application | Viam hosting
- Viam Applications hosting platform reference | Viam hosting
- meta.json applications schema | Viam hosting
- Build apps | Viam Documentation
- Flutter setup | App scaffolding
- Node.js setup | App scaffolding
- React Native setup | App scaffolding
- TypeScript setup | App scaffolding
- Connect to the Viam cloud | Common tasks
- Connect to a machine | Common tasks
- Handle disconnection and reconnection | Common tasks
- Query captured data | Common tasks
- Stream video | Common tasks
- Test against a local machine | Common tasks
- Create a data pipeline | Data pipelines
- Pipeline examples and MQL tips | Data pipelines
- Manage data pipelines | Data pipelines
- Data pipelines | Data pipelines
- Query pipeline results | Data pipelines
- Data pipelines reference | Data pipelines
- Capture, sync, and query data tutorial | Viam Documentation
- Query data from code | Viam Documentation
- Audio in API | Component APIs
- Audio out API | Component APIs
- Access platform APIs from within a module | Viam Documentation
- Trigger on data events | Viam Documentation
- World state store API | Service APIs
- Trigger configuration | Viam Documentation
- Implement or use DoCommand | SDKs
- Add a base | Add a component
- Add a board | Add a component
- Add a button | Add a component
- Add a gantry | Add a component
- Add a generic component | Add a component
- Add a gripper | Add a component
- Add a motor | Add a component
- Add a movement sensor | Add a component
- Add a power sensor | Add a component
- Add a sensor | Add a component
- Add a servo | Add a component
- Add a switch | Add a component
- Add an encoder | Add a component
- Add an input controller | Add a component
- Configure hardware components | Viam Documentation
- Fragments | Viam Documentation
- Machine configuration | Viam Documentation
- Write a logic module | Viam Documentation
- Module developer reference | Viam Documentation
- Switch API | Component APIs
- Discovery service API | Service APIs
- Capture data from multi-part machines | Capture and sync
- Data management reference | Viam Documentation
- Captured data schema | Viam Documentation
- Deploy a module | Viam Documentation
- Write a driver module | Viam Documentation
- Write an inline module | Viam Documentation
- Start data capture | Capture and sync
- Stop or disable data capture | Capture and sync
- Filter at the edge | Viam Documentation
- Hot data store | Viam Documentation
- Query data in the Viam app | Viam Documentation
- Sync data to your database | Viam Documentation
- Visualize data | Viam Documentation
- Add a camera | Add a component
- Set up your first machine | Viam Documentation
- Annotate images | Viam Documentation
- Automate annotation | Viam Documentation
- Create a dataset | Viam Documentation
- Train a model | Viam Documentation
- Gazebo Simulation Setup | Viam Documentation
- Overview | Viam Documentation
- Part 1: Vision Pipeline | Viam Documentation
- Part 2: Data Capture | Viam Documentation
- Part 3: Control Logic | Viam Documentation
- Part 4: Deploy a Module | Viam Documentation
- Part 5: Productize | Viam Documentation
- Measure depth | 3D vision
- Classify images | Viam Documentation
- Detect objects | Object detection
- Track objects across frames | Object detection
- Authenticate end users with OAuth | Viam Documentation
- Create modules for ESP32 microcontrollers | Set up an ESP32
- Conditional sync | Capture and sync
- Upload external data | Capture and sync
- Custom training scripts | Viam Documentation
- Export data | Viam Documentation
- Motor API | Component APIs
- Manage your fleet with Viam's fleet management API | APIs
- Upload and retrieve data with Viam's data client API | APIs
- Work with ML training jobs with Viam's ML training API | APIs
- Retrieve billing information with Viam's billing client API | APIs
- esp32-camera | Micro-RDK
- Control a motor in 2 minutes | Tutorial
- Update and manage modules you created | Viam Documentation
- Monitor Air Quality with a Fleet of Sensors | Tutorial
- Monitor Job Site Helmet Usage with Computer Vision | Tutorial
- Build a Flutter App that Integrates with Viam | Tutorial
- A security system based on face identification | Tutorial
- Pet Photographer: Create a Data Filtering Module | Tutorial
- Add constraints and transforms to a motion plan | Tutorial
- Build a Robotic Claw Game with a Raspberry Pi | Tutorial
- Control a Robot Dog with a Custom Viam Base Component | Tutorial
- How to Create a Mouse Mover Using a Servo | Tutorial
- A Person Detection Security Robot That Sends You Photos | Tutorial
- Plant Watering Machine with a Raspberry Pi | Tutorial
- Plan motion with an arm and gripper | Tutorial
- Integrate Viam with ChatGPT to Create a Companion Robot | Tutorial
- Create a Modular Resource to Control a Rover like Intermode | Tutorial
- Drive a rover in a square in 2 minutes | Viam Rover
- Movement sensor API | Component APIs
- Power sensor API | Component APIs
- Sensor API | Component APIs
- Servo API | Component APIs
- Make an LED Blink With Buttons And With Code | Tutorial
- Follow a Colored Object with a Rover (like SCUTTLE) | Tutorial
- Drive a Rover (like SCUTTLE or Yahboom) Using a Gamepad | Tutorial
- Configure a Rover like Yahboom or SCUTTLE | Tutorial
- Role-based access control | Viam Documentation
- Arm API | Component APIs
- Base API | Component APIs
- Board API | Component APIs
- Camera API | Component APIs
- Encoder API | Component APIs
- Gantry API | Component APIs
- Control your generic component with the generic API | Component APIs
- Control your gripper with the gripper API | Component APIs
- Input controller API | Component APIs
- Manage machines with Viam's machine management API | APIs
- Base remote control service API | Service APIs
- Data management service API | Service APIs
- Generic service API | Service APIs
- Motion service API | Service APIs
- Session management with Viam's client SDKs | APIs
- Control package | Viam Documentation
- BeagleBone AI-64 Setup Guide | Device setup
- NVIDIA Jetson AGX Orin Setup Guide | Device setup
- NVIDIA Jetson Nano and Orin Nano Setup Guide | Device setup
- Odroid C4 Setup Guide | Device setup
- Orange Pi 3 LTS Setup Guide | Device setup
- Orange Pi Zero2 Setup Guide | Device setup
- Pumpkin Board Setup Guide | Device setup
- Raspberry Pi Setup Guide | Device setup
- SK-TDA4VM Setup Guide | Device setup
- Client sessions and machine network connectivity | SDKs
- Install the Python SDK | Python
- Using extra parameters with Viam's SDKs | SDKs