overview

The Viam Platform

Build Your Robot

Hardware

Use any hardware you want.

  • Everything in Viam is designed to be modular
  • Drivers for many popular pieces of hardware are built in
  • Easy to write and publish drivers for any other hardware

Attach hardware to any reasonable computer.

  • Raspberry pi, jetson, etc…
  • Running any version of linux from the last ~ 6 years
  • Micro-rdk to run on esp32 and more microprocessors coming soon, e.g. stm32

Install Viam in less than a minute with 2 simple lines to copy.

Configure hardware easily in the UI.

  • Component examples: arms, gantries, motors, sensors, gps, cameras

Anyone can immediately start testing in the UI, from anywhere.

  • Move a motor
  • See the cameras
  • Make sure the hardware functions and works as designed

Software

As soon as hardware connects, see data in real time and touch buttons to move actuatable components and see what hardware can do; from across the room or across the country

Immediately write software against APIs to bring hardware to life.

Swap hardware components without changing code at all

  • e.g. arm for arm or motor for motor, etc...

Higher level services all have built in versions, which can be swapped out for other implementations easily.

  • E.g slam, computer vision, motion planning, etc…
  • Implementations can be open source, commercial, or custom

Debug easily, while in development or in the field

  • Configuration, history, and logging are all in the cloud and readily accessible from anywhere
  • Remotely control any component to test and isolate issues
  • See all data in real time 
  • SSH access to any robot if needed

All of Viam is Composable

Use all of Viam, or just the pieces you need right now.

Start a brand new project or augment your current system to move faster

Examples

  • Start using data management to get data from your existing robots into the cloud
  • Use fleet management to manage and deploy your code

Built in Fleet Management so you can manage and deploy your fleet

  • See the status of any robot
  • Debug and connect to any robot
  • Get new logs
  • Deploy new versions of Viam, your code, or any other content to one, any part, or all of your fleet

Capture data from robots and sync to the cloud

  • Any sensor or camera
  • At whatever frequency you want
  • Data is stored locally and synced when bandwidth is available
  • In the cloud have full access, use apis to access, use for insurance, analytics or ML

Bring AI to life in the physical world via ML pipelines

  • Once data is synced to the cloud, organize and label it easily
  • Use built in model building services, or bring your own, to train your models with your data
  • Deploy models to robots, one at a time or to any subset, to test and rapidly iterate

Security and privacy built in

  • Authentication and permissioning built in
  • Data encrypted in transit with different certificates per location

Cloud module registry (coming soon)

Write a plugin for any component in Viam and publish to our cloud.

Users can then deploy to their robots to support any hardware.

Also works for algorithms

  • Slam motion planning, or computer vision
  • Anyone can publish a new implementation and start using
  • Will also have the ability to charge

Teleop any robot from anywhere so humans can help your robots.

All robot <-> user/code communication via webrtc for low latency communication.

Platform Benefits

CONFIGURE & build

Unify hardware & software prototyping

Viam provides a single interface to configure robots and expose APIs. Common hardware is abstracted into types such as ‘motor’ or ‘arm’. Hardware engineers simply select the model they’re using, and Viam automatically configures their robot. Viam supports hundreds of common drivers and provides an SDK to easily create additional drivers. Each piece of hardware can be independently changed, and every robot automatically updates its configuration. Once configured, you can test hardware in Viam’s control UI, and software engineers immediately have intuitive APIs to start writing code.

Learn More →
An illustration of a robot being configured through Viam
An illustration of software being developed using Viam SDK
code

Simplify software development

Software engineers can write predictable, reliable, and consistent code in any programming language from anywhere. Viam’s API exposes intuitive methods through gRPC for each type of hardware. For example,‘MoveToJointPosition’ moves any arm, and ‘SetPower’ turns on any motor. Your software can run locally on the robot, or remotely from anywhere via  WebRTC.  Viam natively supports higher-level services such as Computer Vision, SLAM, and Motion Planning.

manage & scale

Operate global deployments

Organizations can centrally manage and secure every robot from anywhere. You can organize robots by organization and location, view every robot’s status, remotely control any robot, and Viam will support fine-grained control over access to robots – down to distinct API methods. For example, you can prevent remote access to cameras deployed in sensitive environments. Viam is SOC2 type I compliant and all communication between robots, to client applications, and with the cloud is encrypted end-to-end.

An illustration of Viam managing global deployments
An illustration of robots sending data to Viam and Viam pushing updates out to those robots
do more with the cloud

Manage data across robots

Viam lets you synchronize data from each robot to the cloud, combine and analyze data, and then deploy changes to every robot. Viam can collect images, sensor readings, and hardware metrics even through challenging network conditions and limited bandwidth. Once uploaded, you can explore your data, export it to run predictive analytics, and train machine learning models. Viam supports pushing trained models, or any other data, back down to your robots.

Pricing

Viam does not charge for beta usage of its cloud service. At general availability, Viam will offer consumption-based pricing for its cloud service.

Get started with Viam today!