Get/set aux serial number, better clearing.
This commit is contained in:
2
dump.py
2
dump.py
@@ -28,7 +28,7 @@ LINES = [
|
|||||||
('Generation', ilt.GetGeneration, ''),
|
('Generation', ilt.GetGeneration, ''),
|
||||||
('Firmware version', ilt.GetFirmwareVersion, ''),
|
('Firmware version', ilt.GetFirmwareVersion, ''),
|
||||||
('Serial number', ilt.GetSerialNumber, ''),
|
('Serial number', ilt.GetSerialNumber, ''),
|
||||||
# No GetAuxSerialNumber, because it errors on my ILT1000-V02
|
('Aux serial number', ilt.GetAuxSerialNumber, ''),
|
||||||
('Controller temperature', ilt.GetControllerTempF, '°F'),
|
('Controller temperature', ilt.GetControllerTempF, '°F'),
|
||||||
('Ambient temperature', ilt.GetAmbientTempF, '°F'),
|
('Ambient temperature', ilt.GetAmbientTempF, '°F'),
|
||||||
('Date/time', ilt.GetDateTime, ''),
|
('Date/time', ilt.GetDateTime, ''),
|
||||||
|
|||||||
30
ilt1000.py
30
ilt1000.py
@@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
import datetime
|
import datetime
|
||||||
import serial
|
import serial
|
||||||
|
import time
|
||||||
|
|
||||||
|
|
||||||
class Error(Exception):
|
class Error(Exception):
|
||||||
@@ -48,7 +49,6 @@ class Saturated(Error):
|
|||||||
# getcalfactor
|
# getcalfactor
|
||||||
# getfeedbackres
|
# getfeedbackres
|
||||||
# setcalfactor
|
# setcalfactor
|
||||||
# setclockfreq
|
|
||||||
# setsamplecount
|
# setsamplecount
|
||||||
|
|
||||||
|
|
||||||
@@ -69,16 +69,18 @@ class ILT1000(object):
|
|||||||
# We default to ttyUSB1
|
# We default to ttyUSB1
|
||||||
|
|
||||||
def __init__(self, device='/dev/ttyUSB1', set_time=True):
|
def __init__(self, device='/dev/ttyUSB1', set_time=True):
|
||||||
self._dev = serial.Serial(device, 115200)
|
self._dev = serial.Serial(device, baudrate=115200)
|
||||||
try:
|
self._Clear()
|
||||||
# clear junk in outgoing buffer
|
|
||||||
self._SendCommand('echooff')
|
|
||||||
except UnsupportedCommand:
|
|
||||||
pass
|
|
||||||
assert int(self._SendCommand('echooff')) == 0
|
assert int(self._SendCommand('echooff')) == 0
|
||||||
if set_time:
|
if set_time:
|
||||||
self.SetDateTime()
|
self.SetDateTime()
|
||||||
|
|
||||||
|
def _Clear(self):
|
||||||
|
self._dev.timeout = 0.1
|
||||||
|
self._dev.write(b'\r\n')
|
||||||
|
self._dev.read(128)
|
||||||
|
self._dev.timeout = None
|
||||||
|
|
||||||
def _SendCommand(self, command):
|
def _SendCommand(self, command):
|
||||||
self._dev.write(command.encode('ascii') + b'\r\n')
|
self._dev.write(command.encode('ascii') + b'\r\n')
|
||||||
ret = self._dev.readline().rstrip().decode('ascii')
|
ret = self._dev.readline().rstrip().decode('ascii')
|
||||||
@@ -107,6 +109,11 @@ class ILT1000(object):
|
|||||||
def GetAuxSerialNumber(self):
|
def GetAuxSerialNumber(self):
|
||||||
return self._SendCommand('getauxserialno')
|
return self._SendCommand('getauxserialno')
|
||||||
|
|
||||||
|
def SetAuxSerialNumber(self, serial):
|
||||||
|
# SPEC ERROR
|
||||||
|
# This is undocumented.
|
||||||
|
assert int(self._SendCommand('setauxserialno %s' % serial)) == 0
|
||||||
|
|
||||||
def GetControllerTempF(self):
|
def GetControllerTempF(self):
|
||||||
return int(self._SendCommand('gettemp'))
|
return int(self._SendCommand('gettemp'))
|
||||||
|
|
||||||
@@ -162,3 +169,12 @@ class ILT1000(object):
|
|||||||
def GetClockFrequencyHz(self):
|
def GetClockFrequencyHz(self):
|
||||||
ret = self._SendCommand('getclockfreq')
|
ret = self._SendCommand('getclockfreq')
|
||||||
return float(ret) / 100
|
return float(ret) / 100
|
||||||
|
|
||||||
|
def SetClockFrequency(self):
|
||||||
|
# SPEC ERROR
|
||||||
|
# Command returns -999 on my ILT1000-V02. Implementation below is untested
|
||||||
|
# and likely wrong.
|
||||||
|
assert int(self._SendCommand('setclockfreq')) == 0
|
||||||
|
self._dev.write(b'A')
|
||||||
|
time.sleep(60.0)
|
||||||
|
self._dev.write(b'B')
|
||||||
|
|||||||
Reference in New Issue
Block a user