From 0122e2c175190a73829f85f1710ea1fd9272cd51 Mon Sep 17 00:00:00 2001 From: su530201 <olivier.kaufmann@umons.ac.be> Date: Sun, 30 Apr 2023 17:33:28 +0200 Subject: [PATCH] Updates hardware_system test_mux --- Proposition software architecture.odp | Bin 155383 -> 159303 bytes hardware_components/mux_2024_rev_0_0.py | 4 ++-- hardware_system.py | 14 +++++++------- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Proposition software architecture.odp b/Proposition software architecture.odp index d50b57abf1521c4b64d5cdf3f8a6c233c2ebb2f5..848313ca686869e9f1d8aeec0e2d233308208c7c 100644 GIT binary patch delta 19026 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 Dwx&Ih delta 15030 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 A(*OVf diff --git a/hardware_components/mux_2024_rev_0_0.py b/hardware_components/mux_2024_rev_0_0.py index 152bb4d9..9ec4ec03 100644 --- a/hardware_components/mux_2024_rev_0_0.py +++ b/hardware_components/mux_2024_rev_0_0.py @@ -10,7 +10,7 @@ from digitalio import Direction # noqa MUX_CONFIG = HARDWARE_CONFIG['mux'].pop('default', {}) MUX_CONFIG.update({'voltage_max': 50., 'current_max': 3.}) # board default values that overwrite system default values -default_mux_cabling = {(elec, role) : ('mux_1', elec) for role in ['A', 'B', 'M', 'N'] for elec in range(1,9)} # 4 roles cabling electrodes from 1 to 8 +default_mux_cabling = {(elec, role) : ('mux_1', elec) for role in ['A', 'B', 'M', 'N'] for elec in range(1,9)} # defaults to 4 roles cabling electrodes from 1 to 8 inner_cabling = {'4_roles' : {(1, 'X'): {'MCP': 0, 'MCP_GPIO': 0}, (1, 'Y'): {'MCP': 0, 'MCP_GPIO': 8}, @@ -62,7 +62,7 @@ class Mux(MuxAbstract): tca_channel = kwargs.pop('tca_channel', 0) self._roles = kwargs.pop('roles', None) if self._roles is None: - self._roles = {'A': 'X', 'B': 'Y', 'M' : 'XX', 'N' : 'YY'} + self._roles = {'A': 'X', 'B': 'Y', 'M' : 'XX', 'N' : 'YY'} # NOTE: defaults to 4-roles if np.alltrue([j in self._roles.values() for j in set([i[1] for i in list(inner_cabling['4_roles'].keys())])]): self._mode = '4_roles' elif np.alltrue([j in self._roles.values() for j in set([i[1] for i in list(inner_cabling['2_roles'].keys())])]): diff --git a/hardware_system.py b/hardware_system.py index 71cfa941..976a225b 100644 --- a/hardware_system.py +++ b/hardware_system.py @@ -64,8 +64,9 @@ class OhmPiHardware: cabling = self._cabling)}) self.mux_barrier = Barrier(len(self.mux_boards) + 1) self._cabling={} - for mux_id, mux in self.mux_boards.items(): + for _, mux in self.mux_boards.items(): mux.barrier = self.mux_barrier + print(mux.cabling) update_dict(self._cabling, mux.cabling) print(self._cabling) self.readings = np.array([]) # time series of acquired data @@ -308,16 +309,15 @@ class OhmPiHardware: """ self.reset_mux() - if channel is None: - a = input('Which channel do you want to test? (1,A)') - if a =='': + if channel is not None: + if channel =='': electrodes = [1] roles = ['A'] else: try: - a = a.lstrip('(').rstrip(')').split(',') - electrodes = [int(a[0])] - roles = [a[1]] + channel = channel.lstrip('(').rstrip(')').split(',') + electrodes = [int(channel[0])] + roles = [channel[1]] except Exception as e: self.exec_logger.error(f'Unable to parse your answer: {e}') return -- GitLab