Do you remember Windows 98? Until Windows XP if you needed an OS update, or if the OS stopped working you had to physically go to the device and use a specific floppy disk or CD that had the original or the updated OS image. This was sometimes time-consuming and a little work that had to be done in order to continue working.
The same process was used with embedded devices. Is your infotainment system in your car not working? Take it to the mechanic.
IoT, as a technology, enabled always-on remote connection with devices. Now, all of a sudden you have immediate access to the device’s firmware, all of the time. You might think that would solve all of our problems; however, that’s far from the truth. More and more, we see bricked devices, bugs, and malfunctions in devices, not to mention devices that suddenly stop working completely.
Developers now have the technology to have proper device management, but how exactly can they do that?
What is device management?
Any developer would like to ship clean optimized code that works flawlessly. Also, as any developer knows, this is very difficult because of various factors like code complexity, not enough resources, or time-to-market limitations.
Device management is having the appropriate tools to control the devices during their lifecycle. Device management services enable users to
- Provision devices
Register devices and group them in fleets (of devices) and handle each of them separately, if needed.
- Communicate with devices
Have a two-way secure connection with the device to send and receive data.
- Control fleets of devices
An important feature is to control fleets according to application or scope, or hardware, or lifecycle. For instance, you can issue a reset or an update to a fleet of devices that work on a specific application, while the other devices remain unaffected.
- Update the firmware of the devices
By having an OTA-enabled device, developers can push bug fixes, add more features or use the time between manufacturing and actual operation to improve the firmware.
After the device management service receives the data, it should visualize the data in a clear way to enable data-driven decisions.
2. Why do most IoT products lack proper device management?
Most IoT products are concerned with time-to-market, development time, and getting an MVP on time, and disregard the impact of this on the product life cycle.
For example, certain device management services offer a more secure connection with enhanced hardware security, while other services offer easy visualization and the creation of dashboards for end users.
In my opinion, the main problems are
- Complicated device management
Product managers/owners need to choose and integrate services that are easy to use and easy to integrate with other system components.
For example the time, expertise, and cost to deploy a fleet of devices on a certain device management service can differ widely from another service that aims to shorten the development time.
- Scalability issues
Scalability remains an important factor in the design phase. The cost of migration to a better scalable service is enormous, so, it is highly advisable to plan ahead in terms of the services, features, and capabilities of your devices for now and the future.
Security is one of the biggest sins when it involves using cheap IoT devices. Say you buy a smart lamp or a smart speaker from Amazon that has the absolute lowest level of security and you let it access the wifi network. You download the corresponding app and you let it listen and see what is happening in your house. And because Security is expensive this is where they cut costs.
Security is a major factor not only in software but also in hardware. It affects major decisions like designing the hardware layout and using specific components or specific secure modules. Do you see where you can get yourself into trouble, or get hacked?
Luckily, you don’t have to start from scratch
Zerynth Device Manager is a device and data management software that makes it easy to securely register, organize, monitor, and remotely manage IoT devices at scale.
- Easy provisioning of devices thanks to the integrated hardware-software platform.
- Hardened security stack from the hardware to the cloud.
- Devices lifecycle control with over-the-air updates (FOTA).
Zerynth Cloud enables you to monitor your devices, control them remotely and visualize the data in cross-platform dashboards for you or the end-user.
All of this can be done by using our proprietary Python-enabled SDK and navigating our integrated cloud service.
Check how we helped Mega Diamant expand its high-quality products and excellent services with an IoT Workplace Safety Solution capable of real-time recording and monitoring of diamond wire conditions.