diff --git a/homekit-controller/src/lib.rs b/homekit-controller/src/lib.rs index f7bfbc6..fe16a5b 100644 --- a/homekit-controller/src/lib.rs +++ b/homekit-controller/src/lib.rs @@ -111,7 +111,14 @@ pub fn spawn_discover_thread() -> Result { None }) { let mut connections = discovered.write().await; - connections.insert(id, (ip.to_string(), port)); + if !connections.get(&id).is_some_and(|(old_ip, old_port)| { + *old_ip == ip.to_string() && *old_port == port + }) { + log::info!( + "mdns: discovered {name} - id: {id}, ip: {ip}, port: {port}" + ); + connections.insert(id, (ip.to_string(), port)); + } } } }