VIAM CORE

Unique architecture to manage and create
smart machines

Viam is powered by open-source protocols that enable simple, secure connections and communication between smart machines and the cloud.
Most smart machines are not designed to be adjusted on the fly in response to changing environmental conditions, or to communicate with other machines.
Viam’s open-source architecture simplifies machine design and interoperation regardless of the hardware, software, or programming language it uses.

Connecting machines to the cloud and each other

Viam is built as a distributed system, using protocols and standardized APIs for easy integration across a wide variety of platforms.
A diagram showing how Viam Core works to enable communication between smart machines and the cloudA diagram showing how Viam Core works to enable communication between smart machines and the cloud
1
Add a driver to put any component or service on your machine; services not part of Viam’s ample built-in offerings can be added through Viam’s Modular Registry open marketplace. Only pay for cloud compute consumed.
2
Viam utilizes protocols,  frameworks, and an API layer similar to peer-to-peer networks so devices can talk to the cloud and each other.
3
Viam is all open source on machines, and can be installed on any Linux, Mac, microcontroller, or (coming soon) Windows device, creating a wrapper around components to expose their APIs.
BENEFITS

Flexible & secure smart machine pipelines

Control smart machines in any programming language

Viam’s API layer simplifies developing software across many different hardware components and services. Those APIs are exposed through gRPC and WebRTC and allow direct connectivity to the machine with a wide variety of SDKs, including Python, Typescript, Flutter, and many more.

Streamlined smart machine integration with the cloud

The viam-server deployed on each machine integrates seamlessly with Viam’s cloud backend for configuring fleet management, data collection and analytics, ML model training and deployment, remote control, and many other capabilities.

Secure communication between machines and the cloud

Viam is SOC2 Type 1 and HIPAA compliant, with TLS certificates provided by app.viam.com to ensure that all communication between machines, the platform, and client applications is authenticated and encrypted end-to-end.
FEATURES

Removing the silos that limit interoperability

Open-source software for any computer

Viam’s Robot Development Kit (RDK) consists of a server that can be installed on any computer and allows the platform to communicate with any hardware connected to it. There is also a lightweight Micro-RDK for resource-limited embedded systems.

Flexible machine setup and control

Once installed, Viam’s software provides a straightforward way to handle all configuration, iteration, maintenance, and communication related to a smart machine. Run drivers, custom code, services like computer vision and machine learning, or any other kind of software through Viam’s intuitive UI.

Simple cross-platform communications

All communications between machine components, including across the internet, use gRPC and protocol buffers to streamline integration, allowing Viam to provide many different SDKs to control machines in any popular programming language. Viam can also cache data and configurations locally and sync afterwards in low connectivity areas.

Easily connect global fleets and machines

Viam uses WebRTC to make secure connectivity across network boundaries easier and faster, and to leverage signaling servers that mediate connection attempts between machines spread across multiple networks at scale, much like modern collaboration and video conferencing tools do.

Change machine hardware and features without code

Viam supports most common hardware components and complex capabilities out of the box, and these can be swapped out for others as needed within the Viam UI.

Extensibility to any conceivable component or functionality

Viam cannot always anticipate every potential piece of hardware or software service a developer might want to use on their machine out of the box. To incorporate new technology, Viam is extensible so that it is easy to add support for any component or service as needed from our open marketplace, the Registry.

Key resources

Tutorials: Introductory smart machine projects
Get a feel for what makes the Viam platform different. Look through some of our tutorials to see how quick Viam makes it to get a machine up and running.
READ THE TUTORIALS
An image showing the Viam mobile interface
Blog Post: Controlling machines through a mobile phone
Read a technical overview from one of our experts on how Viam’s unique architecture makes it easy to remotely control a smart machine through our mobile application.
READ THE BLOG
Documentation: How Viam machines talk to each other
Take a deep dive into how machines running Viam communicate with each other and the cloud.
READ THE DOCS
Request my free demo