Step 1 - !! Make sure you have an antenna on your node - if you don't you can burn out your radio !! Never power up your node (radio) without these antennas!!
Depending on your node you may need multiple antennas, one for the LoRa radio & one for the Bluetooth radio
If you have GPS this will need an antenna also
Step 2 - Power up your node
Step 3 - Open up the Meshtastic App on your iOS or Android device - Note: this guide was created using the Android App. The Android & iOS app ARE different. Will hopefully have an iOS specific guide available soon.
Step 4 - Connect to the Node via Bluetooth - Use the + symbol towards the bottom of the Tab with the gear in a box and look for the node, typically only Meshtastic Nodes will show as available
Step 5 - You will need to enter a connection code
- On a Meshtastic device with a screen a 6 digit code will appear on the screen, enter this code
- On a Meshtastic device without a screen enter the code "123456"
Step 6 - The node should connect - it may take a minute for the node to swap information with the app, be patient
Step 7 - Set the region (to side of node name towards the top) to "US"
Step 8 - Select the three dots at the top of the App - this will open a menu
Step 9 - Select "Radio Configuration"
Step 10 - Select "User"
Step 11: Under "Long name" enter the name you would like for the node
Step 12: Under "Short name" enter the 4 digit (or less) short name for the node
Step 13: Select "Send" at the bottom - the node may disconnect or restart
Step 14: Select "Channels"
Step 15 - Verify that "LongFast" is Channel 0 (There should be no other Channels)
Step 16 - Select Channel 0 "LongFast"
Step 17 - Verify Channel Name is "LongFast" & PSK is "AQ==" - this must match to communicate with the other nodes in our Mesh
Step 18: Select "Save" at the bottom - the node may disconnect or restart
Step 19: Select Lora
Step 20: Verify "Use mode preset" is enabled
Step 21: Verify that Modem preset is set to "LONG_FAST"
Step 22: Verify that Frequency Offset is set to 0.0
Step 23: Verify that Region is set to United States and Hop Limit is set to 5
Step 24: Verify that "Override frequency is set to 906.875
Step 25: Select "Send" at bottom of page - the node may disconnect or restart
Congrats! Your node should now be setup to be found by our mesh! Once your node comes within range of another node with the same settings they will automatically mesh and begin exchanging information. Generally I like to leave the node alone for roughly 24hrs and just see what it can connect to. If you don't see anything within that time frame take your node on a trip and see if you can find a connection somewhere close by. Currently there are good pockets of nodes that can be found in Evans Town Center and Grovetown off of Exit 190.
What is MQTT?
The Meshtastic website lists MQTT as: "MQTT - Bridging mesh networks over the internet and integrating Meshtastic protocols with popular technologies such as Home Assistant, Node Red, and Adafruit IO." See the link for more information from their webpade on MQTT.
MQTT is a database/message broker tool that allows nodes to share data across the internet in addition to across LoRa RF. Once connected the information from nodes can be aggregated for mesh analysis, a mesh map can be created from multiple mesh areas, or messages can be relayed to remote nodes. While in many way MQTT defeats the purpose of using Meshtastic (a large reason to use Meshtastic is its ability to work without internet connections) we are using the data to analyze our mesh as we work to build it out and connect new areas. Currently we are using MQTT as a means to understand and analyze our existing RF mesh. Being able to log what nodes can see in real time is vital to understanding RF connections in the real world and work out where gaps in communication exist.
For more information on Meshtastic and MQTT see the official Meshtastic webpage here: https://meshtastic.org/docs/software/integrations/mqtt/
How do I setup my node for MQTT?
If you would like to contribute by connecting your node(s) to our MQTT broker and provide telemetry we ask that you consider the following:
Are you a part of the CSRA Mesh community? MQTT data is very useful, but if you aren't in our community then the data you are providing will likely distort the data we need for our analysis rather than helping. If you would like to have MQTT setup for your community, there are ways to do this and we would be happy to help point you in the right direction.
What do you want from the MQTT connection? We are only covering uploading to the MQTT broker for mesh analyzing, we are not connecting distant nodes for messaging or to relaying from one mesh to another. If you are looking to use MQTT as a bridge then let us know and we'll help you look into a solution. At this point we are only gathering data to help us understand and analyze the mesh.
To join our MQTT broker you will need to configure the following settings:
>>Radio Configuration
> Channels:
LongFast (primary)
Uplink Enabled: Checked
Downlink Enabled: Unchecked
Position enabled: Checked
Precise Location: user preference
Precision Slider: user preference
> LoRa:
Ignore MQTT: Unchecked
OK to MQTT: Checked
>> Module Configuration
> MQTT:
MQTT Enabled: Checked
MQTT Server Address: mqtt.csramsh.net
MQTT Username: csramsh
MQTT Password: csramsh
Encryption Enabled: Checked
JSON Enabled: Unchecked
TLS Enabled: user preference *
Root topic: msh/US/GA/csramsh
Proxy to client: enabled (for node connected to a cell phone - uses your cellular data for data connection)
Map reporting: Checked
Map reporting interval (seconds): 10800
Precise location: user preference
Precision Slider: user preference
* enabling TLS encrypts the data transmitted between MQTT clients and the broker for increased security, but is not supported on all platforms.
> Neighbor Info:
Neighbor Info enabled: Checked
Update interval (seconds): 14400
Transmit over LoRa: Unchecked
These settings should setup your node to connect to and share the data with our MQTT broker. If you have trouble or questions reach out to us on Discord or Facebook.
What are OTA Firmware Updates?
Some nodes allow updating the firmware via an OTA Bluetooth connection. This can be very useful for nodes that are placed out of easy reach - i.e. solar nodes, rooftop nodes, treetop nodes, etc. Not all nodes are capable of this but some nrf52 chip set nodes have the capability using a process called OTA (or Over-The-Air) Firmware Updates. At this point I have only tested with a Rak Wisblock RAK4631 chip set, please do some research for other nodes with nrf52 chip sets before you try.
PLEASE NOTE: Updating firmware can fail and brick devices. Do your research and if possible perform a test update with a node you can easily reach to do a recovery on before you try to update a node that is difficult to reach! Meshtastic has done a great job of making it possible to recover nodes if the process fails, but this typically requires direct access to the node with a USB cable. If you have questions or concerns feel free to reach out on our social media and we'll be glad to help out.
What you need:
nrf52 node - typically a Rak Wisblock RAK4631 node.
An Android phone or tablet
The nRF DFU (Device Firmware Update) App made by Nordic Semiconductor from the Android Play Store (currently version 4.29.1) - https://play.google.com/store/apps/details?id=no.nordicsemi.android.dfu&pcampaignid=web_share
Special firmware from Meshtastic designed for OTA updating.
Make sure you have a solid Bluetooth connection to the node and do NOT disconnect once you start the process.
Have more questions? Here are some useful links:
https://meshtastic.org/docs/getting-started/flashing-firmware/nrf52/ota/
This is the Youtube video I used to update my first OTA node and create this guide: https://youtu.be/HzqVUMs_yOg?feature=shared
First - go ahead and prepare your firmware.
1. Go to https://meshtastic.org/docs/getting-started/flashing-firmware/nrf52/ota/
2. This will direct you to the https://meshtastic.org/downloads/
3. Go to the bottom of the page to "Firmware" and select the firmware type you want: Stable, Alpha, or Bleeding (typically you want Stable)
4. This will take you to the current version of the Meshtastic Firmware download page on the Meshtastic Github
5. Scroll down to "Assets"
6. Locate the "nrf52" zip file - Note: you want the "firmware-nrf52840-x.x.x" NOT the one that has "elfs" in the name
7. Select the desired zip file and it should download
8. Unzip the file - this will open to show a lot more zip files. These are copies of this version of firmware for different devices, made to be delivered in different ways.
9. Find the zip file that has the correct device model and "ota" in the name - if using a Rak Wisblock RAK4631 then look for 4631 and ota in the name
10. Note where you have the file so you can find it later in the process
First part is done!
BEFORE PROCEEDING: MAKE SURE TO BACK UP YOUR SECURE KEYS AND ANY OTHER INFO YOU NEED FROM THE NODE! Once you start the process you will be unable to recover anything from the node.
Perform an OTA Firmware Update
1. Make sure you have disconnected from any nodes you want to update (i.e. disconnect in the Meshtastic App)
2. Open the nRF DFU App you previously installed
3. Start scanning
4. Pick the node from the list of devices
5. Choose Connect by that node
6. Should show the device information
7. Choose the (DFU) option in the upper right hand corner (all the way at the top) of the app
8. Choose the "Distribution Packet (ZIP)" option from the pop-up menu
NOTE:
When you choose the file it starts to the update, make sure you are ready to proceed BEFORE choosing the file!
Remember to use the "ota" version specific to this node model!
9. Choose the firmware file you would like to install
10. Wait and watch as it installs. - This will be somewhat slow, so expect at least 3-7 minutes. The app will show a progress bar with connection speeds as it updates.
11. Once complete the node will take a minute or two to load the firmware and restart. Give it a few minutes then follow the process in the Meshtastic App to connect to a new node (typically the node will have been reset during the process).
12. Setup your updated node as desired. Don't forget to restore your Security Keys if needed.
Congrats! You've just completed an OTA Firmware Update!