diff --git a/expert_gui_core/comm/ccda.py b/expert_gui_core/comm/ccda.py
index f9a13f03a16ab66975a8535ad850b15b07dc6903..f4262b135302b079d6336abc1a6f3e4ce60f3ef4 100644
--- a/expert_gui_core/comm/ccda.py
+++ b/expert_gui_core/comm/ccda.py
@@ -188,7 +188,7 @@ def get_class_from_device(device):
     return info
 
 
-def get_fecs_from_class(classes_to_find=[], operational=True):
+def get_fecs_from_class(classes_to_find=[], operational=True, acc=None):
     """
     Get all fec names running specific FESA class using binary name _DU_M.
 
@@ -203,14 +203,14 @@ def get_fecs_from_class(classes_to_find=[], operational=True):
     for class_ in classes_to_find:
         str_class = str_class + "#" + class_
 
-    key_cache = "get_fecs_from_class#" + str(operational) + "#" + str_class
+    key_cache = "get_fecs_from_class#" + str(operational) + "#" + str_class + "#" + acc
 
     if key_cache in DATA_CACHE:
         return DATA_CACHE[key_cache]
 
     class_fec = {}
     for fesa_class_name in classes_to_find:
-        fec_class = get_devices_from_class_per_fec(fesa_class_name)
+        fec_class = get_devices_from_class_per_fec(fesa_class_name, acc=acc)
         for fec in fec_class:
             if fesa_class_name not in class_fec:
                 class_fec[fesa_class_name] = []
@@ -310,7 +310,7 @@ def get_classes_from_fec(class_to_find=[], operational=True):
     return fec_classes
 
 
-def get_devices_from_class(class_to_find):
+def get_devices_from_class(class_to_find, acc=None):
     """
     Get all device names for a given class name.
 
@@ -320,8 +320,8 @@ def get_devices_from_class(class_to_find):
     :rtype: List
     """
 
-    key_cache = "get_devices_from_class#" + class_to_find
-    key_cache_object = "get_devices_from_class_object#" + class_to_find
+    key_cache = "get_devices_from_class#" + class_to_find + "#" + acc
+    key_cache_object = "get_devices_from_class_object#" + class_to_find + "#" + acc
 
     if key_cache in DATA_CACHE:
         return DATA_CACHE[key_cache]
@@ -337,6 +337,8 @@ def get_devices_from_class(class_to_find):
 
     for device in devices_ccda:
         if device is not None:
+            if (acc is not None) and (device.accelerator_name != acc):
+                continue
             if not device.is_global:
                 key_c = "get_device#" + device.name
                 DATA_CACHE[key_c] = device
@@ -428,7 +430,7 @@ def get_device(device_name):
     return device
 
 
-def get_devices_from_class_per_fec(class_to_find):
+def get_devices_from_class_per_fec(class_to_find, acc=None):
     """
     Get all device names for a given class name and organised per fec.
 
@@ -438,12 +440,12 @@ def get_devices_from_class_per_fec(class_to_find):
     :rtype: dict
     """
 
-    key_cache = "get_devices_from_class_per_fec#" + class_to_find
+    key_cache = "get_devices_from_class_per_fec#" + class_to_find + "#" + acc
 
     if key_cache in DATA_CACHE:
         return DATA_CACHE[key_cache]
 
-    devices = get_devices_from_class(class_to_find)
+    devices = get_devices_from_class(class_to_find, acc=acc)
     devices_per_fec = {}
     for device in devices:
         if device is not None:
@@ -825,16 +827,16 @@ if __name__ == "__main__":
     # print(get_instance_fields("PR.BPM"))
     t2 = round(time.time() * 1000)
 
-    print(get_gdevices_from_class("BPMOPS"))
+    # print(get_gdevices_from_class("BPMOPS"))
 
     get_pffc_opts = {
         'class_name': "BPMOPS",
         'property_name': "_DeviceInfo",
         'class_version': None
     }
-    print(get_property_fields_from_class(**get_pffc_opts))
+    # print(get_property_fields_from_class(**get_pffc_opts))
 
-    # print(get_devices_from_class_per_fec("BCSPILLSPS"))
+    print("here",get_devices_from_class_per_fec("BCSPILLSPS",acc="LHC"))
 
     # print(get_fecs_from_class(class_names))
 
diff --git a/expert_gui_core/gui/widgets/combiner/metanxcalswidget.py b/expert_gui_core/gui/widgets/combiner/metanxcalswidget.py
index f7deb32286fd1f2f7f6e065c2e3354c27066469a..d39038d34054922d0118fd14837fbec12ed69001 100644
--- a/expert_gui_core/gui/widgets/combiner/metanxcalswidget.py
+++ b/expert_gui_core/gui/widgets/combiner/metanxcalswidget.py
@@ -1590,7 +1590,7 @@ class _NXCALSSearch(QWidget):
     def add_scalar(self):
 
         QApplication.setOverrideCursor(Qt.WaitCursor)
-        self._add.setDisabled(True)
+        # self._add.setDisabled(True)
 
         try:
 
@@ -1725,7 +1725,7 @@ class _NXCALSSearch(QWidget):
 
         QApplication.setOverrideCursor(Qt.WaitCursor)
 
-        self._add.setDisabled(True)
+        # self._add.setDisabled(True)
 
         try: