From 25063c50d8ee684da8f6388c52e776c466af7cf1 Mon Sep 17 00:00:00 2001
From: su530201 <olivier.kaufmann@umons.ac.be>
Date: Wed, 26 Apr 2023 18:33:37 +0200
Subject: [PATCH] Tries to implement switch_on in mux_2024

---
 hardware_components/abstract_hardware_components.py | 2 +-
 hardware_components/mux_2024_rev_0_0.py             | 9 ++++-----
 2 files changed, 5 insertions(+), 6 deletions(-)

diff --git a/hardware_components/abstract_hardware_components.py b/hardware_components/abstract_hardware_components.py
index f328593e..7ed2d853 100644
--- a/hardware_components/abstract_hardware_components.py
+++ b/hardware_components/abstract_hardware_components.py
@@ -47,7 +47,7 @@ class MuxAbstract(ABC):
         self.addresses = kwargs.pop('addresses', None)
 
     @abstractmethod
-    def _get_addresses(self, addresses_file):
+    def _get_addresses(self):
         pass
 
     @abstractmethod
diff --git a/hardware_components/mux_2024_rev_0_0.py b/hardware_components/mux_2024_rev_0_0.py
index 65ba3692..22d39a98 100644
--- a/hardware_components/mux_2024_rev_0_0.py
+++ b/hardware_components/mux_2024_rev_0_0.py
@@ -112,10 +112,6 @@ class Mux(MuxAbstract):
         kwargs.update({'board_name': os.path.basename(__file__).rstrip('.py')})
         super().__init__(**kwargs)
         self.exec_logger.debug(f'configuration: {MUX_CONFIG}')
-        if self.addresses is None or 'addresses' in MUX_CONFIG.keys():
-            self._get_addresses(MUX_CONFIG['addresses'])
-            self.exec_logger.debug(f'Using {MUX_CONFIG["addresses"]} for {self.board_name}...')
-        self.exec_logger.debug(f'addresses: {self.addresses}')
         self._tca_address = kwargs.pop('tca_address', None)
         self._tca_channel = kwargs.pop('tca_channel', 0)
         self._roles = kwargs.pop(('roles', {'X': 'A', 'Y': 'B', 'XX': 'M', 'YY': 'N'}))
@@ -129,8 +125,11 @@ class Mux(MuxAbstract):
         self._mcp = [0, 0]
         self._mcp[0] = kwargs.pop('mcp_0', 34)  # TODO add assert on valid addresses..
         self._mcp[1] = kwargs.pop('mcp_1', 35)
+        if self.addresses is None:
+            self._get_addresses()
+        self.exec_logger.debug(f'addresses: {self.addresses}')
 
-    def _get_addresses(self, addresses_file):
+    def _get_addresses(self):
         d = inner_cabling[self._mode]
         for k, v in self.addresses.items():
             d[(k[0], self._roles[k[1]])] = v.update({'MCP': self._mcp[v['MCP']]})
-- 
GitLab