The Channels config options are: Index, Roles, and Settings. Channel config uses an admin message sending a
Channel protobuf which also consists of a
Channel Settings (as described on this page) should not be confused with Modem Preset Settings
Modem Preset Settings contain the modem configuration (frequency settings, spreading factor, bandwidth, etc.) used for the LoRa radio. These settings are identical for all channels and can not be unique per channel.
Channel Settings contain information for segregating message groups, configuring optional encryption, and enabling or disabling messaging over internet gateways. These settings are unique and configurable per channel.
Channel Config Values
The channel index begins at 0 and ends at 7.
Indexing can not be modified.
|0||1||Used as |
You can not have
DISABLED channels in-between active channels such as
SECONDARY. Active channels must be consecutive.
Each channel is assigned one of 3 roles:
- This is the first channel that is created for you on initial setup.
- Only one primary channel can exist and can not be disabled.
- Periodic broadcasts like position and telemetry are only sent over this channel.
- Can modify the encryption key (PSK).
- The channel is no longer available for use.
- The channel settings are set to default.
While you can have a different PRIMARY channel and communicate over SECONDARY channels with the same PSK, a hash of the PRIMARY channel's name sets the LoRa channel number, which determines the actual frequency you are transmitting on in the band. To ensure devices with different PRIMARY channel name transmit on the same frequency, you must explicitly set the LoRa channel number.
Channel Settings Values
The Channel Settings options are: Name, PSK, Downlink Enabled, and Uplink Enabled. Channel settings are embedded in the
Channel protobuf as a
ChannelSettings protobuf and sent as an admin message.
A short identifier for the channel. (< 12 bytes)
|If left empty on the Primary channel, this designates the |
|On Secondary channels, the name |
The encryption key used for private channels.
0x01 for the Primary
Must be either 0 bytes (no crypto), 16 bytes (AES128), or 32 bytes (AES256).
If enabled, messages captured from a public internet gateway will be forwarded to the local mesh.
false by default for all channels.
If enabled, messages from the mesh will be sent to the public internet through any node's configured gateway.
false by default for all channels.
Channel Config options are available on Android.
The Radio Configuration tab can be used for common tasks:
- View your current channel configuration QR code and URL.
- Quickly create or modify your primary channel.
- Select a modem preset for all your channels i.e.
Long Range / Fast.
See Android App Usage for more further instruction on setting up your primary channel.
Tap the Channel Name (or the pen icon) to access the Channel Menu:
- Add, remove, or modify secondary channels
- Create or modify encryption keys
- Enable uplink and downlink for individual channels
Channel settings are only available on Apple platforms by scanning QR codes.
All Channel config options are available in the python CLI. Example commands are below:
Because the device will reboot after each command is sent via CLI, it is recommended when setting multiple values in a config section that commands be chained together as one.
meshtastic --ch-set name "My Channel" --ch-set psk random --ch-set uplink_enabled true --ch-index 4
# without spaces
meshtastic --ch-set name MyChannel --ch-index 0
# with spaces
meshtastic --ch-set name "My Channel" --ch-index 0
If you use Meshtastic for exchanging messages you don't want other people to see,
random is the setting you should use. Selecting
default or any of the
simple values from the following table will use publicly known encryption keys. They're shipped with Meshtastic source code and thus, anyone can listen to messages encrypted by them. They're great for testing and public channels.
|Default Encryption (use the weak encryption key)|
|Generate a secure 256-bit encryption key. Use this setting for private communication.|
|Uses a single byte encoding for encryption|
meshtastic --ch-set psk default --ch-index 0
meshtastic --ch-set psk random --ch-index 0
meshtastic --ch-set psk simple15 --ch-index 0
meshtastic --ch-set psk 0x1a1a1a1a2b2b2b2b1a1a1a1a2b2b2b2b1a1a1a1a2b2b2b2b1a1a1a1a2b2b2b2b --ch-index 0
meshtastic --ch-set psk base64:puavdd7vtYJh8NUVWgxbsoG2u9Sdqc54YvMLs+KNcMA= --ch-index 0
Use this to copy and paste the
base64 encoded (single channel) key from the meshtastic --info command. Please don't use the omnibus (all channels) code here, it is not a valid key.
meshtastic --ch-set psk none --ch-index 0
Uplink / Downlink
For configuring gateways, please see MQTT
meshtastic --ch-set uplink_enabled true --ch-index 0
meshtastic --ch-set uplink_enabled false --ch-index 0
meshtastic --ch-set downlink_enabled true --ch-index 1
meshtastic --ch-set downlink_enabled false --ch-index 5
All Channel config options are available in the Web UI.