Choose where the roles run
Aspen · Standalone ESP32
Everything on the radio
A XIAO ESP32-S3R8 with Wio SX1262 runs the roles, Lua/Wasm bot and shared modem. WiFi connects your companion app and browser; RF messaging can continue without Internet access.
- MeshCore appPhone or computer on your LAN
- Aspen radioIndependent roles and shared modem
- MeshCore mesh
Configure and flash Aspen
Willow · Linux host + WiFi modem
Keep the radio at the antenna
Run the roles and durable state on a Linux computer. Add a Base companion, browser dashboard and MQTT broker, and use Lua/Wasm for commands and packet processing.
- Linux hostRoles, applications and saved state
- Shared modemRadio tuning and transmission
- MeshCore mesh
Install and start Willow
Using a Heltec V3 or an original T-Beam v1.2 SX1262/SX1276? Use its shared-modem profile with Willow. For Heltec V4 R8 or T-Beam Supreme SX1262, follow the Aspen board-specific setup. Match the exact board and radio variant; XIAO firmware belongs on the XIAO.
Birch, Pine and an indoor ESP32 role
Birch runs host roles in Go and offers a Debian 12 x86-64 download. Pine runs a compact repeater and Lua bot on XIAO nRF52840 + Wio SX1262. Its RAK4631 profile provides a repeater, notes bot and optional Ethernet companion with PoE power. An indoor ESP32 role can use a separate WiFi modem.
From new board to first reply
Choose the hardware and radio profile
Fit the antenna and select your network's frequency, bandwidth, spreading factor, coding rate and permitted transmit power. Use the same profile on the radios that will communicate.
Download and configure
The Aspen installer combines the firmware ZIP with your private WiFi and administrator settings. For a host, follow Willow setup with your modem address and private state directory.
Flash or start, then open the dashboard
Flash a new Aspen over USB and open http://aspen.local/admin, or its DHCP address. Start Willow's selected services and open its dashboard. Check the shared PHY and ready roles.
Send your first command
Connect the MeshCore app to the companion endpoint on port 5000, send an advert and message the bot privately with !ping. Expect Pong; !help shows what you can use next.
App connection steps · Update an existing node without replacing its state
Put the node to work
Messaging and shared rooms
Use native MeshCore DMs, channels and room history. Each role has its own key and permissions.
Connect and use the roles
Useful bot commands
Keep private notes, read nearby repeater signal or monitor a fleet. Add a named module while retaining existing commands.
Browse command downloads
Your own applications
Write Lua or bring C/Rust through Wasm. Use scoped storage, timers and owner-configured web services.
Extend the bot
Traffic and battery monitoring
Publish MQTT observations, collect repeater status and view radio, queue and resource trends.
Set up monitoring
Aspen Rooms also connects browser and terminal clients with radio frontends through a shared room service. Shared-room setup
Independent roles, shared airtime
The repeater forwards eligible traffic, the room holds conversations, the companion serves your app and the bot runs commands. Each owns its own identity and state. The shared modem schedules all transmissions on one RF channel and airtime budget.
Aspen uses MeshCore packet formats, encryption, adverts and routing to communicate with other MeshCore radios. A local TX completion means the radio sent a packet; a recipient ACK or reply confirms reception. Local reflections are labelled separately from RF receptions.
Radio status and airtime · What survives a restart · Architecture reference
Downloads
These releases use MeshCore 1.18.0, with companion protocol 14 on Aspen. Choose the package for your hardware; each release includes installation instructions and checksums. Host roles use a separately configured WiFi/TCP shared modem.
Standalone ESP32
Aspen 0.1.18
XIAO ESP32-S3R8 + Wio SX1262. Native roles, Lua/Wasm bot and browser administration. Addressed bot commands also work with accented characters and emoji in your display name.
Install Aspen Release files
The first-install image erases the board. For an existing Aspen, use an application-only update.
Linux host roles
Willow 0.0.12
Host roles, Base companion, dashboard, MQTT and a native Lua/Wasm worker connected to your shared modem.
Download Willow Install and start Docker Compose Release files
Go host roles
Birch 0.1.4
Debian 12 x86-64. Prebuilt host and native worker with a private configuration installer.
Download Birch · Install the host
Standalone nRF52840
Pine 0.1.4
XIAO nRF52840 + Wio SX1262. Application update for an initialized repeater/bot node with existing identities, credentials and Lua storage.
Download Pine · Installation and recovery
Use a signed application-only USB update, or keep USB recovery accessible during a BLE update.
Download command modules · Get the source · Build and package from source