As a result of the Internet of Things(IoT) revolution, Linux-based embedded systems become more and more popular these days. This revolution pushes forward a new technology era, where every physical product is a ‘connected device‘. Basically, it is just an embedded computer with network connectivity.
This remarkable change where every offline product is turning into a connected device that shares data and receives commands remotely opens a new dimension of infrastructure requirements for developing and maintaining those products.
Let me explain it in a more specific way. When looking at smart city projects, for example, we can get a better understanding of how the management of smart products gets a different aspect of complexity.
Manage IoT device fleet
Thousands of smart dustbins are scattered throughout cities with a small, but important, embedded Linux computer inside of them. Their target is to send alerts over-the-air to the municipality when the garbage tank is full and should be emptied.
The mission is simple – monitor the tank using a capacity sensor and send an alert to the cloud when the sensor points to a full tank. This is a very common IoT product purpose which you probably have experienced – Measure, take a decision, send the result to the cloud, and lastly receive a command to execute.
That straightforward case should be super easy to develop yet pretty hard to maintain.
Here are some questions that always arise when thinking about how to control and manage IoT and connected device fleets in production:
– How to monitor our products to make sure that all of them are running without failures?
– How to get instantly alerted when a software error happens?
– How can we know if one of the products suddenly turned off?
– We found a software bug that has to be fixed now. How to fix it remotely and safely?
Those questions are bothering every IoT developer and project manager when thinking about the best and correct way to control and manage connected device fleets without compromising on the embedded software development, yet meeting the project deadlines.
In most of the cases, the embedded software development is more critical for the project goals, that is why the fleet management infrastructure stays behind. This fact forces us to search for a ready to use solution which can provide some answers to the questions I brought up earlier.
That’s where JFrog Connect’s platform comes in place. Providing the infrastructure and the necessary functionalities to manage IoT and connected product fleets remotely in order to keep your focus on the most important part for you – developing your embedded software.
JFrog Connect platform includes an over-the-air (OTA) updates engine based on a smart lightweight implementation that has the possibility to update only the relevant files on the device file system, from configuration files under any desired path, such as ‘/etc’, to the whole project’s directory.
Deploying software update with JFrog Connect platform
When it comes to device management, JFrog Connect provides multiple tools to help you continuously stay in control. Real-time device status monitoring, remotely control and support each device using web-based shell terminal but much importantly, an Anomaly Detection engine that autonomously determines failures or irregular behavior of your devices and instantly sends an alert to let you know and fix the issues as quickly as possible.