Crash Course


There are users all over Australia, some with one or two nodes, some with dozens. For a map showing those of us sharing our location with the world via MQTT (see below), check out the MeshMap.

The following is a simplified set of instructions on how to set up your node, targeted at users in Australia.

Remember this is just the basics in summary form. For more detailed information, you’ll want to visit the home of the project, Meshtastic.org.

Initial Set-up

Your new device will need the Meshtastic firmware flashed (installed) to it. There are multiple ways to do this, but the easiest is to use the Web Flasher. Wiping the device when flashing is recommended.

Nodes

Each device is known as a node – a reference to their part in a larger mesh. Nodes include stand-alone devices with built-in batteries, devices with keyboards, small devices which are used via Bluetooth with your phone or tablet through a Meshtastic App, or slightly more complex nodes which come in kit form and are often deployed with solar panels and large battery capacities to be used as Repeaters or Routers. You can buy a meshtastic-compatible device off-the-shelf pretty much ready to go with battery pre-installed, or put it together yourself with parts from AliExpress, Amazon or other retailers. Many devices do not come with a battery, so be aware of what you’re buying.

Region

Different geographical regions have different frequency allocations in their local laws for these devices. In Australia most people use 915 Mhz. When buying some devices you will need to specifically select 915Mhz AU or ANZ. For other devices you’ll select the one which includes 915Mhz in its frequency range (eg 868-923). When you first configure your device, you’ll select the region you’re using it in – for us this is 915 ANZ,

Roles

Each node is set, using the software, to perform a particular role. The default role is Client, which is where you will want to start and for most people where it ends. As a Client node, you can connect to the device and use it for sharing text and location, and it will also form part of the mesh around you.

Modem Settings

Nodes can be set up in a variety of ways to balance distance and speed of transmission. This can be done manually, or you can select a pre-defined set of values off a list, called a Modem Preset. The default, the most common and the one you’ll want to use to join the broader community is Long_Fast.

Channels

Channels are virtual chatrooms, and not physical radio frequencies like on some other radio devices. The default channel has no specific name, but in many apps is shown by default simply as Long_Fast (or equivalent) to represent the modem preset you’re using. Channels are encrypted using a Pre-shared-key (PSK), but the default Long_Fast channel uses basic default encryption PSK which allows it to be used by everyone as a public channel. If you share your location in this channel, you will be sharing it with everyone who also has the default channel on their device.

The first channel in your device, the Primary Channel, is also called Channel 0 – this is the one where your location will be shared, if this function is active. If you want to share your location with some people, but not everyone, or if you want to communicate with some people but not everybody, you will need to change your Channel 0 (aka primary channel/default channel/the one at the top of the list) to something other than the default. You can have multiple channels, but your location will only be shared on Channel 0. How you create other channels varies slightly depending on the app you’re using, but in all cases you can select a name for a new channel, and a PSK. The name is actually irrelevant – it’s the PSK which matters. The name is just a label on your device for you to identify the channel. The PSK is the encryption key used to encode and decode messages on the channel, and if two people use the same key but different names for the same channel it makes no difference. When you first create a new channel (usually by giving it a name) it will randomly generate a new PSK for you. To share this, you’ll need to copy and paste that PSK out of the app and share it via some other method. If this is your Primary channel – the first on the list – only those with this same channel (PSK) on their device will see your shared location, and they can chat with you on this channel too. After changing your primary channel you could re-add the basic Long_Fast as another channel on your device (just create a new channel but don’t name it and it will default to this) so you can still chat with everyone around you, without disclosing your location to everyone.

Sharing channels manually requires you to share the PSK, but to avoid confusion you’d probably also share the name you used. A QR Code sharing method also exists within the software, allowing you to share your set of channels with someone else. If you uncheck the boxes beside your channels so that only one is checked, the QR Code will only share that one channel, which will allow people to import that single channel and add it to their list. It will share the name(s) and PSK(s) as you have them in your device, along with all the uplink/downlink/location settings.

If you use the URL sharing method (which looks like https://meshtastic.org/e/#FehjrlkdfsgS…etc), this shares your entire set of current channels, not just one channel – it ignores what you checked or unchecked (yes, this is annoying, no, I don’t know why it does this). When you import channels with this method (just click the link with the app installed and the device attached) it also overwrites your entire set of channels so be sure to copy out the details of any existing channels you want to keep before you do this – you could manually add them back in at the bottom after import, if you wanted.

Frequency Slots

First, I’m not sure if it still does this and it’s difficult for me to check – it might be ok now. The first time you change your Channel 0 to something other than Long_Fast, it will also change your Frequency Slot. Changing the Frequency Slot is a physical change in the frequency your device uses. The default Frequency Slot in Australia is 20. The first time you change your Channel 0 to something other than the default Long_Fast, you should go back into Settings/Lora under and fix this, and make sure your Frequency Slot is set to 20. This is necessary if you want to use repeaters and routers other people have installed for everyone to share, and if you want to communicate with other people on the public mesh. It won’t change again by itself no matter what you do with your Channels after that.

Location

Your location is shared based on the Location configuration of your device. It can be time-based and also involve a change in distance (Smart Broadcast). If your device has a GPS, this can be used to obtain Location information. You can also use the GPS in your connected phone or tablet by enabling Provide Location to Mesh – this is not done in the Configuration section of the device, but is instead done elsewhere in your chosen App, usually where you select the device you’re connected to (Android example).

Location can also be set manually (Fixed Position). You can type in the latitude and longitude, or you can activate Provide Location to Mesh (eg from your phone) for a moment – this will change your ‘Fixed’ position – then turn this off again. If your position is set to Fixed, and you leave Provide Location to Mesh active – it will be ‘Fixed’ when you disconnect or turn this off, but while you’re connected it will continue updating. Again, I wasn’t the one who chose to call this ‘Fixed’ even though it keeps changing so don’t blame me. If the Location is Fixed, if someone does a Request Position (see below), this is the Location they’ll get.

You can select a node off your list and Request Position. This process does not require the two of you to share the same Channel 0, but the Position of that node will only be shared on its Channel 0 – not directly with you. In order to see the Position you just asked for you’ll need their Channel 0 set as one of your Channels (it doesn’t have to be your Channel 0). For example – I have a device which uses my own private channel as 0, with Long_fast further down the list … I can see everyone sharing their location on Long_fast but they can’t see where I am.

Note that performing a Request Position also causes your device to update and send its own position to its own Channel 0. This is the only way to manually ‘send’ the current location of your device (i.e. not by time/distance as set in your configuration) through the app.

The map in your app has other functions, including the ability to drop pins and share them, setting names and icons for them. These are shared with others over the mesh via your Channel 0 so will only be shared with the same people who can see your location. They are also shared over MQTT (see below).

MQTT

An MQTT Server (Broker) is how your device connects to others over the internet. This allows you to chat to people who are outside radio-range, and is also used to link groups of nodes in one place to groups in another, including to create an Australia-wide network. Devices automatically use geographically based sub-folders automatically. The default root folder for an Australian device is msh/ANZ. Some people also use msh/ANZ/Vic (or other state) but the default is ANZ.

The public, global MQTT server is mqtt.mesthtastic.org and uses a default username / password of meshdev / large4cats. Everyone can use these same credentials and there is no need to change them from the default.

Here are the steps for using MQTT:

  1. In your software, go to Radio Configuration > MQTT
  2. Leave the server address as it is, mqtt.meshtastic.org
  3. Leave the username and password as they were (meshdev/large4cats)
  4. Switch on MQTT Enabled at the top
  5. Change your Root Topic to msh/ANZ if necessary
  6. If you connect via Bluetooth and want your device to use your phone’s internet connection, switch on Proxy to Client Enabled at the bottom. Leave this off if your device is connected to the internet via its own wifi.
  7. Turn on Map Reporting if you want – this will allow your location to be shared via MQTT to sites such as MeshMap – if you leave this off, you’ll still be sharing your location to devices which physically hear you and other people via MQTT, but not with online maps. Adjust the location Precision and interval as you like.
  8. Send your settings
  9. For each channel you want connected via MQTT, go to the channel settings and switch on Uplink (send to the server) and Downlink (pull information from the server). For your Channel 0, make sure you’re happy with your location precision. While all your other channels also have a location switch and precision, none of that has any effect unless you delete the channels above and put that one on the top, making it Channel 0.

    Remember if your Channel 0 is the default (Long_Fast), and you send your location to the MQTT, technically anyone in the world will be able to see it.

One other thing about MQTT: allowing radio messages to be passed to MQTT by other devices. Above explains how you send information gets to and from MQTT via your own phone, or via the wifi (etc) of the device itself. The other way information gets to MQTT is if you are in range of someone elses MQTT-connected device. By default, if you send messages via radio, that’s where they stop, via radio, through the mesh. In Lora Config in the settings at the bottom, if you switch on OK to MQTT, they will also go to MQTT via other gateways in the mesh. By default, messages sent to the mesh from MQTT are passed on through the radio mesh, but using the default settings you won’t be able to reply to them unless you switch on OK to MQTT. The other side of that is that you can ignore all messages sent to the mesh via MQTT gateways so that you only see radio traffic and nothing that arrived via the internet. The switch for that is Ignore MQTT. Yes, it would make more sense if it was consistent and the default was to both ignore MQTT and not send anything to it, but by default it does not ignore it, it only sends to it. Also, all of this applies only to public messages like those in the basic LongFast channel. Private channels with their own PSK ignore all of this and use the Uplink / Downlink switches in the channel setting instead.

The Next Level

More some slightly more in-depth information, including Repeaters, Routers, Antennas and signal propagation, continue to The Next Level..


Any and all site feedback is welcome … [email protected]

Also check out my other free public projects including Getlost Maps – free topo maps of Australia.