The Micro-RDK and viam-micro-server
The Micro-RDK is the lightweight version of Viam’s full Robot Development Kit (RDK).
It is written in Rust and designed for resource-limited embedded systems (ESP32 microcontrollers) that cannot run the fully-featured viam-server
.
Microcontrollers do not have full operating systems like single-board computers and general-purpose computers. This means that microcontrollers can only run one “program” at a time, and a microcontroller must be flashed with firmware containing the entire logic to run.
viam-micro-server
is the pre-built firmware built from the Micro-RDK and a default set of modules, provided for a convenient quick-start.
For most use cases, you will build your own firmware from the Micro-RDK instead of using viam-micro-server
.
Hardware requirements
You need an Espressif ESP32 microcontroller to use viam-micro-server
.
Viam recommends purchasing the ESP32 with a development board.
The following ESP32 microcontrollers are supported:
You will also need a data cable to connect the microcontroller to your development machine, though subsequent firmware updates can be made remotely with the over-the-air (OTA) service.
Your microcontroller should have at least the following resources available to work with viam-micro-server
:
- 2 Cores + 384kB SRAM + 2MB PSRAM + 8MB Flash
Tip
The WROVER allows only a small number of incoming gRPC connections (1-5, depending on resources), whether over HTTP2 or WebRTC. You can change this max by building your own firmware.
Support
Client API usage with the Micro-RDK currently supports the following resources:
Next steps
To use viam-micro-server
, follow the installation guide.
If you want to access camera functionality, extend the functionality of viam-micro-server
, or customize it see the development setup guide.
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!