Meshtastic MQTT Connect by pdxlocations
Many thanks to and inspiration from: https://github.com/arankwende/meshtastic-mqtt-client & https://github.com/joshpirihi/meshtastic-mqtt
Requires packages: Meshtastic, Paho-MQTT v2, Tkinter, cryptography which might be installed with:
pip3 install meshtastic paho-mqtt tk cryptography
*** Mac OS Sonoma (and maybe others) *** There is an upstream bug in Tkinter where mouse clicks in the UI are not registered, unless the mouse is in motion. The current workaround is to move the application window away from it's opening state, and/or move the mouse slightly while clicking. This is a bug with TCL Version 8.6.12 and is apparently fixed in 8.6.13
TLS is supported by entering a broker ending in `:8883` You will need to install a valid cacert.pem file.In the directory in which you run Meshtastic-MQTT-Connect run the following commands once:
pip3 install certifi
ln -s `python3 -c 'import certifi ; print(certifi.where())'` cacert.pem
To view the interactive map you may need to install folium with
pip3 install folium
In meshtastic-mqtt-connect.py set record_locations = True
in the configuration options around line 44.
After you've connected to a channel for some time and received location information from at least one station, open mmc-map.py and enter your channel name.
Run mmc-map.py and a file will be generated called mmc-map.html which may be opened in a browser.