Remote Sensor Deployment Guide
A practical guide for deploying LoRa mesh sensor nodes in the field for environmental monitoring, agriculture, and infrastructure monitoring.
Example use cases from the community
Weather station network
Multiple BME280-equipped nodes reporting temperature, humidity, and pressure at regular intervals. A gateway node (with internet uplink) receives all reports and logs them to a database. The mesh provides coverage even when nodes are miles apart across a farm or forest.
Soil moisture monitoring
Capacitive soil moisture sensors (e.g. STEMMA Soil Sensor) connected to a RAK4631 WisBlock. Node wakes every 30 minutes (this interval is user-configurable), reads moisture level, transmits if below threshold (irrigation alert), returns to sleep. With a typical pack (e.g. a 3000 mAh cell at well under 1 mA average) the battery can last many months on a single charge with occasional solar topping.
Water level monitoring
Ultrasonic or pressure transducer water level sensors for creek gauging, tank monitoring, or flood early warning. The mesh allows data to reach a gateway even when the sensor is in a remote canyon without cellular coverage. Note: a hobbyist mesh is a supplementary indicator only - official NWS/USGS warnings remain the authoritative flood-warning source.
Gate and door alerts
Reed switch or Hall effect sensor triggers a mesh message when a gate, shed door, or access point is opened. Uses a latching trigger architecture (interrupt-driven, not polling) for maximum battery life.
Choosing hardware for IoT sensor nodes
| Board | MCU | Sleep current | Sensor interfaces | Best for |
|---|---|---|---|---|
| Heltec T096 | nRF52840 | ~13 µA (per Heltec spec, bare board) | I²C, SPI, UART, ADC | Ultra-low power remote sensors |
| RAK4631 WisBlock | nRF52840 | ~2 µA (MCU only) | WisBlock sensor slot ecosystem | Modular sensor builds with WisBlock sensors |
| Heltec V4 | ESP32-S3 | ~10 µA (bare-MCU deep-sleep figure; verify against Heltec V4 spec - typical whole-board deep-sleep current is higher) | I²C, SPI, UART, ADC, WiFi | Gateway nodes that also serve WiFi |
| XIAO nRF52840 | nRF52840 | ~5 µA (see Seeed XIAO nRF52840 power spec) | I²C, SPI, UART | Compact DIY sensor builds |
The RAK WisBlock sensor ecosystem
RAKwireless produces a modular ecosystem (WisBlock) where sensor modules snap directly onto the RAK4631 base board without soldering (see each module's RAKwireless datasheet page):
- RAK1901: Temperature + humidity (SHTC3)
- RAK1902: Barometric pressure (LPS22HB)
- RAK1904: 3-axis accelerometer (LIS3DH) - vibration / motion detection
- RAK12010: Ambient light sensor (see RAK12010 datasheet)
- RAK12019: UV index sensor (see RAK12019 datasheet)
- RAK12500: GPS module (u-blox ZOE-M8Q)
- RAK13010: SDI-12 interface for agricultural soil/water sensors (see RAK13010 datasheet)
This ecosystem significantly reduces build complexity - no custom PCB or wiring required for common sensor types.
Deployment checklist
- Enclosure rated IP65+ with UV-resistant housing
- Cable glands on all penetrations (sensor cable, antenna, power)
- Desiccant pack inside enclosure; replace annually
- Solar panel and MPPT charge controller for remote sites
- In-line fuse (or PTC/polyfuse) on the battery positive lead, sized just above peak load, to protect against a short-circuit fire if outdoor wiring chafes, floods, or is damaged. A lithium pack can source tens of amps into a fault.
- LiFePO4 battery (not LiPo) for outdoor/temperature-variable deployments - but note that LiFePO4, like all lithium chemistries, must not be charged below 0 °C (32 °F); cold-charging causes lithium plating and is hazardous. Use a charge controller with a low-temperature charge cutoff. (LiFePO4 tolerates cold discharge better than LiPo, which is why it is preferred outdoors.)
- Antenna mounted outside enclosure (even 1 meter above the enclosure adds range)
- GPS coordinates recorded and logged - for the network map and maintenance records
- Label the enclosure with node name and maintainer contact
Getting data off the mesh
Sensor data on the mesh is useful only if someone can read it. Options for data collection:
- Manual retrieval: A person with a phone and the app periodically reads nodes. Simple but not real-time.
- Room server (MeshCore): A MeshCore Room Server (running on dedicated nRF52840 or ESP32 hardware) is a store-and-forward BBS for room chat history, not an MQTT/telemetry gateway. Verify the Room Server's role against the MeshCore Room Server documentation; MQTT bridging is a separate gateway component, not a built-in Room Server feature.
- Python API script: For MeshCore, the meshcore-py library is scoped to message/contact logging - use a script on a server-connected node to log incoming messages/contacts to a database (see the MeshCore Python API page). For logging actual structured sensor telemetry, use the Meshtastic Telemetry + MQTT path instead.
- Internet-bridged gateway: A MeshCore node with WiFi (Heltec V4) connected to a home network; the Python library reads data and forwards to any cloud service.