ESP-NOW, WiFi or LoRa: Which Radio Should Your IoT Project Actually Use?

Choosing between ESP-NOW, WiFi, and LoRa is a matter of physical constraints, not fashion. Here is how to navigate range, power, and the silent channel-locking trap.
The Direct Answer
Choosing between ESP-NOW, WiFi, and LoRa is not a matter of finding the "best" protocol; it is an exercise in managing physical and environmental constraints. If your project needs to send small packets over several kilometres without infrastructure, use LoRa. If you need to stream high-bandwidth data to the internet and have a reliable, mains-powered router, use WiFi. If you need low-latency, low-power, peer-to-peer communication within a 100-metre radius without relying on a router, use ESP-NOW.
The Infrastructure Constraint: Surviving Load-Shedding
In South Africa, load-shedding makes infrastructure dependency a critical design decision. If your project relies on standard WiFi, it relies on your network switch or router being powered. When the grid goes down, your WiFi-based IoT devices lose their connection, even if they are running on backup batteries. ESP-NOW and LoRa operate peer-to-peer. They do not require an Access Point (AP) or router to communicate. An ESP-NOW transmitter can send a sensor reading directly to an ESP-NOW receiver powered by a simple battery pack. Similarly, LoRa devices communicate directly over sub-gigahertz radio frequencies (typically 868 MHz locally), completely independent of local network infrastructure.
Range vs. Throughput: The Physics of the Radio
You cannot bypass the laws of electromagnetism. You must trade range for throughput, or throughput for power consumption. Here is how the three protocols compare in real-world deployments:
| Protocol | Typical Range | Throughput | Power Consumption | Infrastructure Needed |
|---|---|---|---|---|
| WiFi (802.11) | 30m - 50m (indoor) | High (up to 150 Mbps) | Very High (Active: ~100-240mA) | Wireless Access Point / Router |
| ESP-NOW | 100m - 200m (line of sight) | Medium (approx. 1 Mbps) | Medium-Low (Fast transmission reduces active time) | None (Peer-to-Peer) |
| LoRa | 2km - 15km | Very Low (bytes per second) | Very Low (Active: ~10-120mA, long sleep cycles) | None (P2P) or LoRaWAN Gateway |
The Channel-Locking Trap: Mixing ESP-NOW and WiFi
A common architectural pattern is to use cheap ESP32 nodes running ESP-NOW to gather sensor data, and a central ESP32 "gateway" to receive these packets and forward them to an MQTT broker over WiFi. It sounds elegant, but it hides a devastating failure mode. The ESP32 has only one physical radio. When you configure that radio to connect to a local WiFi Access Point, the chip must tune its radio to the specific channel used by that AP (for example, Channel 6). ESP-NOW, by default, transmits on Channel 1.
Sheen field note: on one board, connecting to WiFi/MQTT pins the radio to the AP channel; the ESP-NOW peer on the default channel receives nothing, while the screen still says "sent".
Because ESP-NOW is connectionless, the sender does not perform a handshake. It broadcasts the packet, sees that the radio successfully transmitted the physical signal, and reports a successful "sent" status on its local display or serial monitor. Meanwhile, the receiver—locked to the WiFi AP's channel—is listening on a completely different frequency. The packet is lost in the ether, and your system silently fails. To fix this, you must programmatically force your ESP-NOW sender to scan and match the WiFi channel of the gateway, adding complexity to what should have been a simple node.
The Power Equation: Active Time vs. Sleep Time
WiFi connection handshakes are expensive. When an ESP32 wakes from deep sleep to connect to a WiFi network, it must perform a DHCP negotiation, resolve IP addresses, and establish a TCP connection. This process can take anywhere from 2 to 10 seconds, during which the radio is drawing up to 240mA. With ESP-NOW, there is no handshake. The device wakes up, transmits its packet immediately (which takes less than 100 milliseconds), and goes back to sleep. This means an ESP-NOW sensor node running on a single lithium battery can last for months, whereas a WiFi node doing the same task might drain the battery in a couple of weeks.
School and Enterprise WiFi Constraints
If you are designing projects for South African schools or corporate environments, standard WiFi is often a non-starter. WPA2-Enterprise networks require username and password authentication, which is notoriously difficult to configure on basic microcontrollers. Furthermore, school IT administrators routinely block local ports, preventing MQTT or UDP traffic between devices. For educational environments, ESP-NOW is the clear winner. It bypasses the school network entirely, allowing learners to build interactive, multi-device projects without needing a single WiFi password or network configuration.
When to Choose LoRa
LoRa is the correct choice when your project must survive outdoors, over long distances, or in deep rural areas. If you are monitoring soil moisture on a farm, or tracking a security gate at the far end of a plot, neither WiFi nor ESP-NOW will reach. LoRa's sub-GHz signals penetrate walls and foliage far better than 2.4 GHz signals. However, you must design your payload carefully: you cannot send video, audio, or high-frequency telemetry. You are limited to sending small packets of bytes every few minutes.
Making the Decision
To choose the right radio, ask yourself these three questions in order:
- Does the data need to travel further than 200 metres? If yes, use LoRa.
- Do you have control over the WiFi network, and will it remain powered during load-shedding? If no, or if you are in a school environment with strict IT policies, use ESP-NOW for local device communication.
- Does your device need to talk directly to web APIs, cloud databases, or local home automation platforms? If yes, use WiFi, but be aware of the channel-locking trap if you plan to bridge it to ESP-NOW.
If you are developing custom IoT solutions or teaching physical computing in South Africa, navigating these hardware constraints is half the battle. For robust, classroom-ready hardware designed to work reliably under local conditions, explore our range of controllers at Sheen IoT.


