meshtastic/docs/software/settings/mqtt.md
2022-02-11 13:28:14 -07:00

12 KiB

id title sidebar_label
mqtt MQTT Settings MQTT

import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem';

:::note This is still under development, use at your own risk. Report any bugs you see by creating an issue on the meshtastic/Meshtastic-device repository or comment on our forum. :::

:::caution You may want to change your GPS location sharing settings if you are enabling this. It will broadcast your location over the internet. :::

Overview

If your device is connected to WiFi you can enable it to forward messages along to an MQTT server. This allows users on the local mesh to communicate with users on the internet.

Be sure to checkout this MQTT too.

Settings

Setting Acceptable Values Default
downlink_enabled true, false false
mqtt_disabled true, false false
mqtt_encryption_enabled true, false false
mqtt_password string ""
mqtt_server string ""
mqtt_username string ""
uplink_enabled true, false false

This is a channel specific setting. If your channel has this set to true and you are connected to WiFi, the device will forward along messages from the MQTT server specified here to the mesh from this device.

<Tabs groupId="settings" defaultValue="cli" values={[ {label: 'CLI', value: 'cli'}, {label: 'Android', value: 'android'}, {label: 'iOS', value: 'iOS'}, {label: 'Web', value: 'web'}, ]}>

meshtastic --ch-set downlink_enabled true --ch-index 0
meshtastic --ch-set downlink_enabled false --ch-index 0
meshtastic --ch-set downlink_enabled true --ch-index 1
meshtastic --ch-set downlink_enabled false --ch-index 1

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

mqtt_disabled

If a meshtastic node is able to reach the internet it will normally attempt to gateway any channels that are marked as uplink_enabled or downlink_enabled. But if this flag is set, all MQTT features will be disabled and no servers will be contacted.

Enable/Disable MQTT

<Tabs groupId="settings" defaultValue="cli" values={[ {label: 'CLI', value: 'cli'}, {label: 'Android', value: 'android'}, {label: 'iOS', value: 'iOS'}, {label: 'Web', value: 'web'}, ]}>

meshtastic --set mqtt_disabled false
meshtastic --set mqtt_disabled true

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

mqtt_encryption_enabled

Determines whether or not the device sends the packets encrypted to/from your MQTT server.

:::tip If you are using the default Meshtastic MQTT server, this setting will take no effect. All packets will continue to be encrypted regardless of this setting. Only custom servers will honor this setting. :::

Enable/Disable MQTT Encryption

<Tabs groupId="settings" defaultValue="cli" values={[ {label: 'CLI', value: 'cli'}, {label: 'Android', value: 'android'}, {label: 'iOS', value: 'iOS'}, {label: 'Web', value: 'web'}, ]}>

meshtastic --set mqtt_encryption_enabled false
meshtastic --set mqtt_encryption_enabled true

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

mqtt_password

MQTT password to use (most useful for a custom MQTT server). If using a custom server, this will be honoured even if empty. If using the default server, this will only be honoured if set, otherwise the device will use the default password large4cats.

Configure mqtt_password

<Tabs groupId="settings" defaultValue="cli" values={[ {label: 'CLI', value: 'cli'}, {label: 'Android', value: 'android'}, {label: 'iOS', value: 'iOS'}, {label: 'Web', value: 'web'}, ]}>

meshtastic --set mqtt_password mypassword
meshtastic --set mqtt_password "my password"
meshtastic --set mqtt_password ""

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

mqtt_server

The server to use for our MQTT global message gateway feature. If not set, the default server will be used

Enable/Disable MQTT Server

<Tabs groupId="settings" defaultValue="cli" values={[ {label: 'CLI', value: 'cli'}, {label: 'Android', value: 'android'}, {label: 'iOS', value: 'iOS'}, {label: 'Web', value: 'web'}, ]}>

:::tip When the mqtt_server is set to "", it will default to mqtt.meshtastic.org :::

meshtastic --set mqtt_server ""
meshtastic --set mqtt_server 198.168.0.2
meshtastic --set mqtt_server mqtt.mydomain.com

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

mqtt_username

MQTT username to use (most useful for a custom MQTT server). If using a custom server, this will be honoured even if empty. If using the default server, this will only be honoured if set, otherwise the device will use the default username meshdev.

Configure mqtt_username

<Tabs groupId="settings" defaultValue="cli" values={[ {label: 'CLI', value: 'cli'}, {label: 'Android', value: 'android'}, {label: 'iOS', value: 'iOS'}, {label: 'Web', value: 'web'}, ]}>

meshtastic --set mqtt_username myusername
meshtastic --set mqtt_username "my username"
meshtastic --set mqtt_username ""

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

This is a channel specific setting. If your channel has this set to true and you are connected to WiFi, the device will forward along messages to whatever MQTT server is specified in mqtt_server.

<Tabs groupId="settings" defaultValue="cli" values={[ {label: 'CLI', value: 'cli'}, {label: 'Android', value: 'android'}, {label: 'iOS', value: 'iOS'}, {label: 'Web', value: 'web'}, ]}>

meshtastic --ch-set uplink_enabled true --ch-index 0
meshtastic --ch-set uplink_enabled false --ch-index 0
meshtastic --ch-set uplink_enabled true --ch-index 1
meshtastic --ch-set uplink_enabled false --ch-index 1

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

Details

Examples

<Tabs groupId="settings" defaultValue="cli" values={[ {label: 'CLI', value: 'cli'}, {label: 'Android', value: 'android'}, {label: 'iOS', value: 'iOS'}, {label: 'Web', value: 'web'}, ]}>

meshtastic --set mqtt_server 192.168.123.234
meshtastic --ch-set uplink_enabled true --ch-set downlink_enabled true --ch-index 0
mosquitto_sub -h 192.168.123.234 -v -t msh/#

:::note FIXME some documentation says msh/# , some says mesh/# . As of 1.2.39 the messages are on msh/# :::

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::

:::info Configuring this setting is not yet available for the selected platform. If this is incorrect please update the documentation for this page. :::