ESP32 + RFM95: Poor Range & Random Resets?

Using a poor or unstable power supply, or powering the RFM95/RFM96 as a separate module without proper regulation, can lead to instability in the module’s operation. This often shows up as:

  • Brownouts or noise on VCC causing intermittent lockups or reduced range.

  • Resetting during transmission due to insufficient current at TX peaks.

  • Low RSSI / lower-than-expected range, even under normal conditions.

  • Random-looking resets, where the module reverts to default register values.

  • SPI errors during voltage dips, which can flip bits, causing wrong register settings or the module to get stuck in the wrong mode (FSK instead of LoRa).

Good Practices to Avoid Instability with RFM95/RFM96

Use a Stable 3.3 V Supply

  • Ensure your regulator can supply the peak TX current (~120–150 mA at +20 dBm).

  • Aim for ≥500 mA headroom if sharing with ESP32.

Add Proper Decoupling Capacitors

  • Place 100 nF + 10 µF ceramic/low-ESR capacitors close to the module’s VCC and GND pins.

  • A larger electrolytic (~100 µF) can help smooth TX spikes.

Separate Power Rails if Needed

  • If the ESP32 draws significant current, consider isolating the RFM95 VCC rail or using a low-dropout regulator dedicated to the module.

Check SPI Wiring & Layout

  • Keep SPI wires short (<10 cm), twisted if possible.

  • Ensure good grounding between ESP32 and RFM95.

One practical alternative for those who aren’t PCB designers—or don’t have the opportunity to design a stable RFM95/RFM96 setup—is this cutting-edge board from STMicroelectronics. It helps you skip common power and wiring headaches while providing a ready-to-use LoRa solution.

This board “NUCLEO-WL55JC” STM32WL Nucleo-64 board provides an affordable and flexible way for users to try out new concepts and build prototypes with the STM32WL Series microcontroller.

Next
Next

Optimize water, ensure crop quality