iz1kga / meshtastic-rpi-dashboard Goto Github PK
View Code? Open in Web Editor NEWLicense: Apache License 2.0
License: Apache License 2.0
I suggest to have an html file included on every page.
First thing I would wirte on the footer is the url of the original repository. Maybe this will help new developers find the code.
Make connection lines clickable and open an elevation chart.
Open-eveation API could be used.
The elevation chart could initially show one node per side, the direct line between the nodes and the distance.
TL;dr it doesn't run correctly.
The service starts and processes serial data.
However the service errors after a request to the webserver, like going to http://localhost:5000/
Using python3.9 and latest modules, here are steps I went thru to get the service running.
$ sudo vim /usr/local/lib/python3.9/dist-packages/flask/__init__.py
~~~ Line 14: from jinja2 import escape
--- Line 15: from jinja2 import Markup
~~~ Line 14: from markupsafe import escape, Markup
$ sudo vim /usr/local/lib/python3.9/dist-packages/flask/json/__init__.py
~~~ Line 15: from itsdangerous import json as _json
~~~ Line 16: from jinja2 import Markup
~~~ Line 15: import json as _json
~~~ Line 16: from markupsafe import Markup
$ sudo vim /usr/local/lib/python3.9/dist-packages/flask/json/tag.py
~~~ Line 49: from jinja2 import Markup
~~~ Line 49: from markupsafe import Markup
$ sudo vim /usr/local/lib/python3.9/dist-packages/iMeshDashboard/__init__.py
self.interface = meshtastic.SerialInterface()
self.interface = meshtastic.serial_interface.SerialInterface()
# to fix error "Cannot import name 'BaseResponse' from 'werkzeug.wrappers'"
# use version werkzeug==2.0.3
$ sudo pip install werkzeug==2.0.3
Trap and log messages sent or repeated by node.
These could be displayed on messages_log page.
Render map of received nodes directly on dashboard.
I suggest to move the actual index.html to private/index.html and move the REST routing logic accordingly.
Doing so we would then have a new short public landing page available.
Improve, header footer and pages styles.
Wrap the app in a docker container
On the map, connect nodes with lines if they heard eachother directly
Mesh statistics:
Node statistics:
Duty cicle statistics:
Add an header file on every page.
This could contain the menubar.
These infos could be either automated with the install or simply added to the documentation.
Keep it mind that while the service is running no commandline meshtastic **** can be run as the communication with the board is locked.
Anyway here are the instructions..
As root, create /etc/systemd/system/iMeshDashboard.service
[Unit]
Description=iMeshDashboard service
[Service]
Type=oneshot
ExecStart=/bin/sh -c "/usr/local/bin/iMeshDashboard"
ExecStop=/bin/sh -c "killall -9 iMeshDashboard"
[Install]
WantedBy=multi-user.target
As root enable the new service
systemctl enable iMeshDashboard
The start it
systemctl start iMeshDashboard
You might wnat to ctrl+c after a few seconds
You can control its status via
systemctl status iMeshDashboard
And stop it with
systemctl stop iMeshDashboard
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.