2025-03-07 22:06:16 -08:00
2025-03-05 16:11:40 -08:00
2025-01-20 13:54:22 -08:00
2025-03-07 22:06:16 -08:00
2024-08-21 20:51:25 -07:00
2025-02-23 14:30:47 -08:00
2025-01-20 12:41:47 -08:00
2024-05-09 20:00:00 -07:00
2024-05-09 20:00:00 -07:00
2025-03-07 22:06:16 -08:00
2025-03-05 16:45:26 -08:00
2025-03-05 16:11:40 -08:00
2025-03-07 22:06:16 -08:00

Meshview

node This project watches a MQTT topic for meshtastic messages, imports them to a database and has a web UI to view them.

An example of a currently running instace for the San Francisco Bay Area mesh runs at https://meshview.bayme.sh

Requires python3.11 or above.

Preparing

Clone the repo from github with:

git clone --recurse-submodules https://github.com/pablorevilla-meshtastic/meshview.git

Note

It is important to include the --recurse-submodules flag or the meshtastic protobufs won't be included.

Create a python virtual environment:

cd meshview
python3 -m venv env

Install the environment requirements:

./env/bin/pip install -r requirements.txt

You also need to install graphviz:

sudo apt-get install graphviz

Copy sample.config.ini to config.ini:

cp sample.config.ini config.ini

Edit config.ini and change the MQTT server, and Web server settings as necsessary.

nano config.ini
[server]
bind = *
port = 8081
tls_cert = 
acme_challenge = 

[mqtt]
server = mqtt.bayme.sh
topics = ["msh/US/bayarea/#", "msh/US/CA/mrymesh/#"]
port = 1883
username = meshdev
password = large4cats

[database]
connection_string = sqlite+aiosqlite:///packets.db

Running Meshview

Start the database connection.

./env/bin/python startdb.py

Start the web server.

./env/bin/python main.py

Now you can hit http://localhost:8081/ (if you did not change the web server port )

You can specify the path to your config.ini file with the run command argument --config

./env/bin/python main.py --config /path/to/config.ini
Description
No description provided
Readme 7.6 MiB
Languages
Python 74.3%
HTML 24.7%
Shell 0.4%
JavaScript 0.3%
Dockerfile 0.2%