mirror of
https://github.com/eddieoz/LoRa-Mesh-Analyzer.git
synced 2026-03-28 17:42:59 +01:00
master
Meshtastic Network Monitor
An autonomous Python application designed to monitor, test, and diagnose the health of a Meshtastic mesh network. It identifies "toxic" behaviors, congestion, and configuration issues that can degrade network performance.
Documentation
Full documentation is available in the docs/ directory:
- Usage Guide: How to run the monitor (USB/TCP) and command-line options.
- Configuration Guide: Detailed explanation of
config.yamlsettings. - Report Generation: How to use the
report_generate.pytool. - Architecture: Overview of the codebase structure and components.
Quick Start
-
Install Dependencies:
pip install -r requirements.txt -
Configure: Copy
sample-config.yamltoconfig.yamland edit it:cp sample-config.yaml config.yaml nano config.yaml -
Run:
python3 main.py
Features at a Glance
- Passive Health Checks: Detects congestion (>25% ChUtil), spam (>10% AirUtil), and bad topology.
- Auto-Discovery: Automatically finds and tests important nodes (Routers, Repeaters).
- Active Testing: Performs traceroutes to map the network and find dead zones.
- Route Analysis: Identifies critical relays and bottlenecks.
- Reporting: Generates detailed Markdown and HTML reports with network insights.
- Data Persistence: Saves all data to JSON for future analysis.
Project Structure
mesh_analyzer/: Core application logic.scripts/: Utilities likereport_generate.py.reports/: Output directory for reports and data.docs/: Detailed documentation.
Languages
Python
100%