From 4bb4fcd4118a342c443d50f6f0b0f516b4a224de Mon Sep 17 00:00:00 2001
From: su530201 <olivier.kaufmann@umons.ac.be>
Date: Sun, 30 Apr 2023 12:48:31 +0200
Subject: [PATCH] Fixes bug with barrier in abstract hardware components

---
 hardware_components/abstract_hardware_components.py | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/hardware_components/abstract_hardware_components.py b/hardware_components/abstract_hardware_components.py
index 4cf08d44..090e020b 100644
--- a/hardware_components/abstract_hardware_components.py
+++ b/hardware_components/abstract_hardware_components.py
@@ -55,7 +55,7 @@ class MuxAbstract(ABC):
                     self.cabling.update({k: (v[1], k[1])})
         self.exec_logger.debug(f'{self.board_id} cabling: {self.cabling}')
         self.addresses = kwargs.pop('addresses', None)
-        self.barrier = kwargs.pop('barrier', None)
+        self.barrier = kwargs.pop('barrier', Barrier(1))
 
     @abstractmethod
     def _get_addresses(self):
@@ -108,9 +108,8 @@ class MuxAbstract(ABC):
                     return
 
             # if all ok, then wait for the barrier to open, then switch the electrodes
-            if self.barrier is not None:
-                self.exec_logger.debug(f'{self.board_id} waiting to switch.')
-                self.barrier.wait()
+            self.exec_logger.debug(f'{self.board_id} waiting to switch.')
+            self.barrier.wait()
             for role in elec_dict:
                 for elec in elec_dict[role]:
                     if elec > 0:  # Is this condition related to electrodes to infinity?
-- 
GitLab