Selecting IoT Platform for Agricultural Machinery (Part 4 Benchmarking)

Selecting IoT Platform for Agricultural Machinery (Part 4 Benchmarking)

March 3, 2019

1. Benchmarking

In the last article of this case study, I give a quick review of the 13 IoT Platforms included in this study and their support to the main features required by the client.

In the following table, five main features are compared over the 13 Platforms. OTA Updates is of great importance to the client, and it was covered in detail in the previous article. Stream data processing is also an important features that should be supported by the selected platform. Data visualizations on Edge devices is rarely supported by IoT platforms, as it needs certain hardware specifications (such as large RAM space and robust graphics card). I found Eclipse platform has a good tool called Eclipse BIRT, which can be easily installed and configured on Jetson TX2 Edge devices. Regarding Linux OS support on Edge devices, almost all platforms enables their Edge components to be installed under Linux. The only exception is the Google IoT platform, as it has an Android OS on the Edge side and all Apps should be compatible with this operating system.

Regarding the monthly costs of each platform, it was calculated over the following operational capacity: 1000 Edge devices, 150 Sensors/device, 5 Float numbers/Sensor/Second, 10 hours/day, and 5 days/week. Please note that the below costs were valid on June 2018 and are changing continuously.

Platform OTA Updates Stream Processing Edge Visualization Linux on Edge Monthly Costs


AWS IoT







$ 2373


Azure IoT








$ 4500


IBM Watson








$ 6803


Google IoT









$ 2605


GE PREDIX







$ 16000


Bosch IoT







NA


Eclipse IoT






FREE


Kaa IoT








FREE


Ayla IoT







NA


ThingsBoard









FREE


Mbed IoT







FREE


ARTIK IoT







NA


ThingWorx







NA

Another four interesting features from the client perspective are the ability to deploy and update Machine Learning (ML) models on Edge devices, the possibility of remote jobs scheduling on Edge devices, and the existence of image processing solutions in each IoT platform. The outcomes are listed in the below table.

Platform Deploy ML Models Update ML Models Jobs Scheduling Image Processing


AWS IoT






Azure IoT






IBM Watson






Google IoT







GE PREDIX







Bosch IoT







Eclipse IoT





Kaa IoT







Ayla IoT







ThingsBoard








Mbed IoT








ARTIK IoT







ThingWorx






2. Create Shortlist

In order to narrow the search space, I created a shortlist consists of three platforms, which I believed they mostly meet the client specifications. These platforms are:

  1. AWS IoT Platform
    1. Support OTA Updates on Edge devices.
    2. Configurations for NVIDIA Jetson TX2.
    3. Support  data transfer over MQTT and HTTP protocols.
    4. SDKs for different programming languages (Python, Java, C ++)
    5. Stream data processing.
    6. Machine learning interface to develop machine/ deep learning models and deploy them on Edge devices.
  2. Bosch IoT
    1. Compatible with NVIDIA Jetson TX2 specifications.
    2. Provide remote access for applications and application servers on gateways and Edge devices.
    3. Supports remote configuration and diagnostics.
    4. Supports MQTT and HTTP protocols for data connectivity.
    5. Supports remote application management across multiple Protocols (OSGi, OMA-DM, TR069)
  3. Eclipse IoT
    1. Open source IoT platform.
    2. Supports OTA updates and data visualization on Edge devices.
    3. Supports data exchange over various Protocols.
    4. Reads and writes data with various DB systems (both SQL and NoSQL formats)

3. Client Feedback

After describing the above findings to the client, he preferred AWS platform over Bosch and Eclipse platforms. The motivation behind this choice was that the client wanted an Out-Of-The-Box platform that can be quickly installed and deployed with minimum manual configurations. The client thought that AWS platform is the best option to set up a quick Proof of Concept (PoC) project to test different operational scenarios on his equipments.

Leave a Reply