Skip to content

Commit 502e7d1

Browse files
committed
added NGX SAB
1 parent 1bbf1a6 commit 502e7d1

File tree

5 files changed

+44
-34
lines changed

5 files changed

+44
-34
lines changed

pychron/hardware/actuators/ngx_gp_actuator.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,11 +43,16 @@ def initialize(self, *args, **kw):
4343
return True
4444

4545
def actuate(self, *args, **kw):
46+
self.controller.set_acquisition_buffer(True)
47+
ret = super(NGXGPActuator, self).actuate(*args, **kw)
48+
self.controller.set_acquisition_buffer(False)
49+
return ret
50+
4651
# self.ask("StopAcq")
47-
self.controller.stop_acquisition()
48-
self.controller.canceled = True
52+
# self.controller.stop_acquisition()
53+
# self.controller.canceled = True
4954
# time.sleep(1)
50-
return super(NGXGPActuator, self).actuate(*args, **kw)
55+
# return super(NGXGPActuator, self).actuate(*args, **kw)
5156

5257
def get_channel_state(self, obj, delay=False, verbose=False, **kw):
5358
""" """

pychron/hardware/core/communicators/ethernet_communicator.py

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -252,7 +252,7 @@ class EthernetCommunicator(Communicator):
252252
message_frame = ""
253253
timeout = Float(1.0)
254254
strip = True
255-
default_timeout = 3
255+
# default_timeout = 3
256256
default_datasize = 2**12
257257

258258
_comms_report_attrs = (
@@ -319,14 +319,14 @@ def load(self, config, path):
319319
self.message_frame = self.config_get(
320320
config, "Communications", "message_frame", optional=True, default=""
321321
)
322-
self.default_timeout = self.config_get(
323-
config,
324-
"Communications",
325-
"default_timeout",
326-
cast="int",
327-
optional=True,
328-
default=3,
329-
)
322+
# self.default_timeout = self.config_get(
323+
# config,
324+
# "Communications",
325+
# "default_timeout",
326+
# cast="int",
327+
# optional=True,
328+
# default=3,
329+
# )
330330
self.default_datasize = self.config_get(
331331
config,
332332
"Communications",
@@ -461,7 +461,7 @@ def ask(
461461
retries = 2
462462

463463
if timeout is None:
464-
timeout = self.default_timeout
464+
timeout = self.timeout
465465

466466
re = "ERROR: Connection refused: {}, timeout={}".format(
467467
self.address, timeout
@@ -506,7 +506,7 @@ def reset(self):
506506
self._reset_connection()
507507

508508
def select_read(self, *args, **kw):
509-
timeout = self.default_timeout
509+
timeout = self.timeout
510510
handler = self.get_handler(timeout=timeout)
511511
if handler:
512512
handler = self.get_read_handler(handler, timeout=timeout)
@@ -583,7 +583,7 @@ def _reset_error_mode(self, timeout=None, use_error_mode=True):
583583
timeout = 0.5
584584

585585
if timeout is None:
586-
timeout = self.default_timeout
586+
timeout = self.timeout
587587

588588
self.error_mode = False
589589
return timeout

pychron/hardware/isotopx_spectrometer_controller.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,10 @@ def ask(self, cmd, *args, **kw):
5858
# else:
5959
# resp = self.event_buffer.get()
6060
# return resp
61+
def set_acquisition_buffer(self, flag):
62+
flag = "1" if flag else "0"
63+
self.debug(f"set acquisition buffer {flag}")
64+
self.ask(f"SAB {flag}")
6165

6266
def stop_acquisition(self):
6367
self.triggered = False
@@ -75,7 +79,8 @@ def initialize(self, *args, **kw):
7579

7680
self.communicator.strip = False
7781
# trying a new locking mechanism see ngx.trigger for more details
78-
self.lock = RLock()
82+
83+
self.lock = Lock()
7984
# self.event_buffer = Queue()
8085

8186
if ret:

pychron/spectrometer/isotopx/spectrometer/ngx.py

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ def trigger_acq(self, verbose=True):
128128
# time.sleep(0.25)
129129

130130
if not self.microcontroller.triggered:
131-
self.microcontroller.lock.acquire()
131+
# self.microcontroller.lock.acquire()
132132
# self.ask("StopAcq", verbose=verbose)
133133
self.microcontroller.stop_acquisition()
134134
self.microcontroller.triggered = True
@@ -192,7 +192,7 @@ def read_intensities(
192192
# verbose=True
193193
self._read_enabled = True
194194

195-
verbose = True
195+
# verbose = True
196196

197197
if verbose:
198198
self.debug(
@@ -201,12 +201,12 @@ def read_intensities(
201201
)
202202
)
203203

204-
self.microcontroller.lock.acquire()
204+
# self.microcontroller.lock.acquire()
205205
resp = True
206-
trigger_release = self.microcontroller.triggered
206+
# trigger_release = self.microcontroller.triggered
207207
if trigger or not self.microcontroller.triggered:
208208
resp = self.trigger_acq()
209-
trigger_release = True
209+
# trigger_release = True
210210
# self.microcontroller.lock.release()
211211
if resp is not None:
212212
# if verbose:
@@ -227,7 +227,7 @@ def read_intensities(
227227
keys = self.detector_names[::-1]
228228
while self._read_enabled:
229229
# with self.microcontroller.lock:
230-
line = self.readline(verbose=True)
230+
line = self.readline(verbose=verbose)
231231

232232
if verbose:
233233
self.debug("raw: {}".format(line))
@@ -292,16 +292,16 @@ def read_intensities(
292292
self.debug("keys: {}".format(keys))
293293
self.debug("signals: {}".format(signals))
294294

295-
try:
296-
self.microcontroller.lock.release()
297-
except RuntimeError as e:
298-
self.debug(f'Cannot release lock. "RuntimeError" {e}')
299-
300-
if trigger_release:
301-
try:
302-
self.microcontroller.lock.release()
303-
except RuntimeError as e:
304-
self.debug(f'Trigger Release. Cannot release lock. "RuntimeError" {e}')
295+
# try:
296+
# self.microcontroller.lock.release()
297+
# except RuntimeError as e:
298+
# self.debug(f'Cannot release lock. "RuntimeError" {e}')
299+
#
300+
# if trigger_release:
301+
# try:
302+
# self.microcontroller.lock.release()
303+
# except RuntimeError as e:
304+
# self.debug(f'Trigger Release. Cannot release lock. "RuntimeError" {e}')
305305

306306
return keys, signals, collection_time, inc
307307

pychron/spectrometer/jobs/dac_scanner.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -316,14 +316,14 @@ def _scan_min_dac_changed(self):
316316
self.tool.low = self.scan_min_dac
317317
self.tool.overlay.low = self.scan_min_dac
318318
self._scan_time_length_changed()
319-
self.graph.redraw()
319+
# self.graph.redraw()
320320

321321
def _scan_max_dac_changed(self):
322322
if self.tool:
323323
self.tool.high = self.scan_max_dac
324324
self.tool.overlay.high = self.scan_max_dac
325325
self._scan_time_length_changed()
326-
self.graph.redraw()
326+
# self.graph.redraw()
327327

328328
def _min_dac_changed(self):
329329
if self.min_dac < self.max_dac:

0 commit comments

Comments
 (0)