forked from iarv/potato-mesh
update readme
This commit is contained in:
75
README.md
75
README.md
@@ -1,18 +1,81 @@
|
||||
# potato-mesh
|
||||
a simple node dashboard for berlin mediumfast
|
||||
|
||||
### requirements
|
||||
a simple meshtastic node dashboard for your local community. here: berlin mediumfast.
|
||||
|
||||

|
||||
|
||||
## status
|
||||
|
||||
in active development.
|
||||
|
||||
what works:
|
||||
|
||||
* updating nodes from a locally connected meshtastic device (via serial)
|
||||
* awaiting messages on default channel (0) from a local meshtastic device
|
||||
* storing nodes and messages in a local database (sqlite3)
|
||||
* displaying nodes ordered by last seen in a web app table view
|
||||
* displaying nodes by geographic coordinates on a map layer, coloured by device role
|
||||
* displaying new node notifications and chat messages in default channel in chat box
|
||||
|
||||
what does not work (yet):
|
||||
|
||||
* posting nodes and messages to the api endpoints (wip)
|
||||
|
||||
## requirements
|
||||
|
||||
requires a meshtastic node connected (via serial) to gather mesh data and the meshtastic cli.
|
||||
|
||||
### data
|
||||
requires the meshtastic python api for the database.
|
||||
|
||||
```bash
|
||||
python -m venv .venv
|
||||
source .venv/bin/activate
|
||||
pip install -U meshtastic
|
||||
```
|
||||
|
||||
requires latest ruby and ruby gems for the sinatra web app.
|
||||
|
||||
```bash
|
||||
gem install bundler
|
||||
bundle install
|
||||
```
|
||||
|
||||
### database
|
||||
|
||||
uses python meshtastic library to ingest mesh data into an sqlite3 database locally
|
||||
|
||||
run `nodes.sh` in `data/` to keep updating node records.
|
||||
run `mesh.sh` in `data/` to keep updating node records and parsing new incoming messages.
|
||||
|
||||
```bash
|
||||
MESH_SERIAL=/dev/ttyACM0 DEBUG=1 ./mesh.sh
|
||||
[...]
|
||||
[debug] upserted node !849b7154 shortName='7154'
|
||||
[debug] upserted node !ba653ae8 shortName='3ae8'
|
||||
[debug] upserted node !16ced364 shortName='Pat'
|
||||
[debug] stored message from '!9ee71c38' to '^all' ch=0 text='Guten Morgen!'
|
||||
```
|
||||
|
||||
enable debug output with `DEBUG=1`, specify the serial port with `MESH_SERIAL` (default `/dev/ttyACM0`).
|
||||
|
||||
### web app
|
||||
|
||||
### web
|
||||
uses a ruby sinatra webapp to display data from the sqlite database
|
||||
|
||||
run `app.sh` in `web/` to run the sinatra webserver and check [127.0.0.1:41447](http://127.0.0.1:41447/) for the correct node map.
|
||||
run `app.sh` in `web/` to run the sinatra webserver and check
|
||||
[127.0.0.1:41447](http://127.0.0.1:41447/) for the correct node map.
|
||||
|
||||
```bash
|
||||
API_TOKEN="1eb140fd-cab4-40be-b862-41c607762246" ./app.sh
|
||||
== Sinatra (v4.1.1) has taken the stage on 41447 for development with backup from Puma
|
||||
Puma starting in single mode...
|
||||
[...]
|
||||
* Environment: development
|
||||
* PID: 188487
|
||||
* Listening on http://127.0.0.1:41447
|
||||
```
|
||||
|
||||
set `API_TOKEN` required for authorizations on the api post-endpoints (wip).
|
||||
|
||||
### license
|
||||
|
||||
apache v2.0
|
||||
|
||||
BIN
scrot-0.1.png
Normal file
BIN
scrot-0.1.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 602 KiB |
Reference in New Issue
Block a user