Previous
Set up alerts
The CONTROL tab provides a ready-made interface for testing and operating any configured machine. Every component and service on the machine gets a control card with relevant controls and readouts. No code required.
For a purpose-built operator interface with only the widgets you need, see Teleop workspaces.
Navigate to your machine’s page in the Viam app and click the CONTROL tab.
Each configured component and service appears as a card. What you can do depends on the resource type:
| Resource type | What you can do |
|---|---|
| Arm | Move joints, set joint positions, read current positions |
| Base | Drive with an arrow pad, set speed with a power slider |
| Board | Read and write GPIO pins, ADC/DAC values |
| Button | View button state, simulate press |
| Camera | View live feed, capture frames |
| Encoder | Read position and ticks |
| Gantry | Move axes, read positions |
| Gripper | Open, close, stop |
| Input controller | View button and axis states |
| Motor | Set power, set RPM, go to position, read position |
| Movement sensor | Read position, orientation, velocity |
| Power sensor | Read voltage, current, power |
| Sensor | Read current values |
| Servo | Set angle, read current angle |
| Switch | Toggle position |
| Generic component | Send custom commands (DoCommand) |
| Discovery service | View discovery results |
| ML model service | Run inference |
| Navigation service | View and set navigation goals |
| SLAM service | View map and pose |
| Vision service | Run detections and classifications on camera feeds |
| Generic service | Send custom commands (DoCommand) |
You can switch between machine parts directly from the CONTROL tab using the part selector at the top.
The Viam mobile app provides similar access from your phone:
The mobile app is available on the App Store and Google Play.
Was this page helpful?
Glad to hear it! If you have any other feedback please let us know:
We're sorry about that. To help us improve, please tell us what we can do better:
Thank you!