Skip to content

bitraf/embassy-skeleton

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Workshop in Embedded Rust with Embassy

Hosted by Dag Bjørndal in Oslo on December 9th 2025

The accompanying firmware code from this workshop illustrates use of the Embassy framework. It is intended as a bare skeleton demonstration of cooperative multitasking. The following devices are featured:

  • Raspberry Pi Pico W (ARM)
  • Esp32c3 OLED (Risc-V)
Raspberry Pi Pico W Esp32 C3 OLED

Firmware Features

Both devices do the following:

  • The device is initialized in Embassy and tasks are started
  • The device connects to Wi-Fi using SSID and PSK read from src directory
  • The onboard LED is blinked every second
  • A small web page is retrieved from the the Internet every 10 seconds, and its content is logged
  • Logging information is continously sent to the host computer

Key Differences

The Esp32 device has a small OLED screen which is activated and written to. Dynamic memory allocation using heap is demonstrated on this device. The Esp32 device is connected directly to the host computer via USB. The Pico W device demonstrates using stack memory allocation only. This approach might be considered best practice. The Pico W is connected to the host computer via a programming probe (Picoprobe, ST-Link or Segger). The device uses defmt to minimize bandwidth demand when logging to the host computer.

Prerequisites to run on Esp32 C3 OLED

  • Install Rust. Follow the instructions on The Rust Programming Language.
  • Install espflash with 'cargo install espflash --locked'.
  • Connect device to host computer via USB cable.

Prerequisites to run on Pico W

  • Install Rust. Follow the instructions on The Rust Programming Language.
  • Install probe-rs. Follow the instructions on probe-rs.
  • Connect device to programming probe (Picoprobe, ST-Link or segger). Typically SWCLK, SWDIO, 5V and GND are needed. Connect programming probe to host computer.

About

Simple Embassy outline for Pico W and Esp32-C3 OLED

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published