An ESP32 board is a lightweight, cost-effective solution for projects requiring basic control, real-time processing, and wireless communication. It's ideal for simpler robotics or IoT applications where the full power of a single-board computer (SBC) like a Raspberry Pi isn't necessary.
Learn how to install the lightweight viam-micro-server
which can run on resource-limited embedded systems, like the ESP32, that cannot run the fully-featured viam-server
. The viam-micro-server
is built from the micro-RDK.
viam-micro-server
on a microcontrollerviam-micro-server
, along with your machine's credentials and your wifi information, to your ESP32 development board. Then configure and control your ESP32 using Viam.Follow along with the step-by-step video.
viam-micro-server
installer used to flash and monitor logs on your ESP32.~/Downloads
directory of the computer. $ cd ~/Downloads
<WIFI-SSID>
placeholder (including the angle brackets<
and>
) with your own SSID. $ chmod 755 ./micro-rdk-installer-macos && ./micro-rdk-installer-macos write-flash --app-config viam-esp32-project-main.json --monitor --wifi-ssid "<WIFI-SSID>"
/dev/cu.*
. In most cases, including flashing firmware on the ESP32, you'll typically use cu
(call-up) instead of tty
(teletype). board
, and find the esp32
module, and Create. This adds the module for working with the ESP32 board's GPIO pins. Leave the default name board-1
for now. board-1
. The collapsible card on the right corresponds to the part listed in the left sidebar. board-1
card, expand the Attributes dropdown to see options to configure the board. Input 12
and Enter to configure GPIO pin 12.board-1
that you configured on the CONFIGURE tab. Enter 12
into the Pin
field, select the Read mode, so you can Get
information about that pin.
viam-micro-server
on a microcontrollerOnce viam-micro-server
is installed, you can use your ESP32 with all of Viam's supported resource APIs, but you cannot write your own code directly interacting with the chip. If you want to program the chip directly, follow the development setup guide to learn how to to customize viam-micro-server
and create modules using Rust.
You can also learn how to install viam-server
on single-board computers and other devices.