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. 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 name, but in many apps is shown by default simply as Long_Fast to represent the modem preset you’re using. Channels are usually encrypted, but the default Long_Fast channel has basic default encryption 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.

The first channel in your device, the Primary Channel, is often 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 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 depending on the app you’re using, but in all cases you can select a name for a new channel, and a PSK. The PSK is the encryption key used to encode messages on this channel. For two nodes to use the same channel, they use the same channel name, and the same PSK. If you use a manually created channel (and PSK) as your Channel 0, only those with this same channel on their device will see your shared location, and they can chat with you on this channel too. After changing your default channel you could re-add the default Long_Fast as another channel on your device so you can chat with everyone, without disclosing your location to everyone.

Sharing channels manually requires you to share the Name and the PSK. With these, anyone can join that channel. A QR Code sharing method also exists within the sofware, allowing you to share your set of channels with someone else. Note that on the phone apps, this shares your entire set of current channels, not just one channel. When you import channels with this method, it also overwrites your entire set of channels so be sure to copy out any channel details you want to keep.

Channel Numbers = Frequency Slots

The first time you change your Channel 0 to something other than Long_Fast, it will also change your Channel Number – now also called the Frequency Slot in your device configuration under Lora. Yes, this old name was confusing and is still sometimes used. A Channel, as above, is a virtual ‘room’ which allows everyone on it to communicate with each other. A Channel Number/Frequency Slot is a totally different thing (don’t blame me, I didn’t create these confusing names). Changing the Channel Number is a physical change in the frequency your device uses. The default Channel Number in Australia is 20. The first time you change your Channel 0 to something other than the default Long_Fast, this will also automatically change your Channel Number, so you should go back into your settings and fix this, changing it back 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. The Channel Number will then be fixed and won’t change again by itself no matter what you do with your Channels.

Location

Your location is shared based on the Location configuration of your device. It can be time-based or 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 (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 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’ 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 a Channel, 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).

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).

The map in your app has other functions, including the ability to drop pins wherever you want, and set 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. Recent changes in the newest firmware mean that devices automatically use geographically based sub-folders automatically (note the main meshtastic website does not communicate this at the present time, but trust me). If your device is on older firmware you have not updated, you should correct this manually by changing the root folder from msh to msh/ANZ before connecting.

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. A local Australian-based MQTT server also currently exists at mqtt.meshtastic.au (on this domain) which was set up to overcome a specific problem which no longer exists (flooding/overloading). You can still use this local MQTT if you wish to for some reason, but you would not be part of the main Australian mesh if you do. It uses the same username and password as the global server – you literally just change the .org to .au.

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 as detailed above
  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. Send your settings
  8. For each channel you want connected to MQTT, go to the channel settings and switch on Uplink (send to the server) and Downlink (pull information from the server).

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

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.