MeshCore Firmware Variants Explained
Accurate as of 13 July 2026. Firmware version numbers below should be checked against the current releases before you rely on them.
MeshCore is distributedbuilt asin several distinct firmware variants,types, each designed for a specific role in the mesh. Choosing the correctright variantone is essential - runningmatters: the wrongroles firmwareare typenot wastes resourcesinterchangeable, and cana degradenode networkflashed performance.as a Repeater cannot be used as a personal messenger.
This page covers node roles. On this page, "variant" always means role. There is a secondsecond, choiceseparate to make:choice: which distribution you flash. Stock MeshCore is one option, and several independent projects (EasySkyMesh, Keymind Cascade, MCLite, WADAMESH, ZephCore) build their own MeshCore firmware with different priorities. See MeshCore Firmware Distributions (Forks and Ports). Pick a distribution first, then a role within it.
The Firmware Variants
Companion (COMPANION)
The Companion firmware is for user-facing nodes. It is thewhat firmware that end-usersyou run on theiryour personal devicesdevice to send and receive messages viathrough the MeshCore mobile app.
- Primary function: Sends and receives direct messages and channel (group) messages. Maintains a contact list. Connects to the MeshCore mobile
app over BLE or USB serial (and, on Wi-Fi-capable boards, over a Wi-Fi/TCP connection).app. Sub-variants:Three builds, not two.There are two companion firmware builds -BLE Companion and USB SerialCompanion.Companion are both prebuilt by the official flasher. A Wi-Fi Companion build also exists, but the official flasher does not ship it, because the Wi-FiisSSIDanandadditionalpasswordconnectionaremodecompiledavailableintoonthecapablebinary.boardsYou(e.g.either build it yourself or take aHeltecprebuiltV3),onenotfrom aseparatefork (Keymind Cascade prebuilds Wi-Fi companionfirmware build.binaries).- When to use: Personal handheld nodes, base station nodes used for human communication, any node
thata person interacts with via theMeshCoreapp. - Firmware file example:
Heltec_v3_companion_radio_ble-v1.(or the corresponding7.1-165fb33.16.0-07a3ca9.bin..._companion_radio_usb-...build; RAK4631 nRF52840 boards ship a.uf2companion build)
Repeater (REPEATER)
The Repeater firmware turns a node into a dedicated packetmesh relay.infrastructure. It has no user interface and no messaging capability of its own.
A MeshCore repeater is not a repeat-everything flood relay. This is the single most common misunderstanding, and it is MeshCore's main architectural difference from other LoRa mesh systems. Upstream's FAQ puts it in bold: a MeshCore repeater "does not forward or retransmit every packet it receives, unlike other LoRa mesh systems."
PrimaryHowfunction:it actually works:ReceivesMeshCore floods a packet only while it is discovering a route. Once a path is known, packets carry that path, andre-transmitsonly the repeaters named in the path retransmit them.ForwardsSeepacketsMeshCoretoRouting:extendFlood-First,network reach.Direct-Route-After.ResourceNoprofile:Bluetooth.Minimal.YouNocannotdisplayconnectdriver,tonoaBLEnodeadvertising for user connections (only for CLI access), no message store. Designed for long-runningoperationRepeateronfirmwarebatteryover Bluetooth. It is administered over USB serial, orsolarremotelywhenoverpowertheis sized for worst-case conditions.air.- When to use: Any node whose sole purpose is extending mesh
coveragecoverage.- hilltopHilltop repeaters, buildingrelay nodes,relays, infrastructure backbone nodes. - When NOT to use: Do not flash Repeater on a node you
planintend to use as a personal communicator. It has no user-facing messaging. - Firmware file example:
Heltec_v3_repeater-v1.(RAK4631 nRF52840 boards ship a7.1-165fb33.16.0-07a3ca9.bin.uf2repeater build)
Room Server (ROOM_SERVER)
The Room Server firmware creates a store-and-forward message hub.room. RoomIt serversworks actlike asa small BBS or persistent group chat roomsreachable accessible viaover LoRa.
- Primary function:
StoresClientsincominglogmessagesin to the room anddeliverspostthemmessages. The server stores the room's posts and pushes recent unseen ones tonodesa client when it next connects, so you can catch up on what you missed while offline.
Heltec_v3_room_server-v1.7.1-165fb33.16.0-07a3ca9.bin (RAK4631 nRF52840 boards ship a .uf2 room_server build)
GUI builds
For boards with a screen (and, in the SD-card variants, storage),screen, the official flasher also builds GUI firmware.firmware These(and area companionGUI-with-SD-card nodesvariant). A GUI node is a Companion with an on-device interfaceinterface, rather thannot a separate network role.role: it messages and it does not relay.
KISS Radio
A KISS TNC buildbuild. thatIt turns the node into a dumbplain modem fordriven by a host computer, rather than a participant in the mesh in its own right. See MeshCore KISS Modem Protocol.
Sensor: read this carefully
Sensor firmware is the most misunderstood item in this list, so be precise about what exists.
- The upstream MeshCore repository contains a
simple_sensorexample application. The source exists. - The official
MeshCoreflasher does not build it. Theofficialflasher'sflasherroleofferslistCompanion,is Companion (BLE), Companion (USB), Repeater, Room Server,GUIGUI, GUI-with-SD, andKISS builds.KISS. There is no Sensorentry.entry, and the upstream releases contain no sensor binaries. You cannot flash a stock Sensorbinarybuild from flasher.meshcore.io. IfToyou wantget a prebuilt Sensorbinary,binary you eitherbuildcompile it yourself orgettakeitone from a fork. Keymind Cascade ships Sensor builds foraroundroughly 17boards.boards, and they are flashable from the Mesh America Device Configurator.- Sensor readings are not broadcast in adverts. A MeshCore advert announces a node's presence, not its telemetry. Sensor data moves over MeshCore's request/response protocol. See MeshCore Sensor Nodes
for how this actually works..
Summary Table
| User | ||||
|---|---|---|---|---|
| Companion (BLE / USB) | Yes | No | Yes |
Source:Sources: the official MeshCore flasher catalog (flasher.meshcore.io), the MeshCore FAQ, and the MeshCore firmware repository at github.com/meshcore-dev/MeshCore.