Control & Motion

Logic that you write. Robots that respond.

Most robotics build time is spent making hardware respond at all. With Viam, declare your hardware in a JSON config, write control logic in Python, and see something move — no custom stack required.
Connect

Deploy hardware in minutes. Then control it from anywhere.

Define your components in a single config. Viam-server pulls the driver and exposes your hardware through a consistent API. No driver installation, no dependency management, and no standing next to the robot to test.
  • Consistent APIs for motors, arms, bases, and grippers across brands
  • Swap hardware via JSON config without changing code
  • Use pre-existing drivers in the Registry
  • Instantly teleoperate from the browser before writing code
Direct Control

Write control logic in the language you already know.

Stop wrestling with proprietary SDKs or low-level C++. Viam provides clean Python, Go, and TypeScript APIs that treat hardware (motors, servos, grippers, bases, arms) as high-level software objects.
  • Standardized SetRPM, GoTo, and Grab commands in a few lines
  • Move bases with MoveStraight or Spin without manual motor coordination
Motion planning

Tell it where to go. Not how to get there.

For complex tasks (arms avoiding obstacles, mobile robots navigating to GPS waypoints) the motion service handles the heavy lifting. Define your space. Viam calculates the path, avoids collisions, and manages the frame math.
  • Move arms and bases with a single command
  • Path routing that avoids obstacles, static or camera-detected
  • Frame math handled: you map the space, Viam does the geometry
  • Built-in support for SLAM-based maps and GPS coordinates
develop

Write code on your laptop. Run it on your robot.

Viam treats your hardware like cloud infrastructure. Iterate locally, deploy remotely, and see results on live hardware. No standing next to the robot required.
  • Secure connectivity through firewalls and NAT without VPNs
  • Stream live sensor telemetry and camera feeds to your IDE
  • Package logic as modules with built-in lifecycle management
See under the hood
Right arrow
case study

Built in 3 days. No fixed positions pre-programmed in.

Put a glass anywhere on the table. Two robotic arms, two cameras. One picks up the glass, the other pours. Just a JSON config, built-in vision, and control logic that does exactly what you'd write it to do.
Watch the wine pouring demo
Hardware

Change the config. Keep the code.

Viam is hardware-agnostic and runs on robot arms, cameras, sensors, motors, and boards across hundreds of manufacturers.
Explore the registry
Logos for Kuka, Yaskawa, Universal Robots, UFactory, RealSense, and Orbbec
Fleet

Scaling is a config change.

The control logic you write on day one scales to a fleet of hundreds. No rewrites.
See how fleet management works

Write the logic. Viam handles the rest.

Write the control logic that makes your product unique. Viam handles everything between your code and the hardware.