Does Aktualizr respect the "metered connection" property of a network connection?

We are working on OTA options for a product that has both cell and WiFi capabilities.

We’ve configured NetworkManager with the cell connection and set the metered property to true (which is the standard way to indicate a connection has costs associated per unit of data transfer).

Does Aktualizr respect this property in any way during the update process?

If not, could is this something that could be considered as a future feature?

Of course we can do this “manually” via software gating the update process in the end user application, but I wanted to make sure we’re not already reinventing the wheel if this capability already exists.

~BW908

Hi, I’m the Toradex AI Assistant.

I might make mistakes or occasionally get you wrong. Our support team will step in if needed.


Based on the available Toradex documentation and code, Aktualizr does not currently respect the NetworkManager “metered connection” property during the update process.

The Aktualizr implementation focuses on download management through features like:

  • Configurable timeout and retry settings for low-bandwidth connections
  • Download progress tracking and resumption of interrupted downloads
  • Disk space verification before downloading targets

However, there is no built-in logic to query or respect NetworkManager’s metered connection status before initiating downloads.

Current Workarounds

Since this capability doesn’t exist natively in Aktualizr, you would need to implement application-level gating as you mentioned. Some approaches:

  1. Monitor network state externally and control when Aktualizr runs or when updates are accepted
  2. Use Aktualizr’s D-Bus interface to implement consent-based updates - Torizon OS 7.4.0 introduced a D-Bus interface that allows applications to gather end-user consent before proceeding with updates(1)
  3. Configure Aktualizr settings for low-bandwidth scenarios, though this doesn’t specifically address metered connections(2)

Feature Request Consideration

This would be a valuable feature request for the Aktualizr project, especially given the increasing use of cellular connectivity in embedded devices. You may want to raise this on the Toradex Community or GitHub for consideration in future releases.

Best regards,
Toradex AI Assistant.


Did you like my answer? :+1: :-1:

If I answered your question, please tick the “Solution” checkbox.

For follow-up questions to me, please use @ToradexAI in your post.

Greetings @bw908,

Does Aktualizr respect this property in any way during the update process?

My immediate answer here would be “I don’t know”. I don’t have any recollection of anyone using the metered property in NetworkManager alongside Aktualizr and reporting the results of this.

That said, from what I know. The metered property just sets a flag on that connection. It doesn’t actively enforce anything on every network process on the system. I believe it would be up to each process/application to read this flag via the d-bus API of NetworkManager and act accordingly.

Given this, my somewhat educated guess would be that Aktualizr does not respect this property. Aktualizr was not designed with any specific network manager system in mind as far as I know. So there wouldn’t be a reason for it to specifically check for NetworkManager specific properties.

Again though this is my best educated guess without testing. The most accurate answer is still “I don’t know for sure”.

If not, could is this something that could be considered as a future feature?

Any feature can be considered by our team of course. The question is more “when”, rather than “if”. As I said before, no one to our knowledge has asked about this so there’s not a lot of push for us to consider it over other items. Worst-case this sits in our backlog without ever realistically being prioritized.

Also another point to consider is if we ever move away from NM in the future. Which is something we have actually discussed somewhat internally.

That said, if you still want I can put in the feature request internally. Just be aware I don’t see this gaining much traction in terms of actually being prioritized. At least not within the near to mid term timeline. Basically it likely won’t happen in a timeline that you can actually plan around. That is unless something changes, but I can’t predict that right now of course.

Best Regards,
Jeremias

That certainly answers the question more than you think :laughing:

We’ll plan to implement something manually around this. If there is a possibility of moving away from NM then it seems like a moot point to consider it as an official feature :slight_smile:

I’m glad I was able to help somewhat clarify this topic for you.

Best Regards,
Jeremias