Skip to main content

Setting the Device Role

Configuring a device as a Meshtastic repeater involves two key settings: the device role and the rebroadcast mode. Both can be set using the Meshtastic mobile app or the Python CLI.

Using the mobile app (Android/iOS)

  1. Connect to your device in the Meshtastic app
  2. Navigate to Config → Device → Role (app layouts change between versions; this is the current path)
  3. Find Device Role and select your role. Note that REPEATER is deprecated as of firmware ~2.7.x; for most infrastructure nodes the recommended role is now Router (which stays visible in the node list), and for the overwhelming majority of ordinary nodes the official guidance is Client.
  4. Save settings - the device will reboot to apply changes

Using the Python CLI

Install the CLI if you have not already:

pip install meshtastic

Connect the device via USB, then set the role. The setting key is device.role and the value is the bare enum name (for example ROUTER or REPEATER):

# REPEATER is deprecated as of firmware ~2.7.x; ROUTER is recommended for most infrastructure
meshtastic --set device.role ROUTER

# To set the (deprecated) REPEATER role explicitly:
meshtastic --set device.role REPEATER

Verify the change:

meshtastic --info

After setting the role

Once set to REPEATER, the device will no longer appear in other nodes' node lists and does not send NodeInfo (it is anonymous on the mesh) - this is by design. It relays packets without broadcasting its own data, and unlike ROUTER it does not force power-saving sleep. To confirm it is operating, check the serial output or observe that messages are being relayed through it. (If you instead choose ROUTER, the node does appear in the node list and the firmware automatically enables power-saving sleep that cannot be turned off, with BLE/WiFi/Serial off by default.)

Flashing Meshtastic firmware

If your device does not have Meshtastic installed, use the Meshtastic Web Flasher to install firmware directly from Chrome or Edge - no software installation required. Connect via USB, select your device type, and click Flash.

Setting the region

Before the radio will transmit, you must set the correct region. The region setting is the master legal control - it determines both your authorized frequency band and the maximum power the firmware will permit:

meshtastic --set lora.region US

Or in the app: Config → LoRa → Region → US. Setting the wrong region (for example leaving a US deployment on EU868) will cause the device to transmit out-of-band on frequencies you are not authorized to use - a clear violation of FCC rules, not just a possibility. In the US, only 902-928 MHz is available for these unlicensed Part 15 devices. Always set the region that matches your physical location before transmitting, and leave lora.tx_power at its default of 0 so the firmware applies the region-legal maximum.