On this page
Every number on this site comes either from a named source or from a formula on this page. Nothing is a guess dressed up as a measurement.
Specs and prices
- Specs come from the maker's product page or datasheet and from the Meshtastic hardware list. When the two disagree, we use the maker's figure and note it.
- Prices are the lowest listed price of the 868 or 915 MHz version at the named shop on the date shown, before shipping, tax and duties. Prices are re-checked regularly. If a field is unknown, the table shows a dash instead of an estimate.
- Currencies are converted with the European Central Bank reference rate of the update day, only for budget filters. Displayed prices stay in the shop's currency.
Range calculator
- Receiver sensitivity comes from the preset: if the data file has a documented figure we use it, otherwise the standard LoRa formula: sensitivity (dBm) = -174 + 10 x log10(bandwidth in Hz) + noise figure (6 dB) + SNR limit of the spreading factor (from -7.5 dB at SF7 to -20 dB at SF12, Semtech SX1262 datasheet).
- Link budget = transmit power + antenna gain at both ends - cable loss - sensitivity.
- Path loss follows the log-distance model: loss(d) = free-space loss at 1 m + 10 x n x log10(d), with n = 2.0 for open line of sight, and our assumptions of 2.5 rural, 2.8 suburban, 3.3 dense city and 3.5 forest, inside the 2 to 5 range that radio textbooks give for outdoor links. The radio limit is the distance at which loss equals the link budget minus a 10 dB fade margin.
- Horizon = 4.12 x (square root of h1 + square root of h2) km, heights in metres, using the 4/3 effective earth radius.
- Estimate = the smaller of radio limit and horizon. Fresnel radius at the midpoint = square root of (wavelength x d/2 x d/2 / d). Keep 60% of it clear.
This is a planning model. Terrain, buildings, vegetation and interference make real links shorter, and elevated sites make them longer.
Airtime in the presets table
Time on air uses Semtech's LoRa formula (application note AN1200.13) with a 16-symbol preamble, explicit header, CRC on, and low data rate optimisation when a symbol lasts longer than 16 ms. We show it for 50-byte and 200-byte packets.
Battery calculator
Runtime (h) = capacity (mAh) x usable share / average current (mA). Presets use the measurements listed with their sources on the battery calculator page.
Device finder
Devices are first filtered by your must-haves, band and budget, then scored: +3 for each matching use tag, a weighted bonus for the features that matter for that use (for example an nRF52 chip for a solar node), and a small bonus for a lower price. The weights are in the page's script, readable by anyone.
What we don't do
No invented test results, no star ratings, no paid placements. If we ever measure something ourselves, the page will say exactly how.