diff --git a/rw_core/core/logical_device_agent.go b/rw_core/core/logical_device_agent.go
index ee3d82a..7875da7 100644
--- a/rw_core/core/logical_device_agent.go
+++ b/rw_core/core/logical_device_agent.go
@@ -110,12 +110,12 @@
 		lp.DeviceId = agent.rootDeviceId
 		lp.Id = fmt.Sprintf("nni-%d", port.PortNo)
 		lp.OfpPort.PortNo = port.PortNo
-		lp.OfpPort.Name = portCap.Port.Id
+		lp.OfpPort.Name = lp.Id
 		lp.DevicePortNo = port.PortNo
 		ld.Ports = append(ld.Ports, lp)
 	}
 	agent.lockLogicalDevice.Lock()
-	defer agent.lockLogicalDevice.Unlock()
+	//defer agent.lockLogicalDevice.Unlock()
 	// Save the logical device
 	if added := agent.clusterDataProxy.AddWithID("/logical_devices", ld.Id, ld, ""); added == nil {
 		log.Errorw("failed-to-add-logical-device", log.Fields{"logicaldeviceId": agent.logicalDeviceId})
@@ -133,6 +133,11 @@
 	agent.flowProxy.RegisterCallback(model.POST_UPDATE, agent.flowTableUpdated)
 	agent.groupProxy.RegisterCallback(model.POST_UPDATE, agent.groupTableUpdated)
 
+	agent.lockLogicalDevice.Unlock()
+
+	// Setup the device graph
+	go agent.setupDeviceGraph()
+
 	return nil
 }
 
@@ -255,7 +260,7 @@
 	if ldevice, err := agent.getLogicalDeviceWithoutLock(); err != nil {
 		return status.Error(codes.NotFound, agent.logicalDeviceId)
 	} else {
-		log.Infow("!!!!!!!!!!!ADDING-UNI", log.Fields{"deviceId": childDevice.Id})
+		log.Debugw("adding-uni", log.Fields{"deviceId": childDevice.Id})
 		portCap.Port.RootPort = false
 		//TODO: For now use the channel id assigned by the OLT as logical port number
 		lPortNo := childDevice.ProxyAddress.ChannelId
@@ -265,6 +270,7 @@
 		portCap.Port.DeviceId = childDevice.Id
 		portCap.Port.DevicePortNo = uniPort
 		portCap.Port.DeviceId = childDevice.Id
+
 		ldevice.Ports = append(ldevice.Ports, portCap.Port)
 		return agent.updateLogicalDeviceWithoutLock(ldevice)
 	}
@@ -959,9 +965,6 @@
 		return nil
 	}
 
-	// Ensure the device graph has been setup
-	agent.setupDeviceGraph()
-
 	var groups *ofp.FlowGroups
 	lDevice, _ := agent.getLogicalDeviceWithoutLock()
 	groups = lDevice.FlowGroups
@@ -1001,9 +1004,6 @@
 		return nil
 	}
 
-	// Ensure the device graph has been setup
-	agent.setupDeviceGraph()
-
 	var flows *ofp.Flows
 	lDevice, _ := agent.getLogicalDeviceWithoutLock()
 	flows = lDevice.Flows
diff --git a/rw_core/core/logical_device_manager.go b/rw_core/core/logical_device_manager.go
index f49e52a..19eb6a4 100644
--- a/rw_core/core/logical_device_manager.go
+++ b/rw_core/core/logical_device_manager.go
@@ -285,7 +285,11 @@
 	log.Debugw("AddUNILogicalPort", log.Fields{"logDeviceId": logDeviceId, "parentId": parentId})
 
 	if agent := ldMgr.getLogicalDeviceAgent(*logDeviceId); agent != nil {
-		return agent.addUNILogicalPort(ctx, childDevice)
+		if err := agent.addUNILogicalPort(ctx, childDevice); err != nil {
+			return err
+		}
+		// Update the device routes - let it run in its own go routine as it can take time
+		go agent.updateRoutes()
 	}
 	return status.Errorf(codes.NotFound, "%s", childDevice.Id)
 }
