App crashes on boot without ethernet connection

Docker container of application crashes on boot if the ethernet is not plugged in. If ethernet is plugged in then it boots up alright. App is mostly written in python with qt5. Torizon weston container boots up without a problem with or without ethernet.

Board - Colibri IMX6DL 512MB IT
Torizon base image version 5.7

Error stems from loop that updates network connections for the frontend app
Exact error received in docker logs

File “/xxxx-app/xxxx/engine.py”, line 661, in updateNetworkmanager
self._settings = self._device.GetAppliedConnection(0)[0]
File “”, line 4, in GetAppliedConnection
File “/usr/lib/python3/dist-packages/dbus/proxies.py”, line 72, in call
return self._proxy_method(*args, **keywords)
File “/usr/lib/python3/dist-packages/dbus/proxies.py”, line 141, in call
return self._connection.call_blocking(self._named_service,
File “/usr/lib/python3/dist-packages/dbus/connection.py”, line 652, in call_blocking
reply_message = self.send_message_with_reply_and_block(
dbus.exceptions.DBusException: org.freedesktop.NetworkManager.Device.NotActive: Device is not activated

Any idea if it is a problem in configuration of NetworkManager?

Hi, I’m the Toradex AI Assistant. I’m in early beta, and I would appreciate your feedback.
The Toradex Support team will follow up with you shortly!

Did you like my answer?

:+1: :-1:


To address the issue where your Docker container application crashes on boot without an Ethernet connection on a Colibri iMX6DL 512MB IT board running Torizon base image version 5.7, it appears the root cause is related to how the application interacts with NetworkManager. The error message indicates that the application is attempting to access network connection information through NetworkManager, but fails because the network device is not active due to the lack of an Ethernet connection.

Here are steps to troubleshoot and potentially resolve this issue:

  1. Ensure NetworkManager is Properly Configured: Verify that NetworkManager is configured to manage all network interfaces on your system. You can do this by checking the configuration files in /etc/NetworkManager/NetworkManager.conf and under /etc/NetworkManager/conf.d/. Make sure that NetworkManager is not ignoring your network interfaces.

  2. Modify Application Logic: Modify the application’s logic to handle cases where no network connection is available. This could involve adding exception handling around the call to GetAppliedConnection to catch the DBusException and proceed without a network connection or with a default configuration. This way, your application can start without requiring an active network connection.

  3. Use a NetworkManager Dispatcher Script: NetworkManager provides a mechanism to run scripts in response to network events. You could create a dispatcher script that triggers on network connectivity changes to update your application’s network settings only when a network connection becomes active. Place the script in /etc/NetworkManager/dispatcher.d/ and ensure it has executable permissions.

  4. Check for Network Dependency in Docker Service: If your Docker container is configured to start at boot through a systemd service, ensure that the service does not have an unnecessary dependency on network connectivity. While it’s common to see dependencies on network-online.target, this might delay the start of your service until a network connection is established. Since your application seems to require handling both online and offline states, consider removing such dependencies if present.

  5. Static Network Configuration: If your application can operate with a static network configuration when no Ethernet connection is detected, consider configuring a static IP address or a dummy network interface that allows the application to start without an active Ethernet connection. This can be configured through NetworkManager or directly in the system’s network configuration.

  6. Debugging NetworkManager: For further debugging, you can increase the verbosity of NetworkManager’s logs to get more insights into what’s happening when your application tries to access network information. Modify the logging level in

Please, also check if these links can help you solve your problem:

Boot from a TFTP/NFS Server | Toradex Developer Center.

Greetings @mih44435,

I don’t know much about how your application here has been designed. But it appears that it errors out if there is no active connection in NetworkManager. Then since your application is the primary process of the container the container exits in error as well.

Given your description of your application, isn’t this somewhat expected? If your application updates network connections and there isn’t any then I would think that would be problematic. Perhaps this is just a case of just adding better case handling to your application. So that it more gracefully handles the situation where there is no Ethernet connection.

Best Regards,
Jeremias