Engineers Clinic
IntermediateEngineering trackFP-EC-03

Low-power LoRaWAN soil-moisture node with a battery-life budget

Design a soil-moisture node that reports every 30 minutes over LoRaWAN for two years on two AA cells: calibrate the sensor, write sleep-first firmware in a simulator, design the payload, and prove the battery life with numbers.

Core EngineeringInternet of Things (IoT)
6 Guided Steps33h Internship TierSubmit: Requirements + calibration report + firmware (Wokwi project link or repo) + payload and airtime document + battery-life model + pilot planVerified CertificateAI Rubric Graded
Program Overview

Industry project · for Krishna Valley Farmer Producer Company, a co-operative of 1,100 grape and sugarcane growers near Sangli, Maharashtra

Krishna Valley's growers irrigate by habit, often twice as much as the vines need, and the co-operative's agronomist believes they could save a third of their pumping water and electricity. To prove it, she wants 60 soil-moisture nodes spread across 20 farms in a pilot, each reporting every 30 minutes to two LoRaWAN gateways already on the co-operative's office and cold store, 3 to 5 km away.

Her constraints are practical: - each node runs on two AA lithium cells and must last at least two years without a visit, because nobody will walk the rows changing batteries; - the node cost, without the enclosure, must stay under ₹2,500; - readings must be within ±3% volumetric water content after calibration for the region's black cotton soil; - the nodes must use the IN865 LoRaWAN band and stay within the network's fair-use airtime.

You will write the requirements, calibrate a capacitive soil-moisture sensor against soil samples you prepare at home, write the firmware in Wokwi or on any Arduino-compatible board you own, design a compact payload, calculate airtime for each spreading factor, and build a battery-life model from datasheet currents. You do not need LoRa hardware. The radio is represented by a stub in the simulator, and its current and airtime come from the datasheet and the LoRa airtime formula.

Done looks like a node design the co-operative's electronics vendor can build: requirements, calibration curve with error, firmware that spends almost all its time asleep, a payload of a few bytes with a decoder, an airtime and duty-cycle table, a battery-life estimate with its assumptions and a pilot plan. If two years is not reachable at the worst spreading factor, say what has to give.

Low-power embedded designSensor calibrationLoRaWAN airtime and duty cyclePayload designBattery-life modellingEmbedded C/C++
What you submit

Requirements + calibration report + firmware (Wokwi project link or repo) + payload and airtime document + battery-life model + pilot plan

Stack: Wokwi simulator (or any Arduino-compatible board), Arduino or PlatformIO, Python (numpy, matplotlib), LoRa radio and MCU datasheets, A capacitive soil-moisture sensor (optional)

How it is graded
  • Clear requirements15

    Reporting interval, accuracy, battery life, cost, band and airtime limits are written as measurable requirements.

  • Honest calibration20

    The sensor is calibrated against prepared soil samples with gravimetric water content, and the error after calibration is reported against the ±3% target.

  • Sleep-first firmware20

    Firmware wakes, powers the sensor, averages readings, sends a payload and returns to sleep, with active time measured and kept short.

  • Correct airtime and payload20

    Payload is a few bytes with a working decoder, and airtime is calculated with the LoRa formula for each spreading factor against the fair-use limit.

  • Defensible battery life25

    Battery life is calculated from datasheet currents for every state, with self-discharge and temperature derating, and the two-year target is shown met or the trade-off stated.

Pass 60% · Merit 75% · Distinction 90%

Learning Outcomes
Write requirements for a battery-powered sensor node
calibrate a capacitive sensor with a two-point and multi-point fit
write firmware that sleeps between short duty cycles
design a compact LoRaWAN payload and decoder
calculate airtime and battery life from datasheet values
Target Audience

Engineering Students

Diploma, B.Tech, B.E., BCA, MCA, or M.Tech students seeking practical experience.

Aspiring Developers

Developers who want to build proof-of-work capstone projects for tech resumes.

Job Seekers

Graduates looking for AI-evaluated code review & verified industry credentials.