Every protocol described in this book, every mesh route, every encrypted tunnel, every LoRa chirp — all of it ultimately runs on physical hardware. Silicon, copper, aluminum, lithium. Circuit boards bolted to mast poles in thunderstorms. Solar panels on rooftops collecting photons to keep a Raspberry Pi alive through the night. Antennas radiating electromagnetic waves across valleys where no fiber optic cable will ever be laid because no corporation will ever find it profitable.
Hardware is where alternative networking gets real. You can simulate a mesh protocol on your laptop all day long, but the network does not exist until you mount a weatherproof enclosure on a rooftop, aim an antenna at a neighboring node, and power the whole thing from a source that will keep running when the grid goes down. The hardware choices you make will determine your network’s range, reliability, throughput, power consumption, and cost — and unlike software, hardware mistakes cost real money and real time to fix.
This chapter is a comprehensive guide to the hardware you need to build every type of alternative network discussed in this book. We will cover routers, single-board computers, LoRa radios, antennas, power systems, cables, connectors, radio equipment, and complete builds at three budget levels. We will compare specific products with tables you can reference when placing orders. And we will discuss where to buy, how to avoid counterfeits, and how to source equipment for community-scale deployments.
A word of caution before we begin: hardware specifications and availability change faster than any book can track. The specific models recommended here were current as of early 2026, but manufacturers release new revisions, discontinue old ones, and change chipsets without changing model numbers. Always check the current specifications, firmware compatibility, and community reports before purchasing. The principles — what to look for, what tradeoffs matter, what to avoid — are far more stable than any specific product recommendation.
Before you open a browser tab to your favorite electronics retailer, you need to answer several questions. The answers will narrow your options dramatically and prevent the most common mistake in alternative networking: buying hardware that is technically impressive but wrong for your specific situation.
Purpose. What will this hardware do? A mesh backbone node on a rooftop has completely different requirements than a portable LoRa messenger in a backpack. A community gateway that routes traffic for fifty users needs different hardware than a single-user access point. Define the role before you shop for parts.
Environment. Will this hardware live indoors in a climate-controlled room, or outdoors on a pole exposed to sun, rain, ice, and wind? Outdoor deployment demands weatherproof enclosures rated IP65 or better, operating temperature ranges that match your climate, and UV-resistant materials. Indoor deployment is far more forgiving but still requires adequate ventilation and power.
Power budget. Every watt matters in alternative networking. A device that draws 15 watts is trivial to power from a wall outlet but requires a substantial solar panel and battery system for off-grid deployment. A device that draws 1 watt can run for days on a small battery and needs only a modest solar panel. Power consumption is often the single most important specification for off-grid and remote nodes.
Budget. Alternative networking is supposed to be accessible. A mesh node that costs $500 is impressive technology but will never scale to a community deployment where you need twenty of them. The sweet spot for community mesh nodes is typically $30–$100 per unit. LoRa nodes can be built for $15–$40. The most expensive components in most deployments are the antennas and mounting hardware, not the electronics.
Skill level. Some hardware is plug-and-play. Flash the firmware, configure via web interface, mount it, done. Other hardware requires soldering, custom enclosures, Linux system administration, and the ability to debug kernel driver issues at 2 AM while balanced on a ladder. Be honest about your team’s capabilities — and remember that in a community deployment, the hardware must be maintainable by whoever takes over when the original builder moves away.
The maker community loves to build from scratch. There is real value in understanding every component of your network hardware — and real satisfaction in a node that works because you designed and assembled it yourself. But building from scratch has costs: time, debugging, reliability, and supportability.
Buy commercial, flash open-source firmware is the sweet spot for most deployments. A TP-Link router running OpenWrt combines the reliability of commercial hardware (proper RF shielding, regulatory certifications, tested antenna designs) with the flexibility and auditability of open-source software. A LILYGO T-Beam running Meshtastic firmware gives you a LoRa mesh node without touching a soldering iron.
Build from components when commercial options do not meet your needs — custom antenna designs, unusual frequency combinations, specialized sensor integration, or extreme power optimization. Just understand that you are trading development time and debugging effort for flexibility.
Used enterprise networking equipment is one of the best-kept secrets in alternative networking. When corporations upgrade their infrastructure, they dump perfectly functional hardware for pennies on the dollar. A Ubiquiti NanoStation M5 that cost $80 new sells for $15–$25 used on eBay. Enterprise-grade managed switches that retailed for $500 show up in surplus for $40. Thin clients — those stripped-down x86 PCs that companies used as terminal machines — make excellent low-power network appliances for $20–$30 used.
The risks of used equipment are real but manageable: no warranty, unknown history, potentially degraded components (especially fans and electrolytic capacitors), and the possibility of compromised firmware. Always flash fresh firmware on used networking equipment. Inspect electrolytic capacitors for bulging or leaking. Test all ports. And buy from sellers with return policies.
Refurbished equipment from reputable sellers is a middle ground — tested, cleaned, and sold with a short warranty, usually at 40–60% of retail price. For enterprise Ubiquiti and MikroTik gear, this is often the best value proposition.
# Quick calculator: power budget for a solar-powered node
def solar_budget(device_watts, hours_per_day=24, sun_hours=4,
battery_days=2, panel_efficiency=0.8):
"""Estimate solar panel and battery size for an off-grid node."""
daily_wh = device_watts * hours_per_day
battery_wh = daily_wh * battery_days
panel_watts = daily_wh / (sun_hours * panel_efficiency)
print(f"Device: {device_watts}W continuous")
print(f"Daily consumption: {daily_wh} Wh")
print(f"Battery needed: {battery_wh} Wh ({battery_wh/12:.1f} Ah @ 12V)")
print(f"Solar panel needed: {panel_watts:.0f}W minimum")
return {"battery_wh": battery_wh, "panel_watts": panel_watts}
# Example: Raspberry Pi 4 + USB Wi-Fi adapter
solar_budget(device_watts=7, sun_hours=5)
Routers are the workhorses of alternative networking. A properly chosen router running open-source firmware can serve as a mesh node, a wireless access point, a VPN endpoint, a firewall, a traffic shaper, a captive portal, and a dozen other roles — all simultaneously. The key requirement is open-source firmware support, because the stock firmware on consumer routers is almost universally terrible: limited features, infrequent security updates, and no ability to run mesh protocols.
OpenWrt is the gold standard for open-source router firmware. It transforms consumer routers into fully-featured Linux networking appliances with package management, a web interface (LuCI), and support for virtually every networking protocol discussed in this book. If a router runs OpenWrt well, it can do almost anything you need.
GL.iNet makes small, affordable routers that ship with OpenWrt-based firmware out of the box. They are designed for the exact use cases this book covers: travel routers, VPN clients, mesh nodes, and IoT gateways. Their documentation is good, their hardware is reliable, and their community is active.
GL-MT300N-V2 (Mango). The entry-level champion. About the size of a matchbox, powered by USB, and costs under $25. It has a MediaTek MT7628NN processor, 128 MB RAM, and 2.4 GHz Wi-Fi only. Its limitations are real — 100 Mbps Ethernet, no 5 GHz radio, limited processing power — but for a basic mesh node, a portable VPN client, or a LoRa gateway companion, it is hard to beat for the price. It runs OpenWrt flawlessly.
GL-AR750S (Slate). The mid-range workhorse. Dual-band Wi-Fi (2.4 GHz + 5 GHz), Qualcomm QCA9563 processor, 128 MB RAM, 16 MB flash plus a MicroSD slot, and gigabit Ethernet. It costs around $60–$70 and handles most mesh networking tasks with ease. The MicroSD slot is particularly valuable — it provides storage for logs, cached content, or a local file server. This is the router I recommend most frequently for community mesh deployments.
GL-MT3000 (Beryl AX). The performance option. MediaTek MT7981B with Wi-Fi 6 (802.11ax), 512 MB RAM, 256 MB flash, 2.5 Gbps WAN port, and USB 3.0. At around $90, it is the most capable GL.iNet travel router, suitable for high-throughput mesh backbone nodes or as a primary gateway. OpenWrt support is solid, though some Wi-Fi 6 features may require the vendor’s firmware fork.
TP-Link routers are everywhere — in retail stores, in closets, in the recommendation lists of every networking forum. Their OpenWrt support varies by model and hardware revision, so always check the OpenWrt Table of Hardware before purchasing.
Archer C7 (v2, v4, v5). The legendary budget dual-band router. Qualcomm Atheros chipset, 128 MB RAM, simultaneous dual-band, gigabit Ethernet, and rock-solid OpenWrt support. Discontinued by TP-Link but widely available used for $15–$30. The Atheros chipset provides excellent open-source driver support — a critical factor for mesh networking, where the Wi-Fi driver must support ad-hoc mode or 802.11s mesh.
Archer AX23 (v1). A newer Wi-Fi 6 option, but verify the hardware revision carefully. Some revisions use chipsets with poor open-source support. When compatible, it offers a significant performance upgrade over the C7 at a similar price point (~$50–$60 new).
The Linksys WRT3200ACM deserves mention as one of the most powerful consumer routers with full OpenWrt support. Marvell Armada 385 dual-core at 1.8 GHz, 512 MB RAM, 256 MB flash, MU-MIMO, and a legacy of Linux-friendliness dating back to the original WRT54G that kickstarted the open-source router movement. It is expensive ($150+ used) and overkill for most mesh nodes, but makes an excellent central gateway.
The EdgeRouter X (ER-X) is a five-port gigabit wired router with a MediaTek MT7621 processor, 256 MB RAM, and EdgeOS (Vyatta/Debian-based) firmware. It costs about $50–$60 and offers enterprise-grade routing features — BGP, OSPF, firewall rules, VPN — in a palm-sized package. It can also run OpenWrt. As a wired-only device, it pairs naturally with separate wireless access points for mesh deployments where you want to separate the routing and wireless functions.
Ubiquiti Networks dominates the WISP (Wireless Internet Service Provider) and community network space for good reason. Their hardware is purpose-built for outdoor wireless deployment, with integrated antennas, PoE power, and weatherproof enclosures.
airMAX lineup:
UniFi lineup is designed for managed indoor/outdoor Wi-Fi deployments with centralized controller software. Less relevant for decentralized mesh networks, but useful for community networks that need centralized management. The UniFi AP AC Lite and U6 Lite are popular access points for community spaces, libraries, and other indoor locations that serve as network hubs.
Note: Ubiquiti uses proprietary protocols (airMAX, airOS) that do not interoperate with standard Wi-Fi mesh protocols. Their equipment is excellent for point-to-point and point-to-multipoint links within a planned network architecture, but not for ad-hoc mesh networking with OpenWrt.
MikroTik is the power user’s choice. Their RouterOS operating system is extraordinarily capable — arguably the most feature-rich router OS available — but has a steep learning curve. Their hardware ranges from $25 entry-level devices to multi-hundred-dollar carrier-grade equipment.
hAP lite (RB941-2nD). The entry-level model. 650 MHz MIPS CPU, 32 MB RAM, four 100 Mbps Ethernet ports, 2.4 GHz Wi-Fi. At around $25, it is comparable to the GL-MT300N in price but offers RouterOS’s superior feature set. However, 32 MB RAM limits what you can do, and OpenWrt support is less polished than on dedicated OpenWrt platforms.
hAP ac² (RB952Ui-5ac2nD). The sweet spot. Quad-core 716 MHz ARM CPU, 128 MB RAM, five gigabit Ethernet ports, simultaneous dual-band Wi-Fi, PoE input and output on port 5. Around $55–$65. Enough power for mesh routing, VPN, and serving as a local gateway. PoE passthrough is a killer feature — it means you can daisy-chain devices without additional power supplies.
SXTsq Lite5. An outdoor 5 GHz CPE with integrated 16 dBi antenna, PoE powered, weatherproof. Direct competitor to the Ubiquiti NanoStation at a similar price. Runs full RouterOS, which means you can run BGP, OSPF, or any other routing protocol directly on the radio — no separate router needed.
| Model | Price (USD) | CPU | RAM | Ports | Wi-Fi | OpenWrt | Best For |
|---|---|---|---|---|---|---|---|
| GL-MT300N-V2 | ~$25 | MT7628 580 MHz | 128 MB | 2×100M | 2.4 GHz b/g/n | ✅ Excellent | Portable nodes, LoRa gateways |
| GL-AR750S | ~$65 | QCA9563 775 MHz | 128 MB | 3×1G | Dual-band ac | ✅ Excellent | Community mesh nodes |
| GL-MT3000 | ~$90 | MT7981B 1.3 GHz | 512 MB | 1×2.5G + 1×1G | Wi-Fi 6 ax | ✅ Good | Backbone gateways |
| TP-Link Archer C7 | ~$25 used | QCA9558 720 MHz | 128 MB | 5×1G | Dual-band ac | ✅ Excellent | Budget mesh nodes |
| TP-Link Archer AX23 | ~$55 | MT7621 880 MHz | 256 MB | 5×1G | Wi-Fi 6 ax | ⚠️ Check rev | Budget Wi-Fi 6 nodes |
| Linksys WRT3200ACM | ~$150 used | Armada 385 1.8 GHz | 512 MB | 5×1G | Dual-band ac MU-MIMO | ✅ Excellent | Central gateways |
| EdgeRouter X | ~$55 | MT7621 880 MHz | 256 MB | 5×1G | None | ✅ Good | Wired routing, VPN |
| MikroTik hAP ac² | ~$60 | IPQ4018 716 MHz | 128 MB | 5×1G | Dual-band ac | ⚠️ Partial | RouterOS mesh/gateway |
| Ubiquiti LiteBeam 5AC | ~$55 | Atheros | 64 MB | 1×1G PoE | 5 GHz ac | ❌ No | PtP backbone links |
| MikroTik SXTsq Lite5 | ~$45 | AR9344 600 MHz | 64 MB | 1×1G PoE | 5 GHz n | ⚠️ Partial | Outdoor CPE, PtP links |
Routers are optimized for one thing: moving packets. When your node needs to do more — run a Matrix server, host an IPFS node, operate a LoRa gateway, collect sensor data, serve as a Tor relay, or run custom application code — you need a general-purpose computer. Single-board computers (SBCs) fill this role: full Linux machines the size of a credit card, drawing a few watts of power, costing $15–$100.
The Raspberry Pi is the SBC that everyone knows, and for good reason. Massive community, enormous ecosystem of accessories and cases, excellent documentation, and Raspberry Pi OS (Debian-based) is as polished as any desktop Linux distribution.
Raspberry Pi 5. The current flagship. Broadcom BCM2712 quad-core Arm Cortex-A76 at 2.4 GHz, 4 GB or 8 GB LPDDR4X RAM, dual 4Kp60 HDMI output, USB 3.0, PCIe 2.0, Gigabit Ethernet, and 802.11ac Wi-Fi with Bluetooth 5.0. At $60 (4 GB) or $80 (8 GB), it is a genuine desktop-class computer that can run demanding services — Matrix/Synapse, IPFS, Nextcloud, WireGuard VPN with hundreds of Mbps throughput. Power consumption is 3–7W depending on load.
The Pi 5’s main limitation for networking is that its built-in Wi-Fi cannot run in AP mode and client mode simultaneously on all drivers, and its single Ethernet port means you need a USB Ethernet adapter for routing between networks. The PCIe 2.0 slot (via HAT adapter) opens up possibilities for adding NVMe storage or specialized network cards.
Raspberry Pi 4 Model B. The previous generation, still widely available and capable. BCM2711 quad-core Cortex-A72 at 1.5 GHz, available in 2/4/8 GB RAM configurations, Gigabit Ethernet, dual-band Wi-Fi, USB 3.0. At $35–$75 depending on RAM, it handles most alternative networking tasks well. It draws 3–6W and runs cooler than the Pi 5.
Raspberry Pi Zero 2 W. The ultra-compact option. BCM2710A1 quad-core Cortex-A53 at 1 GHz, 512 MB RAM, 802.11b/g/n Wi-Fi, Bluetooth 4.2, mini HDMI, micro USB OTG. At $15, it is the cheapest way to get a full Linux computer with Wi-Fi. Its limitations are significant — 512 MB RAM constrains what services you can run, the single-core-equivalent performance is sluggish for anything compute-intensive, and the 100 Mbps USB-shared Ethernet (via adapter) is a bottleneck. But for a LoRa gateway, a lightweight mesh node, or a sensor aggregator, it is perfect.
# Check Raspberry Pi model and system resources
import subprocess, os
def pi_system_info():
"""Gather system info on a Raspberry Pi."""
info = {}
# CPU model
with open("/proc/cpuinfo") as f:
for line in f:
if "Model" in line:
info["model"] = line.split(":")[1].strip()
break
# Memory
mem = os.sysconf("SC_PAGE_SIZE") * os.sysconf("SC_PHYS_PAGES")
info["ram_mb"] = round(mem / (1024**2))
# CPU temperature
temp = subprocess.check_output(
["vcgencmd", "measure_temp"]).decode().strip()
info["cpu_temp"] = temp.replace("temp=", "")
return info
When Raspberry Pi supply shortages hit (as they did in 2021–2023), the community discovered that Chinese SBC manufacturers offer compelling alternatives — often at lower prices with comparable or superior specifications.
Orange Pi 5 features a Rockchip RK3588S with quad Cortex-A76 + quad Cortex-A55 cores, 4–16 GB RAM, M.2 NVMe slot, Gigabit Ethernet, and Wi-Fi 6. At $70–$130 depending on RAM, it significantly outperforms the Raspberry Pi 5 in raw compute. The trade-off is less polished software support — driver issues, less community documentation, and occasional kernel bugs. For experienced Linux users who need more power, it is an excellent choice.
Banana Pi BPI-R3 is specifically designed for networking. MediaTek MT7986 (Filogic 830) with dual-band Wi-Fi 6, two 2.5G Ethernet ports plus a 5-port gigabit switch, SFP cage, M.2 for NVMe or 4G/5G modem, and USB 3.0. At around $80–$100, it is essentially a high-performance router/gateway on an SBC form factor. OpenWrt support is available. If you need a custom gateway or mesh backbone node with serious throughput, the BPI-R3 is hard to beat.
Orange Pi Zero 3 is the budget contender at $20–$30. Allwinner H618 quad-core Cortex-A53, 1–4 GB RAM, Gigabit Ethernet, Wi-Fi 5. Less powerful than a Pi 4 but significantly cheaper and almost always in stock.
The BeagleBone family takes a different approach than the Raspberry Pi. While Pis are general-purpose computers, BeagleBones emphasize real-time I/O through their PRU (Programmable Real-time Unit) subsystems — dedicated microcontroller cores that can handle timing-critical tasks without the jitter of a Linux kernel.
BeagleBone Black (AM3358 Cortex-A8, 512 MB RAM, ~$55) is the classic model. Its PRUs make it excellent for interfacing with radio hardware that requires precise timing — packet radio TNCs, custom LoRa implementations, or SDR applications. It runs Debian well but has less community support than the Raspberry Pi ecosystem.
BeaglePlay is the newer model with an AM6254 processor, Gigabit Ethernet, Wi-Fi 6, BLE, and a SubGHz radio — making it a compelling all-in-one platform for IoT gateway and alternative networking applications.
Do not overlook x86 mini PCs and recycled thin clients. These are the secret weapons of budget network builders.
Used enterprise thin clients — HP t620, Dell Wyse 5070, Lenovo M710q — can be found for $20–$50 on eBay and surplus sites. They typically feature Intel or AMD x86 processors, 4–8 GB RAM (upgradeable), Gigabit Ethernet, and USB 3.0. They run any standard Linux distribution without the driver compatibility issues that sometimes plague ARM SBCs. They draw 7–15W, which is more than a Raspberry Pi but still modest enough for solar deployment.
The Intel N100 generation of mini PCs (from manufacturers like Beelink, MinisForum, CWWK) has become particularly popular for network appliances. Quad-core, 6W TDP, hardware AES acceleration (critical for VPN throughput), and often available with dual or quad 2.5G Ethernet ports. At $100–$150, they make outstanding pfSense/OPNsense firewalls, VPN concentrators, or mesh gateway routers with throughput that no ARM SBC can match.
| Model | Price (USD) | CPU | RAM | Ethernet | Wi-Fi | Power (W) | Best For |
|---|---|---|---|---|---|---|---|
| Raspberry Pi 5 (4 GB) | ~$60 | BCM2712 A76 2.4 GHz | 4 GB | 1× Gigabit | ac + BT 5.0 | 3–7 | General services, gateways |
| Raspberry Pi 4 (4 GB) | ~$55 | BCM2711 A72 1.5 GHz | 4 GB | 1× Gigabit | ac + BT 5.0 | 3–6 | Mesh nodes, VPN, IPFS |
| Raspberry Pi Zero 2 W | ~$15 | BCM2710 A53 1 GHz | 512 MB | None (USB) | b/g/n + BT 4.2 | 0.4–1 | LoRa gateways, sensors |
| Orange Pi 5 (4 GB) | ~$70 | RK3588S big.LITTLE | 4 GB | 1× Gigabit | Wi-Fi 6 opt. | 3–10 | High-performance services |
| Banana Pi BPI-R3 | ~$90 | MT7986 Filogic 830 | 2 GB | 2× 2.5G + 5×1G | Wi-Fi 6 ax | 5–12 | Custom routers, gateways |
| Orange Pi Zero 3 (1 GB) | ~$22 | H618 A53 1.5 GHz | 1 GB | 1× Gigabit | ac + BT 5.0 | 1–3 | Budget mesh nodes |
| BeagleBone Black | ~$55 | AM3358 A8 1 GHz | 512 MB | 1× 100M | None | 1–2.5 | Real-time I/O, radio TNC |
| HP t620 (used) | ~$30 | AMD GX-415GA 1.5 GHz | 4 GB | 1× Gigabit | None | 7–12 | VPN, firewall, routing |
| Intel N100 Mini PC | ~$120 | N100 Alder Lake 3.4 GHz | 8 GB | 2× 2.5G | Wi-Fi 6 opt. | 6–15 | pfSense, high-throughput VPN |
LoRa (Long Range) is the defining radio technology of low-power alternative networking. As covered in Chapter 5, LoRa uses chirp spread spectrum modulation to achieve remarkable range — kilometers in urban environments, tens of kilometers with line of sight — at data rates measured in kilobits per second and power consumption measured in milliamps. The hardware ecosystem has matured rapidly, and there are now excellent options at every price point and capability level.
The LILYGO T-Beam is the most popular LoRa development board for Meshtastic mesh networking, and it has earned that position through a combination of features that no competitor matches at the price.
T-Beam v1.1. The workhorse. ESP32 dual-core processor, SX1276 (868/915 MHz) or SX1262 LoRa radio, NEO-6M GPS, 18650 battery holder with charging circuit, OLED display header, and Wi-Fi/Bluetooth. It costs $25–$35 and runs Meshtastic firmware out of the box. Pop in an 18650 battery and you have a complete portable mesh node that lasts 2–4 days on a single charge. The SX1276 version provides good range but is being superseded by the SX1262 in newer hardware.
T-Beam v1.2 (SX1262). The current standard version. Replaces the SX1276 with the Semtech SX1262, which offers better receiver sensitivity (-137 dBm vs -148 dBm), lower power consumption in receive mode, and support for LoRa’s long-range mode. The GPS is upgraded to a NEO-8M. Everything else remains similar. At $30–$40, it is the recommended T-Beam for new purchases.
T-Beam Supreme. The premium option. Replaces the ESP32 with the ESP32-S3 (dual-core LX7, USB-C native), uses the SX1262 radio, adds a BME280 environmental sensor, and upgrades the GPS to an L76K with better accuracy. The S3’s native USB makes firmware updates and debugging easier. At $45–$55, it costs more but eliminates several annoyances of the older designs.
Heltec makes compact LoRa boards that integrate an OLED display directly onto the PCB — a small but useful feature for debugging and status display.
Heltec LoRa 32 V3. ESP32-S3, SX1262 radio, 0.96” OLED display, USB-C, and a small lithium battery connector. At $18–$25, it is cheaper than the T-Beam but lacks the built-in GPS and 18650 battery holder. For fixed-location nodes where GPS is unnecessary and power comes from USB, it is an excellent value. It runs Meshtastic, but adding GPS requires an external module.
Heltec Wireless Stick Lite. The minimalist option. ESP32-S3 + SX1262, no display, no GPS. Under $15. The cheapest path to a LoRa mesh node. Useful for building a large number of sensor relay nodes where every dollar matters.
RAK Wireless takes a modular approach with the WisBlock system. A base board (RAK19007 or similar) provides power management and connectors, and you snap in modules: a core processor board, a LoRa radio board, a GPS module, sensors, and I/O boards. This modularity lets you build exactly the node you need without paying for components you do not use.
RAK4631 (nRF52840 + SX1262) is the core module. The Nordic nRF52840 processor draws dramatically less power than the ESP32 — a RAK4631 Meshtastic node can run for a week or more on a single 18650 battery, compared to 2–4 days for a T-Beam. The trade-off is that the nRF52840 has no Wi-Fi — configuration is via Bluetooth only.
RAK19007 base board + RAK4631 core + RAK12500 GPS module gives you a complete Meshtastic node for about $40–$50 in parts. Add a RAK1906 (BME680 environmental sensor) for air quality monitoring, or a RAK12002 (RTC) for accurate timekeeping without GPS.
The WisBlock system is the best choice for deploying large numbers of sensor-equipped LoRa nodes. Its modular design means you can standardize on a platform and customize per-node functionality without maintaining separate hardware designs.
For custom builds and integration projects, standalone LoRa transceiver modules provide the radio hardware without a processor, display, or any other peripherals.
Semtech SX1276. The older generation, operating at 137–1020 MHz with LoRa modulation. Maximum +20 dBm transmit power, -148 dBm receiver sensitivity (in LoRa mode). Still widely available and supported, but the SX1262 is superior in every measurable way.
Semtech SX1262. The current generation. Better sensitivity, lower power consumption (especially in receive mode — 4.6 mA vs 10.8 mA for the SX1276), support for both LoRa and FSK modulation, and a simplified SPI interface. Modules based on the SX1262 (like the EBYTE E22-900T) cost $5–$10 and can be connected to any microcontroller with SPI.
These modules are for people who want to build custom hardware — integrate LoRa into a weather station, an animal tracker, a water level monitor, or any other application where a development board is too large, too expensive, or too power-hungry. Expect to do your own PCB design or at minimum some careful breadboard wiring.
LoRaWAN — the MAC layer protocol that runs on top of LoRa’s physical layer — requires gateways that bridge between the LoRa radio network and an IP network (local or internet). These are more substantial (and expensive) devices than individual LoRa nodes.
RAK7268V2 (WisGate Edge Lite 2). An indoor LoRaWAN gateway with SX1302 concentrator, 8-channel receive, Ethernet and Wi-Fi backhaul, and built-in network server. At $120–$150, it is the most cost-effective way to deploy a full LoRaWAN network. Supports The Things Network, ChirpStack, and other LoRaWAN network servers.
Dragino LPS8N. Another indoor 8-channel LoRaWAN gateway, similar in capability to the RAK7268V2 but typically $10–$20 cheaper. It runs OpenWrt, which means you can customize it extensively. Build quality is acceptable but not as refined as RAK.
The Things Indoor Gateway (TTIG). The simplest path to The Things Network. A compact, plug-and-play LoRaWAN gateway that connects via Wi-Fi and registers automatically with TTN. At $80–$100, it sacrifices configurability for simplicity — ideal for expanding TTN coverage in an area without running your own network server.
For outdoor deployment, the RAK7289V2 and Dragino DLOS8 provide weatherproof enclosures with PoE power and external antenna connectors, at $200–$350.
| Model | Price (USD) | MCU | LoRa Chip | GPS | Display | Battery | Best For |
|---|---|---|---|---|---|---|---|
| LILYGO T-Beam v1.2 | ~$35 | ESP32 | SX1262 | NEO-8M | Optional | 18650 holder | Meshtastic portable nodes |
| LILYGO T-Beam Supreme | ~$50 | ESP32-S3 | SX1262 | L76K | Optional | 18650 holder | Premium Meshtastic nodes |
| Heltec LoRa 32 V3 | ~$22 | ESP32-S3 | SX1262 | None | 0.96” OLED | LiPo conn. | Fixed indoor nodes |
| Heltec Wireless Stick Lite | ~$14 | ESP32-S3 | SX1262 | None | None | None | Budget relay nodes |
| RAK4631 (WisBlock core) | ~$20 | nRF52840 | SX1262 | Optional | Optional | Via base | Ultra-low-power nodes |
| RAK WisBlock full kit | ~$45 | nRF52840 | SX1262 | RAK12500 | Optional | Base board | Sensor + mesh nodes |
| SX1262 module (EBYTE) | ~$7 | None | SX1262 | None | None | None | Custom integration |
| RAK7268V2 gateway | ~$135 | MT7628 | SX1302 8-ch | N/A | N/A | N/A | Indoor LoRaWAN gateway |
| Dragino LPS8N | ~$115 | MT7628 | SX1302 8-ch | N/A | N/A | N/A | Budget LoRaWAN gateway |
| TTIG | ~$90 | ESP32 | SX1308 8-ch | N/A | N/A | N/A | Plug-and-play TTN |
# Estimate LoRa link budget
def lora_link_budget(tx_power_dbm=22, tx_antenna_dbi=3,
rx_antenna_dbi=3, rx_sensitivity_dbm=-137,
cable_loss_db=1, margin_db=10):
"""Calculate maximum path loss for a LoRa link."""
max_path_loss = (tx_power_dbm + tx_antenna_dbi + rx_antenna_dbi
- cable_loss_db - margin_db
- rx_sensitivity_dbm)
# Free-space estimate at 915 MHz
import math
freq_mhz = 915
max_distance_km = 10 ** (
(max_path_loss - 32.44 - 20 * math.log10(freq_mhz)) / 20)
print(f"Max path loss: {max_path_loss} dB")
print(f"Free-space range: {max_distance_km:.1f} km")
return max_path_loss, max_distance_km
lora_link_budget()
Here is a truth that experienced radio operators know and beginners invariably learn the hard way: the antenna matters more than the radio. A $20 LoRa module with a well-designed antenna mounted at height will outperform a $60 module with the stock rubber-duck antenna sitting on a desk. Doubling your transmit power (which costs money, drains batteries, and may violate regulations) gives you 3 dB of gain. Replacing a poor antenna with a good one can give you 6–12 dB of gain — equivalent to multiplying your transmit power by 4 to 16 times, for free, with no additional power consumption.
Understanding antennas is not optional for alternative networking. This section will give you enough knowledge to choose, evaluate, and deploy antennas for any scenario you are likely to encounter.
An omnidirectional antenna radiates equally in all horizontal directions — picture a donut-shaped radiation pattern with the antenna at the center hole. It does not transmit upward or downward (much), concentrating energy in the horizontal plane.
Ground-plane verticals are the simplest omni antennas. A quarter-wave whip over a ground plane (which can be a metal sheet, a set of radial wires, or the ground plane built into a PCB) provides about 2–3 dBi gain. The stock antennas shipped with most LoRa boards and routers are variations of this design.
Collinear antennas stack multiple half-wave elements vertically to increase gain. A typical 5.8 dBi omni for 915 MHz is about 50 cm long. An 8 dBi omni is about a meter. Higher gain means a flatter, more horizontally concentrated radiation pattern — excellent for serving clients spread out around a tower, but poor for connecting to nodes at significantly different elevations.
Fiberglass whip antennas are the most common commercial omni antennas for outdoor use. They are weatherproof, durable, and available in gains from 3 to 12 dBi for various frequency bands. An 868/915 MHz fiberglass omni with 5–6 dBi gain costs $15–$30 and is the standard recommendation for LoRa base station antennas.
Use cases: Mesh nodes that need to communicate with nodes in all directions. Central access points serving clients around a tower. LoRa gateways covering an area.
Directional antennas concentrate energy in one direction, providing high gain in exchange for a narrow beam. They are essential for point-to-point links and useful for covering a specific area.
Yagi-Uda antennas (commonly just “Yagi”) are the classic directional antenna — the TV antenna your grandparents had on their roof. A Yagi consists of a driven element, a reflector behind it, and one or more directors in front. More directors mean higher gain and narrower beam. A 3-element Yagi provides about 7–8 dBi, a 7-element about 10–12 dBi. For 915 MHz, these are physically small — a 7-element Yagi is about 60 cm long. For 2.4 GHz or 5 GHz Wi-Fi, they are even smaller. Yagis are inexpensive ($15–$40), easy to aim, and available for every frequency band used in alternative networking.
Panel antennas (also called patch antennas or flat panels) provide moderate gain (8–18 dBi) in a compact, weatherproof flat form factor. They are easier to mount than Yagis and more aesthetically discreet. Ubiquiti’s NanoStation and LiteBeam products use integrated panel antennas. Standalone panel antennas are available for $20–$60 and pair well with separate radios.
Parabolic dish antennas provide the highest gain of any antenna type — 24 to 34+ dBi is common. They focus energy into a very narrow beam (3–10 degrees), making them ideal for long-range point-to-point links but requiring precise alignment. A 60 cm dish at 5 GHz provides about 28 dBi gain, enough for stable links over 20+ km with modest radios. Dishes are bulky, wind-loaded, and require careful mounting, but for backbone links they are unmatched.
Sector antennas are a hybrid: directional in the horizontal plane (typically 60°, 90°, or 120° beam width) but broad in the vertical plane. They are the standard choice for serving multiple clients from a tower — mount three 120° sectors and you cover 360° with the gain of a directional antenna in each sector.
Sector antennas are expensive ($60–$200+) and designed for WISP and community network backbone deployments. If you are serving more than a handful of clients from a single location, sectors are the right answer.
One of the joys of alternative networking is that antennas are one of the few radio components you can build yourself with common materials. The physics are well understood, the designs are published, and the construction requires no specialized tools.
Cantenna (waveguide antenna). The legendary Pringles-can antenna. A quarter-wave probe inside a metal cylinder acts as a waveguide antenna with 8–12 dBi gain. Any metal can of the right diameter works — the critical dimension is the can’s internal diameter relative to the wavelength. For 2.4 GHz Wi-Fi, cans with 76–101 mm internal diameter work well. The probe is a short piece of copper wire or a modified N-type connector. Total cost: $5 in parts plus a food can. Total time: 30 minutes.
Biquad antenna. Two diamond-shaped loops of copper wire mounted a quarter-wavelength in front of a flat reflector. A properly built biquad provides 10–12 dBi gain with a clean radiation pattern. The design is forgiving — it works well even with imprecise construction. For 2.4 GHz, each diamond is about 30.5 mm per side. For 915 MHz, scale up proportionally. Total cost: $5–$10 in copper wire and reflector material.
For both DIY designs, the critical factor is the feed point connection — the junction between the antenna and the coaxial cable. A sloppy solder joint or impedance mismatch here will waste more signal than the antenna design gains. Use proper connectors and keep the connection short and clean.
Coaxial cable connects your antenna to your radio, and it is where signal goes to die. Every meter of coax cable loses signal — and the loss increases dramatically with frequency. At 2.4 GHz, cheap RG58 cable loses about 0.8 dB per meter. That means a 10-meter cable run loses 8 dB — equivalent to reducing your transmit power by more than 80%. Even LMR-400 (the standard for low-loss outdoor installations) loses about 0.22 dB per meter at 2.4 GHz.
The rule: keep cable runs as short as possible. Mount the radio at the antenna whenever you can (this is why PoE exists — to send power up the cable instead of bringing the antenna down to the radio). If you must use a cable run, use LMR-400 or equivalent for runs over 3 meters, and LMR-200 or RG-58 only for short pigtails under a meter.
Common connectors:
Choosing the right antenna is a matter of matching the radiation pattern to your deployment geometry:
| Scenario | Antenna Type | Gain | Beam Width |
|---|---|---|---|
| Mesh node serving nearby neighbors | Omni 5–6 dBi | 5–6 dBi | 360° horizontal |
| LoRa gateway covering a valley | Omni 6–8 dBi | 6–8 dBi | 360° horizontal |
| Point-to-point link 1–5 km | Yagi or panel | 10–16 dBi | 30–60° |
| Point-to-point link 5–20 km | Panel or dish | 16–28 dBi | 10–30° |
| Backbone link 20+ km | Parabolic dish | 24–34 dBi | 3–10° |
| Serving clients in one direction | Sector 90–120° | 12–17 dBi | 90–120° |
| Indoor Wi-Fi access point | Stock omni | 2–4 dBi | 360° |
| Portable/handheld LoRa | Whip/rubber duck | 1–3 dBi | 360° |
# Free-space path loss calculator
import math
def fspl(distance_km, freq_mhz):
"""Calculate free-space path loss in dB."""
return 20 * math.log10(distance_km) + 20 * math.log10(freq_mhz) + 32.44
def required_antenna_gain(distance_km, freq_mhz, tx_power_dbm,
rx_sensitivity_dbm, margin_db=10):
"""Calculate total antenna gain needed for a link."""
path_loss = fspl(distance_km, freq_mhz)
needed = path_loss + margin_db - tx_power_dbm + rx_sensitivity_dbm
gain_per_antenna = max(0, needed / 2)
print(f"Path loss at {distance_km} km / {freq_mhz} MHz: {path_loss:.1f} dB")
print(f"Required gain per antenna: {gain_per_antenna:.1f} dBi")
return gain_per_antenna
# Example: 5 km LoRa link at 915 MHz, 22 dBm TX, -137 dBm RX
required_antenna_gain(5, 915, 22, -137)
The most elegant mesh protocol in the world is useless if the hardware it runs on has no electricity. Power is the unglamorous foundation of every alternative network — and it is the component that fails first in emergencies, the component most often under-designed, and the component that determines whether your network is truly independent or just a grid-dependent hobby.
PoE is the unsung hero of outdoor network deployments. Instead of running separate power and data cables to a rooftop or pole-mounted device, PoE sends DC power over the Ethernet cable alongside data. One cable, one run, one set of connectors to weatherproof.
802.3af (PoE). Delivers up to 15.4W at the powered device. Sufficient for most access points, LoRa gateways, and small routers. Virtually all Ubiquiti and many MikroTik devices accept 802.3af PoE.
802.3at (PoE+). Delivers up to 25.5W. Required for higher-power devices like some outdoor access points, cameras, and multi-radio units.
Passive PoE. Simpler (and cheaper) than 802.3af — just injects DC voltage (typically 24V or 48V) onto the unused pairs in the Ethernet cable. Many Ubiquiti airMAX devices use 24V passive PoE. Be careful: passive PoE provides no negotiation or protection. Plugging a passive PoE injector into a device that does not expect it can damage the device.
A PoE injector costs $10–$15 for passive, $20–$30 for 802.3af/at. A PoE switch — which provides PoE on every port — costs $50–$150 for an 8-port model and is the right choice when you have multiple PoE devices at one location.
For truly off-grid nodes, solar power is the primary energy source in most climates. Sizing a solar system correctly is the difference between a node that runs reliably for years and one that dies every cloudy afternoon.
Panel sizing formula: You need enough solar generation to cover the device’s daily consumption plus charging losses, divided by your location’s average peak sun hours.
\[P_{panel} = \frac{P_{device} \times 24}{H_{sun} \times \eta}\]Where $P_{panel}$ is panel wattage, $P_{device}$ is device power draw in watts, $H_{sun}$ is peak sun hours per day (3–6 depending on location and season), and $\eta$ is system efficiency (typically 0.7–0.85 accounting for charge controller losses, cable losses, temperature derating, and panel aging).
For a typical mesh node drawing 5W continuously:
Panel types:
For network node power, rigid monocrystalline panels in the 20W–100W range are the standard choice. A quality 50W panel costs $40–$80 and physically measures roughly 55 × 70 cm — small enough to mount alongside a weatherproof enclosure on a mast.
Batteries store energy for nighttime operation and cloudy days. The choice of battery chemistry has profound implications for cost, weight, cycle life, temperature tolerance, and safety.
LiFePO4 (Lithium Iron Phosphate). The best choice for permanent outdoor installations. 2000–5000 cycle life (vs. 300–500 for lead-acid), flat discharge curve (stable voltage throughout discharge), excellent temperature tolerance (-20°C to +60°C charging, wider for discharge), inherently safe chemistry (no thermal runaway), and 95% depth-of-discharge is safe (vs. 50% for lead-acid). A 12V 20Ah LiFePO4 battery costs $60–$120 and will last 5–10 years in a solar application. This is the clear winner for serious deployments.
Lead-acid (AGM or gel). The legacy choice. Heavy (3–4× heavier than LiFePO4 for equivalent capacity), limited cycle life (300–500 cycles at 50% DoD), requires oversizing by 2× to avoid deep discharge damage, and poor performance below 0°C. However, they are cheap ($30–$50 for a 12V 12Ah AGM battery), universally available, and well-understood. Acceptable for indoor installations and budget deployments where replacement every 2–3 years is acceptable.
Lithium-ion (18650 cells, LiPo packs). The standard for portable LoRa nodes (the T-Beam’s 18650 holder is designed for these). High energy density, 500–1000 cycles, good performance across a wide temperature range. Individual 18650 cells cost $3–$5 each and provide about 10–12 Wh. For portable nodes, a single 18650 is often sufficient. For larger applications, packs of multiple cells with a BMS (Battery Management System) are available but add complexity. LiPo packs require more careful handling (risk of fire if punctured or overcharged) than LiFePO4.
A charge controller sits between the solar panel and battery, regulating voltage and current to charge the battery safely and efficiently.
PWM (Pulse Width Modulation). The simple and cheap option ($10–$20). Works by rapidly switching the panel connection to the battery on and off. Effective when panel voltage matches battery voltage closely. For small systems (under 100W), PWM is adequate and cost-effective.
MPPT (Maximum Power Point Tracking). The efficient option ($30–$80). Uses a DC-DC converter to operate the panel at its optimal voltage regardless of battery voltage, extracting 15–30% more energy from the panel than PWM. Essential for larger panels and for systems where every watt matters — which, in off-grid networking, is most systems.
For a typical network node solar system (20–50W panel, 12V LiFePO4 battery), a small MPPT controller like the Victron SmartSolar 75/10 ($60) or a budget EP Solar Tracer BN series ($30–$40) is the right choice. Many cheap “MPPT” controllers sold on AliExpress are actually PWM controllers with misleading labeling — buy from reputable brands or verify with independent reviews.
Here is a reference design for a solar-powered outdoor mesh or LoRa node:
| Component | Example | Cost (USD) |
|---|---|---|
| Solar panel | 50W monocrystalline rigid | $50–$70 |
| Charge controller | MPPT 10A | $30–$50 |
| Battery | 12V 20Ah LiFePO4 | $70–$100 |
| DC-DC converter | 12V to 5V 3A buck (for Pi/LoRa) | $5–$10 |
| Fuse/breaker | Inline blade fuse holder + 10A fuse | $3–$5 |
| Wiring | 14 AWG solar cable, connectors | $10–$15 |
| Total | $168–$250 |
This system provides approximately 250 Wh of stored energy — enough to run a 5W node for over two days without any sun. With average solar conditions, it will sustain the node indefinitely.
Indoor networking equipment — your central gateway, your server, your PoE switch — benefits from a UPS (Uninterruptible Power Supply) to ride through short power outages. A basic 600VA UPS ($50–$80) provides 20–40 minutes of backup for a typical networking stack, which is enough to survive most power fluctuations and gives you time to gracefully shut down during extended outages.
For longer indoor backup, a small LiFePO4 battery with an inverter (12V 50Ah LiFePO4 + 300W pure-sine inverter, ~$150–$200) provides 4–8 hours of backup for modest equipment loads and doubles as emergency household power.
# Solar system sizing calculator
def solar_system(device_watts, sun_hours=4, backup_days=2,
battery_type="lifepo4"):
"""Size a solar system for a network node."""
daily_wh = device_watts * 24
dod = {"lifepo4": 0.9, "lead_acid": 0.5, "lithium_ion": 0.8}
efficiency = 0.8 # charge controller + wiring losses
bat_wh = (daily_wh * backup_days) / dod.get(battery_type, 0.8)
bat_ah_12v = bat_wh / 12
panel_w = daily_wh / (sun_hours * efficiency)
print(f"=== Solar System for {device_watts}W node ===")
print(f"Daily energy: {daily_wh} Wh")
print(f"Battery: {bat_wh:.0f} Wh ({bat_ah_12v:.0f} Ah @ 12V)")
print(f"Panel: {panel_w:.0f}W minimum (recommend {panel_w*1.3:.0f}W)")
print(f"Battery type: {battery_type} (DoD: {dod[battery_type]*100}%)")
solar_system(5) # LoRa node
solar_system(7) # Raspberry Pi mesh node
solar_system(15) # x86 mini PC gateway
Cables, connectors, enclosures, and mounting hardware are not exciting. Nobody writes blog posts about their cable choices. But these unglamorous components account for more network failures than any other category. A corroded connector, a water-infiltrated cable, a loose mounting bracket — these mundane failures take down more alternative network nodes than any hardware failure or software bug.
Indoor Ethernet is straightforward: Cat5e or Cat6 patch cables from any reputable manufacturer. Cat5e handles Gigabit Ethernet at up to 100 meters, which is sufficient for any indoor run. Cat6 provides better crosstalk performance and is required for 10 Gigabit Ethernet at shorter distances, but for most alternative networking purposes, Cat5e is fine.
Outdoor Ethernet requires cables specifically rated for outdoor use:
For outdoor runs to rooftop equipment, outdoor-rated shielded Cat5e/Cat6 is the standard. A 50-meter spool costs $30–$50. Always leave service loops (extra cable coiled at each end) for maintenance access.
If you mount an antenna on a pole or rooftop, you are creating a lightning rod. This is not optional safety theater — it is physics. A direct lightning strike will destroy everything connected to the antenna. Even a nearby strike can induce voltage surges on cables that damage equipment.
Grounding is the foundation of lightning protection. Every mast, antenna, and outdoor enclosure should be bonded to a ground rod with heavy-gauge copper wire (6 AWG or thicker). The ground rod should be driven at least 1.8 meters (6 feet) into the earth. In rocky or dry soil, multiple ground rods connected together may be needed for adequate conductivity.
Surge protectors on coaxial and Ethernet cables provide a sacrificial path for surge energy. An Ethernet surge protector ($10–$20) goes inline at the building entry point and diverts surges to ground. A coaxial surge protector ($15–$25) does the same for antenna cables. These are cheap insurance — replace them after any surge event (they may be damaged even if they protected the equipment).
Ubiquiti ETH-SP-G2 is a popular Ethernet surge protector specifically designed for PoE equipment. At about $12, there is no reason not to install one on every outdoor Ethernet run.
Outdoor electronics need enclosures rated IP65 or better:
ABS plastic junction boxes ($10–$25 depending on size) are the most common enclosures for outdoor network nodes. Choose a box with room for your electronics plus cabling, and add cable glands (waterproof cable entry fittings) for every cable that enters the box. Silicone sealant around cable glands and seams provides additional water protection.
Ventilation is a consideration in hot climates. A sealed box in direct sunlight can reach internal temperatures of 60–80°C — potentially exceeding the operating range of your electronics. Options include mounting the box in shade, using a vented enclosure (with filters to keep insects out), or adding a small fan controlled by a thermostat. White or reflective enclosures are significantly cooler than dark-colored ones.
Antenna masts come in several forms:
Chapter 9 covered packet radio and ham networks in detail. Here is the hardware to make it happen.
Baofeng UV-5R. The $25 radio that launched a million hams. Dual-band (VHF 144 MHz / UHF 430 MHz), 4–5W output, adequate receiver sensitivity, and build quality that is… let us say “budget-appropriate.” The UV-5R is not a great radio by any technical measure — its spurious emissions are borderline for FCC compliance, its receiver overloads easily near strong signals, and its ergonomics are confusing. But it works, it is absurdly cheap, and the accessories ecosystem is vast. For getting started with VHF/UHF packet radio and voice communications, it is hard to argue with the price. Requires an amateur radio license to transmit.
Alternatives: The Quansheng UV-K5 has gained popularity as a hackable alternative — its firmware can be modified to add features like spectrum analysis and wider receive range. The Yaesu FT-65R ($80) and Kenwood TH-D75A ($500, with built-in TNC and APRS) are higher-quality options for those who want better RF performance and durability.
For long-range (hundreds to thousands of kilometers) HF communication:
Yaesu FT-891. A compact 100W HF transceiver covering 1.8–54 MHz. At around $650, it is one of the most affordable all-band HF radios with excellent receive performance. Its compact size makes it suitable for portable and mobile operation. It can be connected to a Raspberry Pi running Direwolf or VARA for HF digital modes.
ICOM IC-7300. The gold standard for HF digital operation. 100W, built-in SDR architecture with real-time spectrum display, USB audio interface (eliminates the need for external sound cards), and superb receiver performance. At $1,000–$1,100, it is a significant investment, but if HF digital networking is a serious part of your alternative communications plan, it is worth every cent.
For emergency backup HF on a budget, the Xiegu G90 ($450) provides 20W HF with a built-in antenna tuner and reasonable performance, though it lacks the refinement of Yaesu and ICOM offerings.
RTL-SDR dongles ($20–$35 for the RTL-SDR Blog V4) are USB receivers covering 24 MHz to 1.7 GHz. They cannot transmit, but for monitoring, they are invaluable: scan for LoRa transmissions, monitor amateur radio frequencies, analyze spectrum usage, receive weather satellite images, decode ADS-B aircraft transponders, and debug RF issues. Every alternative networker should own one.
For transmit-capable SDR, the HackRF One ($300) covers 1 MHz to 6 GHz with half-duplex transmit and receive. It is a laboratory and research tool rather than a communications device — low power output and mediocre dynamic range limit practical use — but for developing and testing custom radio protocols, it is extraordinarily versatile.
A TNC (Terminal Node Controller) interfaces a radio with a computer for packet radio. Traditional hardware TNCs (like the Kantronics KPC-3+) are expensive and increasingly hard to find. The modern alternative is software TNC — specifically, Direwolf running on a Raspberry Pi or other Linux computer.
Direwolf connected to a Baofeng UV-5R via a $5 audio interface cable provides a complete packet radio station for under $40 (assuming you already have a Pi). Add VARA software for HF Winlink email, or connect to a BBS node for store-and-forward messaging. Chapter 9 covers the software configuration in detail.
# Simple RTL-SDR power scanner (requires pyrtlsdr)
# Scans a frequency range and reports signal levels
def scan_frequencies(center_mhz=915, bandwidth_mhz=2,
num_samples=256*1024):
"""Basic spectrum scan using RTL-SDR."""
try:
from rtlsdr import RtlSdr
sdr = RtlSdr()
sdr.center_freq = center_mhz * 1e6
sdr.sample_rate = bandwidth_mhz * 1e6
sdr.gain = 30
samples = sdr.read_samples(num_samples)
sdr.close()
import numpy as np
fft = np.fft.fftshift(np.fft.fft(samples))
power_db = 20 * np.log10(np.abs(fft) + 1e-10)
print(f"Peak power: {power_db.max():.1f} dB")
print(f"Noise floor: {np.median(power_db):.1f} dB")
except ImportError:
print("Install pyrtlsdr: pip install pyrtlsdr")
Theory is important, but what you really want to know is: what exactly do I buy to build a working network node? Here are three complete builds at three price points, each with a specific hardware list and use case.
Use case: Off-grid text messaging, GPS tracking, and sensor data sharing via Meshtastic. Range: 1–10+ km depending on antenna and terrain. Battery life: 2–5 days portable, indefinite with small solar panel.
| Component | Specific Model | Cost (USD) |
|---|---|---|
| LoRa board | LILYGO T-Beam v1.2 (SX1262, 915 MHz) | $32 |
| Battery | Samsung 25R 18650 2500mAh | $5 |
| Antenna | 915 MHz 3 dBi SMA whip | $4 |
| Case | 3D-printed or small ABS box | $5 |
| USB cable | USB-C for programming/charging | $3 |
| Total | ~$49 |
Setup: Flash Meshtastic firmware via the web flasher (flasher.meshtastic.org), configure via the Meshtastic phone app over Bluetooth, insert battery, attach antenna, and go. Upgrade path: add a 5–6 dBi fiberglass antenna ($20) for a fixed base station, or add a small solar panel ($15) and charge controller ($10) for permanent outdoor deployment.
Use case: Neighborhood mesh network providing local services (file sharing, messaging, DNS) and shared internet access. Covers a residential block with direct connections, or a few blocks with good antenna placement.
| Component | Specific Model | Cost (USD) |
|---|---|---|
| Router | GL.iNet GL-AR750S (Slate) | $65 |
| Outdoor AP | TP-Link CPE510 (5 GHz, 13 dBi) | $40 |
| SBC | Raspberry Pi 4 (2 GB) | $35 |
| MicroSD card | Samsung EVO 64 GB | $10 |
| PoE injector | Passive 24V for CPE510 | $10 |
| Ethernet cable | Cat5e outdoor-rated, 15m | $15 |
| Surge protector | Ubiquiti ETH-SP-G2 | $12 |
| Mounting bracket | J-mount for antenna/AP | $10 |
| Total | ~$197 |
Setup: Flash OpenWrt on the GL-AR750S, configure BATMAN-adv or Babel mesh on the 5 GHz radio, set up the 2.4 GHz radio as a local access point. Mount the CPE510 on the J-bracket at roof height, aimed toward neighboring mesh nodes. The Raspberry Pi runs local services — a Matrix chat server, a file share, a local DNS server. The GL-AR750S routes between the mesh network, the local access point, and (optionally) an upstream internet connection.
Use case: Solar-powered community network gateway providing mesh connectivity, LoRaWAN gateway, and local services. Designed for permanent outdoor deployment in a location with no grid power and no internet uplink.
| Component | Specific Model | Cost (USD) |
|---|---|---|
| Mini PC | Intel N100 4-port 2.5G (Topton/CWWK) | $135 |
| Outdoor radio | Ubiquiti LiteBeam 5AC Gen2 | $55 |
| Omni antenna | 5 GHz 8 dBi fiberglass | $25 |
| LoRa gateway | RAK7268V2 WisGate Edge Lite 2 | $135 |
| Solar panel | 100W monocrystalline rigid | $70 |
| Battery | 12V 30Ah LiFePO4 | $90 |
| Charge controller | Victron SmartSolar 75/10 MPPT | $60 |
| DC-DC converter | 12V to 12V/5V multi-output | $12 |
| PoE switch | 4-port passive PoE | $25 |
| Enclosure | IP65 ABS box, 400×300×180mm | $20 |
| Mounting/cabling | Mast, brackets, cable, glands | $40 |
| Lightning protection | Ethernet + coax surge protectors | $25 |
| Total | ~$492 |
Setup: This is a serious installation that requires planning. The N100 mini PC runs OPNsense or OpenWrt as a router/firewall, plus Docker containers for local services (Matrix, IPFS, Meshtastic MQTT bridge). The LiteBeam provides a high-speed backbone link to another node (or an internet uplink if one is available within range). The omni antenna serves local mesh clients. The RAK7268V2 provides LoRaWAN coverage for IoT sensors in the area. The solar system is sized for 3+ days of autonomy in cloudy conditions.
This build can serve as the central hub for a small community network — providing mesh connectivity, LoRa messaging, sensor data collection, and local services, all running on solar power with no monthly costs and no dependency on any external infrastructure.
Knowing what hardware you need is only half the battle. Knowing where to buy it — and how to avoid wasting money on counterfeits, incompatible versions, or poor-quality components — is equally important.
Amazon. Convenient, fast shipping, easy returns. Good for brand-name products (GL.iNet, Ubiquiti, Raspberry Pi). Prices are typically 10–30% higher than direct or AliExpress. The main risk is commingled inventory — Amazon mixes stock from different sellers in the same warehouse bin, which means a genuine product listing may occasionally ship a counterfeit item from another seller’s stock. Buy from “Ships from and sold by Amazon” or from the manufacturer’s official Amazon store when possible.
AliExpress. The primary source for Chinese-manufactured hardware: LILYGO, Heltec, RAK modules, EBYTE radio modules, antennas, cables, connectors, solar components, and enclosures. Prices are typically 30–50% lower than Amazon. Shipping takes 2–6 weeks (or pay extra for faster options). The risks are real: quality varies between sellers, product descriptions can be inaccurate or misleading, and returns are difficult. Mitigate by checking seller ratings, reading reviews (especially with photos), and ordering one unit to test before committing to a bulk purchase.
Manufacturer direct. Many alternative networking hardware manufacturers sell direct:
Direct purchases guarantee authenticity and often provide the latest hardware revisions. Prices are generally between AliExpress and Amazon.
Used equipment markets. eBay, local classifieds, surplus electronics dealers, and ham radio swap meets (hamfests) are excellent sources for used Ubiquiti gear, enterprise networking equipment, radios, and antennas. Check seller feedback, ask about hardware revision and firmware version, and factor in the cost of your time to test and configure used equipment.
Electronics distributors. Mouser, Digi-Key, and Farnell carry components, connectors, cables, and some complete boards. More expensive than AliExpress but guaranteed authentic, with proper datasheets and technical support. Use these for critical components where counterfeit risk is unacceptable — voltage regulators, protection components, and precision connectors.
Counterfeit electronics are a real problem, particularly for:
f3 (Fight Flash Fraud) before use.# Verify SD card capacity using f3-style test
import os, hashlib, tempfile
def test_sd_capacity(mount_path, block_size_mb=64):
"""Write and verify blocks to test real SD card capacity.
WARNING: This writes test files — use on a dedicated card."""
test_dir = os.path.join(mount_path, "capacity_test")
os.makedirs(test_dir, exist_ok=True)
block = os.urandom(block_size_mb * 1024 * 1024)
expected_hash = hashlib.sha256(block).hexdigest()
blocks_ok = 0
for i in range(1000): # Up to 64 GB
path = os.path.join(test_dir, f"block_{i:04d}.bin")
try:
with open(path, "wb") as f:
f.write(block)
with open(path, "rb") as f:
if hashlib.sha256(f.read()).hexdigest() == expected_hash:
blocks_ok += 1
else:
print(f"Corruption at block {i}!")
break
except OSError:
break
print(f"Verified: {blocks_ok * block_size_mb} MB real capacity")
When deploying a community network, buying individual units at retail prices adds up quickly. Twenty mesh nodes at $70 each is $1,400 — but buying components in bulk can reduce per-unit costs by 20–40%.
Strategies:
For any deployment larger than a personal project, create a formal Bill of Materials (BOM) spreadsheet that tracks every component, its source, cost, quantity, and lead time. This is not bureaucratic overhead — it is the document that lets you reorder parts, budget accurately, and hand the project off to someone else without losing institutional knowledge.
# Generate a Bill of Materials summary
def create_bom(items):
"""Create a formatted BOM from a list of components."""
total = 0
print(f"{'Component':<30} {'Qty':>4} {'Unit $':>8} {'Total $':>8}")
print("-" * 54)
for name, qty, unit_price in items:
line_total = qty * unit_price
total += line_total
print(f"{name:<30} {qty:>4} {unit_price:>8.2f} {line_total:>8.2f}")
print("-" * 54)
print(f"{'TOTAL':<30} {'':>4} {'':>8} {total:>8.2f}")
return total
# Example: 5-node mesh network deployment
bom = [
("GL-AR750S router", 5, 65.00),
("TP-Link CPE510", 5, 40.00),
("Cat5e outdoor cable 30m", 5, 18.00),
("PoE injector 24V", 5, 10.00),
("Surge protector", 5, 12.00),
("J-mount bracket", 5, 10.00),
("Weatherproof box", 5, 15.00),
("Spare routers", 1, 65.00),
("Spare CPE510", 1, 40.00),
("Cable ties + misc", 1, 20.00),
]
create_bom(bom)
This chapter has covered a lot of ground — routers, SBCs, LoRa boards, antennas, power systems, cables, radios, and sourcing. The sheer number of options can be paralyzing. So here are the decision rules distilled to their essence:
For a LoRa mesh (Meshtastic): Buy LILYGO T-Beam v1.2 boards. Add decent antennas. Power with 18650 batteries or small solar setups. Flash Meshtastic. Done. This is the fastest path from zero to a working alternative communications network.
For a Wi-Fi mesh network: GL.iNet GL-AR750S or similar OpenWrt routers for indoor/short-range nodes. Ubiquiti LiteBeam or TP-Link CPE510 for outdoor links. OpenWrt with BATMAN-adv or Babel for mesh routing. This is the standard architecture for community networks worldwide.
For a serious community gateway: Intel N100 mini PC or Banana Pi BPI-R3 for routing and services. Ubiquiti airMAX equipment for wireless backbone. Solar power with LiFePO4 batteries for off-grid sites. This is how you build infrastructure that lasts.
For ham/packet radio: Baofeng UV-5R + Raspberry Pi + Direwolf for VHF/UHF packet. Add an HF radio for long-range digital modes. RTL-SDR for monitoring and debugging. This is emergency communications capability that works when everything else fails.
For maximum budget efficiency: Buy used enterprise gear wherever possible. Build your own antennas. Use thin clients instead of buying new SBCs. Source from AliExpress with patience and careful seller selection. Apply for grants for community deployments.
The hardware is the foundation. The next chapter takes these components and walks you through complete practical projects — from initial planning through deployment, testing, and ongoing maintenance. You have the parts list. Now let us build something.
| ← Previous: Security and Privacy | Table of Contents | Next: Practical Projects → |