Flashing and Configuring a Repeater Node¶
This guide will help you flash a node and configure it as a MeshCore repeater.
RAK Bootloader Update¶
(Skip this section if you are not using a RAK-based board)
Important:
Before configuring a repeater, you must update the bootloader on RAK boards.
Without this fix, a failed OTA update can brick the repeater and require physical recovery.
Steps¶
- Download the OTA bootloader fix:
OTAFIX Bootloader UF2 File - Connect your repeater to your computer via USB.
- Double-click the button beside the USB port on the RAK board.
- The green LED should turn on, indicating DFU mode.
- A new USB drive should appear on your computer.
- Drag the
.uf2file into the drive. - The copy will appear to fail, and the board will reboot — this is expected.
- Open INFO.TXT on the drive and confirm it reports bootloader version 0.9.2.
Flashing MeshCore Repeater Firmware¶
- Plug the device into your computer via USB.
- Open the MeshCore Web Flasher: https://flasher.meshcore.co.uk
- Select your device hardware.
- Select Repeater as the firmware type.
- Click Enter DFU Mode.
- Click Erase Flash.
- Click Flash to install the firmware.
Note:
If flashing fails after erasing, refresh the page, click Enter DFU Mode again, then click Flash.
Configuring a MeshCore Repeater¶
- Using Google Chrome, open the repeater configuration tool:
https://config.meshcore.dev - After connecting, check the Ottawa Repeater ID List to ensure your repeater ID is unique.
- Repeater IDs come from the first two characters of the public key.
- Duplicate IDs cause conflicts.
- Developers are working on a long-term fix, but for now each repeater should use a unique ID.
Generating a New Repeater ID (If Required)¶
There are two ways to assign a new repeater ID, we recommend option 1 as it guarantees you will get a unique ID
Option 1 — Manually Generate a Private Key (choose your own ID)¶
- Go to the Ottawa Repeater ID List and pick an unused 2-digit ID.
- Visit mc-keygen: https://gessaman.com/mc-keygen/
- Enter your chosen 2-digit ID, then click Generate Key.
- Copy the Private Key from the output.
- Open the MeshCore Flasher, click Console, and select your repeater.
- Run: set prv.key
- Reboot the repeater.
It will now use this private key, and the public key will match your chosen ID.
Option 2 — Reflash (automatic key generation)¶
- Reflash the repeater and ensure Erase Flash is used.
- A new private/public keypair will be generated.
- After flashing, verify that the new ID is not in use by checking:
Ottawa Repeater ID List
Final Configuration Steps¶
- Give the repeater a descriptive name (e.g.,
Callsign_R1,Downtown_R1). - Set an admin password — this is required for MeshCore Remote Administration.
- Apply the Ottawa defaults:
910.525 MHz / BW 62.5 kHz / SF7 / CR5 - Click Save and reboot.
-
Reconnect using the configuration tool and click Send Advert.
-
If everything is working, nearby companion nodes will receive it.
Advert Interval Configuration¶
Once the repeater has been discovered by your companion node, use Remote Administration to set:
- Zero-hop adverts: every 1 hour
- Flood adverts: every 12 hours
- Click Save
Tip:
After every reboot, you must resync the repeater’s clock.
The repeater will still route messages without a clock, but its adverts will be ignored until the time is set.