Coverage Planning Tools Coverage Planning Tools Overview Coverage Planning Tools Overview Before deploying hardware, use these tools to estimate coverage, find line-of-sight paths, and identify gaps in your network. Most are free and browser-based. MeshCore-Specific Tools Tool URL What It Does NoDakMesh Node Planner nodakmesh.org/tools/node-planner Satellite + topographic map with line-of-sight analysis and live MeshCore node visibility. Best starting point for North American planning. MeshCore Live Map map.meshcore.dev Live worldwide visualization of MeshCore nodes that have reported their location. Meshtastic Tools Tool URL What It Does Meshtastic Site Planner site.meshtastic.org Estimates theoretical RF coverage from a location using terrain data. Enter coordinates and antenna height. Meshtastic World Map meshmap.net Real-time map of Meshtastic nodes worldwide that report to the public MQTT broker. General RF Planning Tools Tool URL What It Does HeyWhatsThat heywhatsthat.com Radio horizon visualization using terrain elevation data. Enter a location and see what is visible from that point. Radio Mobile Online radiomobile.pe1mew.nl Advanced RF propagation modeling with configurable transmit power, antenna gain, and receiver sensitivity. Supports point-to-point and coverage area analysis. SCADA Core RF LoS scadacore.com RF line-of-sight tool for quick path analysis between two coordinates. Planning Workflow Check existing nodes: Start with map.meshcore.dev or meshmap.net to see what already exists near your target area. Identify candidate sites: Use heywhatsthat.com to find hilltops, buildings, or towers with broad radio horizons. Model the path: Use Radio Mobile or the NoDakMesh node planner to estimate signal strength on key links. Validate with MeshMapper: After deployment, use MeshMapper wardriving to map actual measured coverage (see MeshMapper Wardriving Guide ). MeshMapper Wardriving Guide MeshMapper Wardriving Guide MeshMapper is a platform for mapping actual measured RF coverage of a MeshCore network - not just node locations, but real signal coverage at road level. This is the ground truth that theoretical planners cannot provide. Getting the App Android: Google Play - search "MeshMapper Wardriver" iOS: App Store - search "MeshMapper Wardriver" Web interface: wd.meshmapper.net The app is free . MQTT Observer Setup (Required) MeshMapper requires an MQTT connection to observe mesh traffic. Connect to one of these brokers before starting a session: mqtt-us-v1.letsmesh.net:443 (WebSocket TLS) mqtt.meshmapper.cc:443 (WebSocket TLS) Important: MeshCore devices only support one BLE connection at a time. Disconnect the MeshCore companion app before launching MeshMapper or the connection will fail. Operating Modes Mode Description Best For Hybrid (recommended) Alternates discovery requests and channel messages. 50% fewer transmissions than legacy Active mode. General wardriving - balances coverage data quality with network impact Passive Discovery requests every 30 seconds; no channel messages. Minimal network impact; good for densely populated mesh areas Manual Ping Single on-demand ping. Spot-checking coverage at a specific location without driving Active Legacy channel-message-only mode. Backward compatibility - Hybrid is superior in all cases Trace Focus on a single repeater identified by its hex node ID. Antenna alignment, diagnosing a specific repeater's coverage, post-installation validation Coverage Map Color Meanings Color Code Meaning Green BIDIR Two-way confirmed contact - gold standard coverage. Your device and the repeater can hear each other. Cyan DISC Discovery-based two-way confirmation - confirmed via discovery protocol rather than channel message. Orange TX Transmit-only path - your signal reaches the repeater but return path is incomplete (asymmetric link). Purple RX Receive-only - you can hear the repeater but it cannot hear you. Grey DEAD Signal heard but not relayed - marginal contact; unreliable for mesh routing. Red DROP No repeater responded - no coverage at this location. Wardriving Best Practices Mount your device with the antenna as high as practical in the vehicle (dashboard or roof magnet mount). Drive at normal road speeds - the app samples frequently enough. Cover roads in a grid pattern for systematic area mapping. Use Trace mode after installing a new repeater to confirm its actual coverage footprint. Share your coverage data back to the community map so others benefit. Meshtastic Range Testing Guide Overview Systematic range testing goes beyond "does it connect?" - it quantifies signal quality, identifies path bottlenecks, and produces evidence you can use to justify infrastructure decisions. This guide covers the four primary tools available in Meshtastic and a recommended workflow for comprehensive coverage analysis. Understanding Signal Quality Metrics Metric Excellent Good Marginal Likely Failure SNR > +10 dB +5 to +10 dB 0 to +5 dB < −5 dB RSSI > −90 dBm −90 to −110 dBm −110 to −120 dBm < −125 dBm Key point: SNR matters more than RSSI. LoRa can decode signals well below the noise floor - a weak signal in a quiet RF environment (high SNR) will decode reliably even at very low RSSI. Focus on SNR first. Tool 1 - Built-In Range Test Module The range test module sends periodic test packets and logs which nodes receive them, along with signal metrics. It is the most systematic way to characterize coverage from a fixed location. CLI Setup meshtastic --set range_test.enabled true meshtastic --set range_test.sender 30 The second command sets sender interval to 30 seconds. The node will transmit a test packet every 30 seconds. App Setup Settings > Modules > Range Test Enable the module Set sender interval Activate Sender mode on the mobile node Procedure Configure one node as the receiver (range_test enabled, sender off) at a fixed location - typically a repeater or infrastructure node. Configure a second node as the sender (range_test enabled, sender on) carried by a person or vehicle. Walk or drive away from the receiver. The receiver logs each packet with SNR and RSSI. Export logs to CSV for analysis. Tool 2 - Trace Route Trace Route reveals the actual path packets take through the mesh and reports per-hop signal quality. Use it to identify which routers packets are traversing and where bottlenecks are. CLI meshtastic --traceroute !nodeId App Long-press a node in the node list → select Trace Route . Output Trace Route shows each hop in the path, with SNR and RSSI for each segment. Use this to: Confirm which repeaters are actually routing your traffic Identify weak links in multi-hop paths Verify that a new repeater is being used as expected Tool 3 - Signal Metrics in Node List The node list provides a quick snapshot of signal quality for all recently heard nodes - useful for baseline assessment without active testing. CLI meshtastic --nodes Shows SNR and RSSI for the last received packet from each node Hop count Time since last activity GPS distance (if both nodes have GPS) Battery percentage Tool 4 - MeshMapper Wardriving MeshMapper is an Android app that combines GPS-tagged signal data into a visual coverage heatmap - ideal for documenting coverage of an entire neighborhood, event venue, or service area. Setup Install MeshMapper on an Android device. Connect a Meshtastic device via Bluetooth. Drive, walk, or cycle through the area you want to map. MeshMapper logs GPS coordinates with signal strength for each received packet. Upload to generate a coverage heatmap. Heatmap Colors Color Meaning Green Strong signal Yellow Marginal signal Red Weak signal Blank No coverage detected Recommended Testing Workflow Baseline: Check node list (Tool 3) for current signal quality across known nodes. Path analysis: Run trace routes (Tool 2) to all infrastructure nodes - confirm expected routing, identify weak hops. Coverage measurement: Deploy range test module (Tool 1) for systematic point-to-area coverage data from each infrastructure node. Area mapping: Conduct MeshMapper wardriving (Tool 4) for a comprehensive geographic coverage picture. Ongoing monitoring: Establish MQTT monitoring to continuously log SNR/RSSI from infrastructure nodes - enables detection of degraded links before users report problems. RF Coverage Prediction Tools Why Model Before Deploying Walking a coverage area with a radio after installing a repeater is valuable ground-truth - but it is expensive if the site turns out to be wrong. Free online tools let you model RF line-of-sight and rough coverage before committing to an installation, saving you a wasted site visit and hardware move. HeyWhatsThat (heywhatsthat.com) HeyWhatsThat is the best free tool for quickly visualising the radio horizon from a specific point. Enter the coordinates (or click a map) and elevation of your proposed repeater site. The tool generates a panoramic view and a map showing all terrain that is geometrically visible from that point. Accounts for Earth curvature and terrain elevation using SRTM data. Limitations: HeyWhatsThat does not account for buildings, vegetation, or local obstructions. It shows theoretical geometric visibility, not actual RF propagation. Use case: Quickly screen potential hilltop sites before visiting. A site with a 360° clear horizon is worth investigating; a site blocked by higher terrain in key directions is a red flag. Radio Mobile (radiomobile.ca) Radio Mobile is a more advanced free tool aimed at amateur and community radio network planning. Point-to-point path profiles: shows the terrain cross-section between two points with Fresnel zone visualisation, so you can see whether the path is truly clear. Coverage maps: generate area coverage maps from a repeater site given your TX power and antenna height. Supports custom frequency, antenna gain, and receiver sensitivity input - LoRa parameters can be modelled directly. Radio Mobile has a steeper learning curve than HeyWhatsThat but is much more capable for serious network planning. SPLAT! (Amateur Radio Propagation Tool) SPLAT! is an open-source Linux/macOS command-line tool for RF propagation analysis. Generates coverage maps using the ITM (Irregular Terrain Model) or ITWOM propagation model. More accurate than simple line-of-sight tools - accounts for diffraction over ridges. Requires downloading SRTM terrain data files for your region. SPLAT! is best suited to serious network planners who are building a community mesh from scratch and need repeatable, scriptable coverage analysis. Meshtastic Signal Mapper Some community tools (including extras around meshmap.net) allow you to import Meshtastic position data and visualise actual observed coverage on a map. Where real-world data already exists, this is more valuable than any theoretical model. Check your regional Meshtastic community's resources for existing coverage maps before starting your own modelling work. CloudRF / ORCA (Cloud-Based RF Planning) CloudRF is a commercial service with a free tier that generates RF coverage maps using the ITM/Longley-Rice model. Can account for clutter (buildings, forest) in some calculation modes. Easy web interface: enter site coordinates, antenna height, frequency, TX power, and antenna gain to get a shaded coverage map. The free tier allows a limited number of calculations per month - sufficient for planning a handful of repeater sites. CloudRF is a good middle ground between the simplicity of HeyWhatsThat and the complexity of SPLAT! for planners who want clutter-aware coverage maps without installing local software. Field Testing and Coverage Verification Why Field Test? Even the best RF prediction tools are only as good as their terrain models. Buildings, vegetation, and local obstructions can significantly degrade predicted coverage. Field testing confirms what the models predict - and reveals the surprises they miss. Basic Field Test Procedure Deploy the repeater at the proposed site, even temporarily on a tripod. Walk or drive the coverage area with a second device (phone running the Meshtastic app , or a handheld node). Record signal metrics at known locations: SNR (signal-to-noise ratio) and RSSI (received signal strength indicator). Note locations where packets stop getting through - this defines your coverage boundary. Compare results to your predicted coverage map and identify gaps or surprises. Understanding SNR and RSSI for LoRa RSSI is received signal power in dBm. Typical useful values for LoRa: −90 to −120 dBm. Below −120 dBm, reliability degrades rapidly. SNR is signal-to-noise ratio in dB. LoRa's key advantage over conventional radios is its ability to decode packets at negative SNR values. At SF11 (Long Fast preset), packets typically decode down to −17.5 dB SNR. Rule of thumb: SNR > 0 dB - strong signal. −5 to −10 dB - marginal but usable. Below −15 dB - at or near the noise floor; packet loss likely. Reading Signal Data in Meshtastic The Meshtastic app shows RSSI and SNR for each received packet in the message details view. This is real link-quality data from your actual deployment - use it as your primary signal source during field testing. Recording a Coverage Map Simple approach: note GPS coordinates alongside SNR and RSSI values in a spreadsheet while driving, then export the data to Google My Maps or another mapping tool. Automated approach: enable the Meshtastic Range Test module (Config → Module → Range Test). It automatically logs positions with signal data to a CSV file as you walk or drive the area. Visualisation: import the CSV into Google My Maps or QGIS to produce a signal-strength overlay map that you can compare directly against your predicted coverage. What to Look For Expected coverage but no packets: interference, antenna issue, wrong modem preset, or an obstruction absent from the terrain model. Better-than-expected coverage: diffraction over a ridge, reflections from buildings or open water. Unexpected dead zones: metal structures, buildings with metal roofing, or terrain features not captured in SRTM data. Iterating on the Design If field testing reveals coverage gaps, consider: adding a second repeater as a relay node, increasing antenna height, or repositioning the existing repeater. A 10-metre increase in antenna height can eliminate a surprisingly large dead zone - elevation is often more valuable than additional TX power. Mesh Network Capacity and Congestion LoRa Channel Capacity LoRa is a low-data-rate technology. Unlike Wi-Fi, the RF channel is shared by all nodes simultaneously using a CSMA-like approach combined with Meshtastic's flooding mesh mechanism. Understanding channel capacity helps you design a network that doesn't saturate itself. Airtime Utilisation Metrics Meshtastic displays Channel Utilization and Air Utilization percentages in the app. These are your primary indicators of network load. Channel Utilization > 25%: the network is busy. Messages may be delayed or dropped. Air Utilization > 15%: your specific node is contributing significant airtime. Reduce broadcast intervals. Sources of Traffic in a Mesh Position / NodeInfo broadcasts: each node announces itself every N minutes. In a 50-node network with 15-minute intervals, that is one NodeInfo broadcast every ~18 seconds on average - before any user traffic. User messages: text traffic generated by operators. Telemetry: device metrics (battery, voltage) and environmental sensor readings. ACKs and routing overhead: mesh protocol housekeeping packets. Traffic Reduction Strategies for Dense Networks Increase position broadcast interval to 30 - 60 minutes on non-mobile nodes. Disable telemetry on nodes where it is not needed. Use the Medium Slow or Medium Fast preset - the higher data rate means each packet occupies the channel for less time, even if physical range is unchanged. Use the REPEATER role instead of ROUTER for infrastructure nodes - less aggressive packet retransmission reduces redundant airtime. Limit hop count: most community networks set a maximum of 3 - 5 hops. Longer hop chains amplify traffic because each hop retransmits every packet. The Hop Storm Problem If many nodes retransmit the same packet, a single user message can trigger a burst of dozens of transmissions across the mesh. Meshtastic uses duplicate-packet detection to prevent routing loops, but in dense networks already near maximum airtime utilisation, a sudden burst of messages can temporarily saturate the channel and cause widespread packet loss. Keeping hop counts low and broadcast intervals long is the primary mitigation. Monitoring Your Network Use the Channel Utilization and Air Utilization figures in the Meshtastic app to assess local network load before and after adding new nodes. If deploying a new repeater in a dense area, monitor whether its addition increases congestion - a new high-visibility repeater with aggressive retransmission settings can increase channel load for every other node in range.