Published Jan 12, 2021
 6 hours to build

Use a devices to monitor the soil in an agricultural field or greenhouse and visualize the data remotely. Keywords: Agriculture, Data collection, Environmental sensing, Internet of things, Monitoring, Smart Farming.

display image

Components Used

Soil Moisture Sensor
Soil moisture sensor is used to measure the water content (moisture) in soil. It is used in agriculture applications, irrigation and gardening systems, etc.
Arduino MKR 1000
Arduino MKR 1000
Si1145 Proximity UV Ambient Light sensor
Si1145 is a low power, reflectance based, infrared proximity, ultraviolet index, and ambient light sensor .
HTU21D GY-21 Relative Humidity and Temperature Sensor
HTU21D is a digital relative humidity sensor with temperature output.
SD Card
SD (Secure Digital) is a non-volatile memory card format developed by the SD Card Association (SDA) for use in portable devices.
AA Battery
AA Battery
DS18B20 Waterproof temperature sensor
DS18B20 Waterproof temperature sensor
Arduino MEM Shield
Memory IC Development Tools MKR MEM Shield


Internet of Things (IoT), a widely known branch of computer science has introduced

sensible farming to every farmer’s neighborhood and also providing constructive inexperienced

agriculture. For the past few years, the agriculture field is facing lots of challenges like climatic

condition instability, improper cropping pattern and lagging techniques in farming. IoT helps in

farming by self-configuring chain of parts. The economical implementation helps agriculture, by

reducing human work and increasing crop cultivations. This paper endorses smart IoT primarily

based Agriculture Stick as farmers aid by getting Live information (Temperature, Soil Moisture)

of farm information. These live readings facilitate the farmers to undertake clever farming and to

extend their average crop yields, conjointly the standard of plants.The sensible Agriculture with

Arduino Technology supports the farmers to regulate the live farm data and obtain the required

crop cultivation results.

Keywords: Agriculture, Data collection, Environmental sensing, Internet of things, Monitoring,

Smart Farming.


Farming land may be a precious resource, it's necessary for the survival of fashionable

society. However such a large amount of challenges are long-faced in agricultural farming, you

wish to induce the temperature, wetness and daylight right for the crop, then you have got to

confirm that nothing destroys the crop.

The idea of sensible farming has been taking form within the recent years, the thought of

remotely overseeing the state of your crop. However this revolution in farming comes at a good

price, most accessible systems are too expensive to implement on little farms and therefore the

systems might not cowl giant farms. SmartAgro intends to form a network of devices,

straightforward to use that may be placed on the sphere that's being monitored. The devices

collect region information, soil connected parameters and light-weight values, causing all the

information to the cloud wherever it's conferred on a dashboard. This allows any farm, any size

to run into the new age of farming, implementing a scalable fleet of devices across their land that

may warn them if a drought is approaching.


A system using faraway sensors that screen exceptional situations of stages of setting like

water degree, humidity, temperature, movement of animals, moisture content in soil, and so on.

The Arduino UNO model at the side of GSM defend is employed. The field state of affairs is

dispatched to the farmer through mobile text messages. With this machine, sensor node failure

and electricity saving are controlled. A machine is planned for smart agriculture monitoring 

based mostly completely on the IoT era. The machine plays statistics shooting, processing,

transmission and reception functions. The aim of their experiments is to realize a sensible

agriculture device, during which the machine efficiency is to manage the environment region and

lower the money and farming fee and conjointly saves electricity. In a nutshell, the layout

realizes faraway clever pursuit and control of environmental conditions and in addition replaces

the standard stressed generation to Wi-Fi, also reduces hands value. A system  is planned

for crop growth which might be monitored victimization thermal imaging technique. Here, the

irrigation temperature distribution size (ITDM) technique has been placed into movement. In

actual time, the captured data comprising captured values offers higher irrigation. An approach

 to assess victimization Wi-Fi module networks used in implementing automating farm

systems and facts are conveyed to Arduino via voice communication. The various sensors are

enforced and used to expertise the temperature measurement, humidness measuring, moisture

measurement and hindrances for the crop tracking. when the brink values go below then only

warning is given by device. The farmer is employed to be parallelly attached to the situations of

the field. It additionally describes field framings. Moderate depth management can also be

processed additionally to irrigation. Here, the forecast of crop quality still has water

necessities likewise that are abundant well organized. The IoT SMS alarm device is

incorporated via GSM shield.

The device will capture environmental parameters on with temperature of air and wetness

of air. In short time, with the employment of AT command, this widget can even notice SMS

automatic causation and receiving, environmental situations overrun alarm and inadequate

balance alarm. Through the device swing, the messages are often sent to the user-special cellular

wireless telephone mechanically no matter what the customer's place is. This widget as a

standard application of IoT within the agriculture has some efficient consequences within the

real operation. R. Suresh et al. mentions, close to victimisation automated microcontroller

primarily based rain gun irrigation system in which the irrigation can turn up only if there might

be intense demand of water that store an enormous quantity of water. These structures convey a

trade to management of subject area during which they developed a Android software system

stack. This stack includes a operating device, middleware and key packages. The automaton

SDK supports the instrumentality and arthropod genus got to begin growing programs at the

automaton systems victimisation Java programing language. Mobile phones have come back to

be very important and essential a part of United States of America providing more than one

desires of humans. This application uses the GPRS operate of cellular phone as an answer for

farm manipulated machine. These gadgets blanketed a little vary of agricultural land and were

not economically inexpensive. Indu et al. especially focused on reviews among the discipline

of remote observation and manipulation, the era used and its capability blessings. This paper

version proposes protection of GSM/Bluetooth primarily based whole human controlled

faraway for irrigation machine. This device has set the irrigation time relying at the temperature

and wetness reading obtaining from sensors and specific sorts of crops and would possibly

mechanically irrigation the sector while needed. Information is changed between some distance

issue and designed system through SMS on GSM community. A Bluetooth module is

additionally hooked up with the principle microcontroller chip which provides a message when

the buyer or the farmer is within the forced variety of little meters to the distanced widget. The

system gives statistics to the users or farmers regarding several conditions like quality of

increased temperature, water content material in soil and smoke via SMS on GSM network or via

Bluetooth is completed 98.50% accurately from alternative machine learning algorithms.


SmartAgro permits the user to easily implement a fleet of devices on the sphere that is

being monitored. These devices take samples from the sensors at outlined intervals of your time.

The info is then logged to a.csv file on the memory card and sent to the backend wherever the

info is pictured on a dashboard. The project consists of a front-end and a backend.


The front-end of the project refers to the physical devices placed on the world. These

devices take samples of data from their sensors, burning them to memory cards and sending the

data to the backend.



An MKR GSM is employed for the front-end, the device collects the information so

sends it to Soracom, wherever it's pictured. Below area unit the steps taken by the device once

assembling information.

The device starts in setup mode, here it prepares all the sensors and gets a location fix.

The device then checks to check if there's already a file to burn to on the memory card, if

a file is obtainable, it'll append thereto, otherwise, the device can produce a file and append

thereto. The device then takes samples from all its sensors, it measures atmospheric temperature

and wetness, soil wetness and temperature and actinic radiation index, lightweight|light|visible

radiation|actinic radiation|actinic ray} and IR light. These values are then kept on the device.

The MKR GSM module then prepares the data for burning it to the memory card, then it

compiles the data into a string that represents a line of a.csv file.

The data is then burned to the Coyote State card. All the values are then ready to be sent

to Soracom through GSM. the info is compiled into a JSON buffer. The info is then sent to the

backend by the device. The device currently goes into sleep mode for an outlined quantity of

your time and can repeat the method once it wakes up.


The device can log the information non-heritable from the sensors to the memory card

connected to it. The data is going to be appended to a.csv file that may then be downloaded. In

the setup, the device locates if a.csv file to jot down is out there and can append to that if it

already exists. it'll produce a replacement file if one doesn't exist. Below are some pictures of the



The device is high-powered through multiple ways in which. It is high-powered by a

LiPo battery through the provided port on the device, by an influence bank or by connecting

battery through the VIN port on the device. The period of time of the device heavily depends on

the facility of the battery. The device goes into sleep mode between reads to conserve the

maximum amount of energy as attainable.

Data Send:

The data is distributed to Soracom through a GSM association to the server. The

information is distributed as a JSON payload. This info is then received by the backend and is

then processed.


The backend of the application refers to Soracom. The data is received by Soracom,

processed then displayed on the dashboard. Data is received by Soracom through Soracom Air

The data is then collected by Soracom Harvest The data is finally queried by Soracom Lagoon at

intervals of your time that then displays the information on a dashboard.

The Dashboard:

The dashboard for this project is hosted on Soracom lagoon. The data is received by

Soracom Air within the backend, Soracom Harvest collects the data so lagoon queries it from

Harvest. The location of every device within the fleet and every one sensor information is

premeditated on the dashboard. Screenshots of the dashboard are below.


The user also can set the backend to receive email notifications if the ultraviolet radiation

index or soil humidness collected by the device are abnormal. This way, the user can grasp if the

crops would like attention.

The user operating this project can have several benefits:

● Visualize data on the go at any time, anyplace using the dashboard.

● Easily proportion the devices and use as multiple.

● Lower prices than usual solutions on the market.


Step 1: (Required Apparatus)

All Components

Step 2: Connecting the Circuit

A hand tool is required to solder all the parts along. The schematics are illustrated within

the fritzing file below. Remember to connect the mem shield to the board.

The Schematics


Preparing the MKR GSM

The Arduino MKR GSM must be ready. I battery-powered the board with 2 AA batteries

through the VIN port.

Step 3: Acknowledging the Code

There are four main sections to the code used for the project.

● Prepare SD

The checkFile() operate checks if the.csv file that the device is supposed to append to

exists. If the file exists, the function ends, otherwise it calls on createFile() which creates

a new.csv file to append to.

● Collect Data

This section of code collects the data from all the sensors on board. It contacts sensors for

region temperature and wetness, soil humidness and temperature and UV index, IR

light-weight worth and visual light-weight.

● Burn Data to SD

This operation burns the info that was antecedently compiled into a line of a.csv file to

the memory card. The info is appended to the file on the cardboard.

● Send Data to Soracom

Finally, the info is shipped to Soracom. The device establishes a reference to the server

so prepares the credentials. The data is then sent to the server and also the response is

written to the Serial Monitor. The device then goes to sleep for an outlined quantity of

your time and continues the steps once more.

Step 4: Setting Up the Variables

A few variables need to be altered by the user before the project may be used. The

variables that are editable are within the computer file of the code. These are represented below.

● DeviceName:

DeviceName is the custom name of the device. This is often sent along-side the payload

to Soracom, it's helpful to spot devices apart once managing a fleet of devices.

● SleepTime:

SleepTime is that the quantity of your time (in milliseconds) that the device can sleep for

between reads. The device can visit sleep between reads to cut back the battery

consumed. proDebug is ready to true if bugging and to false otherwise.

● ProDebug:

ProDebug is enabled, the device needs to be connected to a pc with the serial monitor on

to figure. Set to true once debugging however guarantee it's set to false if it's on the

sphere. Note that the device can still print to the serial even though proDebug is false;

Step 5: Setting Up the SD Card

The memory card must be ready before it is often used with the device. The memory card

must be formatted as FAT 32.

Step 6: Upload the Code

Before fixing the backend, data must be sent to that. If you don,t have a Soracom account

and therefore the SIM you're victimisation isn't registered, you'll have to be compelled to

complete step 7 first. To do this, connect your MKR GSM module to your pc and transfer the

code to the device, make sure that the mode of the device is about to one for this setup. Once the

code has uploaded, place all the sensors in water. Now press the button on the device and await

the information to gather and send. Repeat this some of the time to populate Soracom Air.

Step 7: Setting Up Soracom

This step is split into two sections, the primary will cover creating an account with

Soracom and registering your SIM whereas the opposite will cover fixing Soracom Harvest to

gather the info from Air. If you have already got AN account with Soracom, skip the primary


● Section 1: Creating an Account

● Section 2: Groups and Harvest

Step 8: Setting Up Soracom Lagoon

The very last thing to set up on Soracom is lagoon, this is often the tool that we are going

to use to visualise our data and build email alerts if the data isn't sensible.



Finally we designed an enclosure for the project, it might be desirable if the highest of the

enclosure would be clear so the ultraviolet detector are often placed inside the enclosure, we

placed our detector outside the enclosure to stop any interference. Finally, make sure that all the

variables are set and so place the device on the sphere, it ought to be able to monitor all

parameters currently. Using an SD Card Module we have chosen to use the Arduino MKR mem

shield because it is straightforward to use and quite compact. AN SD card module also {can|can

even|may also|may} be used tho' most operate with 5v whereas the MKR GSM can only give

3.3v, so level converter is required to accelerate the 3.3v to 5v.The planned assignment is also

additional larger with the help of together with a pump to the machine to facilitate processed

irrigation. The automatic irrigation device is also triggered when soil wet content goes beneath

the brinkstage. The threshold degree will be determined within the written Arduino code. The

idea of the usage of IOT for irrigation will be prolonged additionally to different tasks in farming

along with farm animal management, fire detection and climate management. This could limit

human intervention in farming sports.



SmartAgro Download

Institute / Organization