diff --git a/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py b/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py index 7b5add276a..b89fc9d61d 100644 --- a/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py +++ b/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDevice.py @@ -140,9 +140,17 @@ class CloudOutputDevice(NetworkedPrinterOutputDevice): ## Checks whether the given network key is found in the cloud's host name def matchesNetworkKey(self, network_key: str) -> bool: - # A network key looks like "ultimakersystem-aabbccdd0011._ultimaker._tcp.local." + # Typically, a network key looks like "ultimakersystem-aabbccdd0011._ultimaker._tcp.local." # the host name should then be "ultimakersystem-aabbccdd0011" - return network_key.startswith(self.clusterData.host_name) + if network_key.startswith(self.clusterData.host_name): + return True + + # However, for manually added printers, the local IP address is used in lieu of a proper + # network key, so check for that as well + if network_key == self.clusterData.host_internal_ip: + return True + + return False ## Set all the interface elements and texts for this output device. def _setInterfaceElements(self) -> None: