MQTT Settings

MQTT (Message Queuing Telemetry Transport) allows a Meshtastic node with internet access to publish selected mesh traffic to an MQTT broker and optionally receive MQTT traffic and rebroadcast it onto the radio mesh.

MQTT is commonly used to connect separate RF areas, support web based maps, and allow limited communication when direct radio paths do not exist.



When to Use MQTT

  • Publishing node location and telemetry to maps
  • Bridging separated RF areas together
  • Supporting mobile users when RF coverage is limited

MQTT is optional. A healthy local mesh does not require MQTT to function.


Step 1: MQTT Module Configuration

MQTT settings are configured only on the node that has internet access. This node can use WiFi, Ethernet, or a phone connection.

  • Enable MQTT: On
  • Server Address: mqtt.nwimesh.net
  • Username: meshdev
  • Password: large4cats
  • Root Topic: msh/US/IN/NWI
  • MQTT Encryption: Optional. This is message level only
    • The “Encryption Enabled” option controls the “message-level” encryption – so the same encryption that’s used over LoRa is left in place when messages are uploaded to MQTT.
  • JSON: Off unless required for integrations

Connection behavior:

  • WiFi or Ethernet nodes: Proxy to Client Off
  • Phone connected nodes: Proxy to Client On

Step 2: Channel Uplink and Downlink

MQTT behavior is controlled per channel. Uplink and Downlink determine what traffic is published to MQTT and what traffic is rebroadcast onto RF.

  • Uplink Enabled: Publishes radio traffic to MQTT
  • Downlink Enabled: Subscribes to MQTT and rebroadcasts traffic on RF

Recommended Baseline Configuration

This configuration is recommended for most users who want their node to appear on maps.

  • MQTT Enabled
  • Primary Channel Uplink Enabled
  • Primary Channel Downlink Disabled
  • OK to MQTT Enabled
  • Ignore MQTT Disabled

Position Reporting for MQTT

MQTT maps rely on position reports. Position settings control how often and how accurately your node reports its location.

  • Position Enabled: On
  • Precise Location: Off
  • Position Broadcast Interval: 1800 seconds for fixed nodes

Shorter intervals should only be used for mobile nodes when necessary.


Common Reasons MQTT Does Not Work

  • MQTT module is disabled
  • OK to MQTT is turned off
  • Ignore MQTT is turned on
  • Incorrect broker credentials
  • TLS mismatch with the broker
  • No internet connectivity

Summary

  • MQTT is optional and not required for a working mesh
  • Use MQTT on powered and stable nodes
  • Enable Uplink cautiously and Downlink intentionally
  • Protect credentials and use TLS when available