Skip to main content

Personal Device Roles

Personal roles are designed for individual users who want to send and receive messages. They vary in how aggressively the device relays messages for others.

Important: Your role choice affects everyone on the network. The Meshtastic project's guidance is clear: only assign Router or Repeater roles to nodes with genuinely excellent placement and reliable continuous power. Do not assign infrastructure roles to personal devices for convenience.

Client (Default)

Behavior: Sends and receives messages via the app. Rebroadcasts a packet (managed flood routing) only when no other node has already rebroadcast it after the node has heard it once - it does not pick a single "best-positioned" relay.

Use for: Most personal handhelds and portable nodes. This is the correct default for the majority of users.

Client Mute

Behavior: Fully participates in messaging but never relays packets for other nodes.

Use for: Dense environments (city centers, events, conferences) where the channel is congested and adding another relay would make things worse. Client Mute is underappreciated - in a high-density network, switching personal devices to Client Mute can dramatically reduce channel utilization without losing any personal messaging capability.

Client Hidden

Behavior: Suppresses periodic NodeInfo broadcasts. The node participates in messaging but does not regularly announce its existence, so it is less likely to appear in other users' node lists. (This role is firmware-version dependent.)

Use for: Privacy-conscious users who prefer not to be listed in others' node lists. This is not a covert or anti-detection mode - the node still transmits identifiable plaintext packet headers whenever it sends, so anyone monitoring RF can see the node when it transmits. It reduces directory visibility, not radio detectability, and metadata can still reveal the node.

Choosing the Right Personal Role

SituationRecommended Role
Default personal useClient
Dense urban area or event with congestionClient Mute
Reduce node-list visibilityClient Hidden