ClientSetup

From Mesh Bahamas

Quick start guide for setting up a Meshtastic client to connect to Mesh Bahamas

Make sure the client role is set to "CLIENT". The "ROUTER" role should be reserved for only a handful of very strategically placed nodes throughout the network. When in ROUTER mode, the device will re-transmit anything it receives immediately. This may seem like a good idea, but with all of the nodes operating at the same frequency, two transmitting at once will simply step on each other's signal, corrupting the transmission. "ROUTER_LATE" is a middle ground between CLIENT and ROUTER, where the node will re-transmit everything, but after a random delay. This delay avoids stepping on other transmissions by randomly varying the delay. ROUTER_LATE is an appropriate setting for a node on the roof of a two story house on a hill, but a bad choice for node you carry in your pocket or keep on your desk.
Set timezone to EST5EDT,M3.2.0/2,M11.1.0/2
Enable position reporting. This is optional, and inaccuracy can be added to mitigate privacy concerns. Smart Position will only send a location broadcast to the mesh if your node has moved. This is helpful as it avoids unnecessary traffic on the mesh. GPS Mode likely should be set to NOT_PRESENT, the node will pull the location data from your phone. Fixed Position is useful if you have a remote node, or a node on your roof, that won't be moving around, and will not be connected via Bluetooth to a device with a GPS. The web app isn't able to actually set this position, but you can do it via the Android app by manually entering the coordinates, or via the iOS app by mirroring your device's current location, or connecting to the node with the Meshsense desktop app and dragging and dropping.
The radio's Region should be set to US, since we follow FCC rules for ISM 900 here. Hop limit should be low, but I've been increasing it to 6 while we build things out. With more nodes and more traffic, this will likely need to be turned back to the default of 3.MQTT should be enabled. This allows your node's traffic to be forwarded to the MESH.BS MQTT server by other nodes.
If your device will have a WiFi or Bluetooth connection, you should enable MQTT. MQTT is a messaging protocol that will bridge the mesh traffic to a server over IP. We want this not to extend the network to the Internet, but to mirror traffic for stats collection. This is where the data for the stats page http://mesh.bs:5008 comes from.
Root topic should be set to msh/BS, as our MQTT traffic gets forwarded to the primary MQTT server hosted by Meshtastic, and this will allow nodes to be easily filtered. Proxy to Client Enabled should be turned on for a mobile node that is typically paired with a phone. This allows the node to communicate with the MQTT server via the phone's Internet connection. Approximate location can be set to whatever you want it to be, in order to fudge your exact location.
The default channel on Meshtastic is called "LongFast". This is the public channel that most all devices will be set up to use. If we were to change these settings, we wouldn't be able to see any new users, or transient users. Uplink and Downlink refer to MQTT traffic. We want nodes to have Uplink enabled, to push stats to the server, but not Downlink messages. This can create loops, and it means you will be receiving messages over IP, not via the mesh, which is way less cool. Location accuracy can be adjusted here, just as it can when publishing to MQTT. You do not need to edit the existing PSK of AQ==.