Viam’s platform helps your team solve any robotics challenge. Here are a few common use cases from early adopters.
You can remotely operate any Viam robot on any device from anywhere, with all communication encrypted end-to-end. There are no VPNs, intermediary servers, or third party tools.
Each robot allows direct access via WebRTC through Viam’s UI and API.
Audio and video streaming
Viam supports remote audio and video from hundreds of common hardware models.
Native remote control
You can control any robot with your keyboard, build your own custom control page using web languages or native mobile tools, and implement external physical controllers.
IoT Data Unification
Viam unifies data management across your environment. You can collect visual information, sensor readings, and hardware metrics from any robot, or any equipment connected to Viam.
Viam caches data locally, and lets you configure how much bandwidth is used, to ensure uploads always complete across any network condition, without interfering with real time control requirements.
All of your data is stored in the same format with granularity down to 10kHz. You can filter and search through your data using any field.
Viam lets you explore your data, export it to run predictive analytics, and train machine learning models. Viam will support pushing trained models, or any other data, back down to your robots.
Viam lets you orchestrate robots locally when network connectivity isn’t reliable or guaranteed for long stretches of time. You can deploy a client application running on the robot, or an external device. Each robot connects to the cloud for asynchronous updates.
Low bandwidth operation
Robots communicate with client applications, and to other robots, through gRPC methods composed of a few bytes of data.
Viam manages TLS certificates to secure local communication between each robot, and secrets to secure communication with client applications and across the internet. Robots automatically connect to Viam to validate certificates every 60 days.
Integrated higher-level services
Viam natively supports SLAM, Computer Vision, Motion Planning, and more on any robot. You can train machine learning models in the cloud, and push them to each robot.
Viam makes robots accessible to builders without extensive expertise. You can configure a robot in minutes, and immediately start solving problems in your everyday life.
Config-based Hardware setup
Viam abstracts common hardware into types such as ‘motor’ or ‘arm’. Hardware engineers select the model they’re using, and Viam automatically configures their robot and exposes APIs.
Viam’s APIs expose intuitive methods through gRPC for each type of hardware. For example, ‘MoveToJointPosition’ moves any arm, and ‘SetPower’ turns on any motor.
Viam’s SDK lets you create client applications to interact with your robot’s hardware and higher-level services, without dealing with low-level code.