# This configuration file is Python code. You should not # need to change it; but if you do, you need to know that # in Python, the *indentation matters*. # The following will normally be empty lists, like this: # #ignore_ADCPs = [] #ignore_other_sensors = [] # # But if you want to run with only a subset of the ADCPs # and/or ancillary sensors that are defined in this file, # you can list the ones you want to ignore like this: # #ignore_ADCPs = ['wh300', 'os75'] #ignore_other_sensors = ['GPS'] # # In this case, you are listing the 'instrument' field of each # ADCP or sensor you wish to exclude. # ignore_ADCPs = ['wh600',] ignore_other_sensors = [] use_publishers = False # 2-letter abbreviation for logging file prefix and constructing dbase name; # read by procsetup.py shipabbrev = "hs" ADCPs = [ { 'instrument' : 'wh600', 'setup' : 'rdi_setup', 'terminal' : 'oswh_term', 'defaultcmd' : 'wh600_default.cmd', 'commands' : ('CL0',), # is required to make bottom track work 'datatypes' : ('wh600',), 'wakeup_baud' : 9600 }, { 'instrument' : 'wh300', 'setup' : 'rdi_setup', 'terminal' : 'oswh_term', 'defaultcmd' : 'wh300_default.cmd', 'commands' : ('CL0',), # is required to make bottom track work 'datatypes' : ('wh300',), 'wakeup_baud' : 9600 }, ] # Do not edit the next three lines: common_opts = '-f %s -F -m 1 -H 2 ' % (shipabbrev,) nb_opts = '-lE -c -I' # raw data, write a log file, log errors oswh_opts = '-lE -c -O -I' # -O for OS/WH data format # -c for checksum, -I to initiate pinging sensors = [ { 'instrument' : 'wh600', 'device' : 'ttyUSB5', 'baud' : 38400, 'format' : 'binary', 'subdir' : 'wh600', 'ext' : 'raw', 'opt' : oswh_opts , }, { 'instrument' : 'wh300', 'device' : 'ttyUSB2', 'baud' : 38400, 'format' : 'binary', 'subdir' : 'wh300', 'ext' : 'raw', 'opt' : oswh_opts , }, { 'instrument' : 'GPS Furuno', 'device' : 'ttyUSB0', 'baud' : 4800, 'format' : 'ascii', 'subdir' : 'gpsnav', 'ext' : 'gps', 'strings' : ('$GPGGA',), 'messages' : ('gps',), 'opt' : '-c -Y2', # $PYRTM }, { 'instrument' : 'POS/MV', 'device' : 'ttyUSB1', 'baud' : 19200, 'format' : 'ascii', 'subdir' : 'posmv', 'ext' : 'pmv', 'strings' : ('$GPGGA', '$INGGA', '$PASHR'), # use () for all 'messages' : ('gps', 'pmv'), 'opt' : '-c -Y2', # $PYRTM }, { 'instrument' : 'Gyro-stbd', 'device' : 'ttyUSB3', 'baud' : 4800, 'format' : 'ascii', 'subdir' : 'gyro1', 'ext' : 'hdg', 'strings' : ('$HEHDT',), 'messages' : ('hdg',), 'opt' : '-c -Y2 -s19', # $PYRTM #subsample }, { 'instrument' : 'Gyro-port', 'device' : 'ttyUSB4', 'baud' : 4800, 'format' : 'ascii', 'subdir' : 'gyro', 'ext' : 'hdg', 'strings' : ('$HEHDT',), 'messages' : ('hdg',), 'opt' : '-c -Y2', # $PYRTM }, ] ## speedlog: enabled in /home/adcp/config/uhdas_cfg.py speedlog_config = { 'instrument' : 'wh300', 'serial_device' : '', 'baud' : 9600, 'eth_port' : 'eno1', # this is the NIC to serve web_speedlog.py 'zmq_from_bin' : "tcp://127.0.0.1:38010", 'pub_addr' : 'tcp://127.0.0.1:38020', #NO SPACES # 'heading_offset' : xx.x, # get from EA_estimator.py 'scale' : 1.0, # multiplies velocity measurement 'bins' : (1,3), # zero-based; input to python slice() 'navg' : 5, # pings to average } ## this section describes... publishers = [ { 'subdir' : 'gpsnav', 'pub_addr' : 'tcp://127.0.0.1:38000', # uses this port #NO SPACES 'sample_opts' : '-c -Y2 -s60', # $PYRTM 'autopilot_msg': '$GPGGA', # autopilot looks at this position msg }, ] #### DO NOT CHANGE the following ################ ADCPs = [A for A in ADCPs if A['instrument'] not in ignore_ADCPs] sensors = [S for S in sensors if S['instrument'] not in ignore_ADCPs] sensors = [S for S in sensors if S['instrument'] not in ignore_other_sensors] from uhdas.uhdas import make_publishers # append zmq_from_bin port to opts in appropriate ADCP sensor block make_publishers.modify_sensors_for_speedlog(sensors, speedlog_config) # substitute publishers into sensors for zmq publishing if use_publishers==True: make_publishers.modify_sensors_and_publishers(sensors, publishers)