Please, change device orientation to portrait

Case Study | Agriculture

Devices Update via Azure IoT Hub

Our client develops data driven technologies that help farmers run efficient operations to produce more food. The company—servicing millions of acres worldwide—uses innovative digital agronomic tools to focus on the sustainable production of high-yield, high-quality crops. The solutions are designed to optimize inputs, minimize environmental impact, and protect the farm’s economic viability.

Business Challenge

The client wanted to upgrade, improve and customize its IoT devices so it was more convenient for its customers—farmers—to use and included the newest technologies. The existing functionality and architecture no longer met the client’s needs so they reached out to SoftServe for professional help with the following tasks:

  • Build an architecture solution to connect devices to the Azure IoT Hub
  • Upgrade IoT devices
  • Update program versions remotely
  • Collect telemetry data more efficiently

Project Description

The SoftServe team worked with two types of IoT devices to collect and transfer specific data:

  • IoT devices—sensors—that collect weather data (e.g. temperature, humidity, air pressure, etc.) and share diagnostic information about battery, solar charge, etc.
  • IoT devices that collect vehicle telemetry data and vehicle state data. All information is reflected as GPS data or photos/pictures with the option to download the report and state data (e.g. oil/gas consumption, speed)

Users can check the device information or the device itself with the mobile or web application. The SoftServe team’s main goal was to enable the update of the devices via the Azure IoT Hub.

The analyzed data was then used for plans and predictions by farmers and agronomists. The SoftServe team made it possible to upgrade the program version, provisioning, querying device state, adjusting settings, sending commands, and managing firmware remotely without the need for physical interaction with the device. Additionally, the team achieved the following goals:

  • Environmental telemetry collection and transmission to Azure cloud
  • Remote device control and configuration, including over-the-air (OTA) firmware update
  • Power efficient algorithms for optimal battery usage
  • Bullet-proof operation with guaranteed telemetry delivery

The SoftServe team consisted of two embedded developers and a part time project manager. The team worked with the newest technologies and provided research and development activities (R&D). The methodology used for the project could be defined as a modified Kanban.

The SoftServe team had direct communication with the client’s embedded development team, QA, and they communicated with other teams that consumed the IoT device data. Additionally, some of the R&D team had direct communication with third party hardware development companies and firmware developers.

Technology Stack

C .NET Core Make HTTPS Atom
C++ STM32 MSBuild Digi-Mesh Xbee Eclipse
Java Colibri iMX6 CMake Protobuf Atollic
Python Telit HE910 GSM Docker Azure
C# Digi XBEE Xbee Visual Studio
.NET Ublox MQTT Visual Studio Code

Value Delivered

Through the collaboration, the SoftServe team customized device management and made the procedure more user-friendly. The remote device and its configuration control saved a lot of time for end users. The process of managing the devices for the client’s support team became more efficient as well.