Growing Your Medium Followers Takes More Time Than You Want It To Take?

Some of my students needed several months to reach the 100 followers' threshold until they learned from me how to get there with ease. Here are my tips for you to reach the 100 followers' threshold…

Smartphone

独家优惠奖金 100% 高达 1 BTC + 180 免费旋转




Delta Firmware Updates over Cellular LPWAN

Delta updates are a critical feature when trying to update IoT devices in the field cause in the majority of situations if not all, the network bandwidth is limited and costly. Any mechanism that can be employed to reduce network usage has a huge effect on savings, both in terms of power usage of the device while receiving the firmware and staying awake and the associated bandwidth cost.

But first, let’s describe the steps required to produce a delta firmware image:

For development purposes, we can utilize the ‘mbed dm init’ to create them automatically for us, passing only our desired device metadata:

For Cellular connectivity, mandatory parameters are the following:

For Wi-Fi connectivity, wireless credentials must be entered:

Now we are ready to compile and flash the initial firmware on the device:

Notice at the end of the compilation process, the compiler produces two images:

And Pelion Portal should display the device as connected:

Let’s save this initial image in a ‘firmwares/’ directory on the project and give it a new name.

Modify the code to simulate an update of the running firmware and produce a new image. Open ‘main.cpp’ in the project’s root directory and add a ‘printf()’ statement:

And compile again:

Let’s copy the resulted firmware to our ‘firmwares/’ directory and give it a new name:

And the generated ‘delta-tool-generated-manifest.json’ with the delta update metadata:

We are now ready to upload the update manifest and the delta firmware image to Pelion Device Management Service and prepare for the update campaign. For this, we utilize the ‘manifest-tool update prepare’ command to perform it for us:

For reference, here is a summary table that highlights the differences:

The following tables are the result of our experiment running a firmware update across the different connectivity types. For each type, we record the time taken to update the firmware using both a full and a delta image (top and bottom respectively):

If we collect the results and attempt to create a graph, we get the following picture:

Clearly and regardless of the chosen connectivity type, the impact that the delta update has on limiting the transmission time is significant, over ~90% in all cases. Although configurations may vary across different use cases and environments, employing delta firmware updates can prove a significant aid in the never-ending quest to save bandwidth costs and preserve the battery of the device.

“You should understand the energy requirements of both firmware update and your device’s normal operations, and plan update frequencies that don’t drastically reduce the time between battery changes. For this, remember that the accessibility of the battery is important — a device placed in plain sight (for example, mounted on a wall in a normal house) can have a shorter battery life than a device buried in the ground along a pipeline.”

Are you next?

Add a comment

Related posts:

A Daily Dose of Bible Reading

You would never catch my mom just sitting around reading a book when I was a kid, but if you wandered into the living room early enough in the morning there she would be with enjoying her cup of…

LIFE AND HOW TO HANDLE IT

LIFE AND HOW TO HANDLE IT. Life is full of ups and down you know that. There are times in your life when things doesn’t seems right. But when you feel like giving up….

Believe Change

Many people are firm in what they believe today. They will continue to believe it for the rest of their lives. We think we do not need to change our thinking, understanding or approach to life. I do…