Parameters for Sonar.Ini ;-------------------------------------------------------------------------- ; [MAIN] : Overall configuration options: ;-------------------------------------------------------------------------- ; Priority=1 ; Sets the run time priority of the app (0:Normal, 1:High , 2:Real-Time) ; Note that priority of 2 causes problems with PC-Anywhere ; AutoStart=0 ; Set to 1 to start pinging on startup ; AutoEther=1 ; Set to 1 to enable transmission of all channels of sonar data over ethernet ; DspSimulator=0 ; Set not-zero to run without a DSP Card. ; Set to 3 to process step wedge through filters. ; Set to 2 to enable simulator mode and input a random delay of the ; outgoing pulse. ; Set to 1 to enable a stepwedge directly out. ; DspSimulatorTickInterval=5 ; Tick marks at top of display in simulator if greater than 0. ; AutoStore=0 ; Set to 1 to enable storage to local disk ; TAPE_LINE1=Your Company ; Annotation for segy data. ; TAPE_LINE2=Your Area ; Annotation for segy file second line. ; NCARD=1 ; Number of ADC64 cards installed (1-3). Config for each card is in [DSPN] sections. ; NSUB=1 ; Number of Subsystems installed. Config for each subsystem is in [SUBN] sections. ; NETWORK_QUEUE_SIZE=1000 ; Size of the data queue in kbytes. ; PlaybackQueueSize=500 ; Size of playback data queue in kbytes. ; DSP_QUEUE_SIZE=64 ; Size of the data queue in elements between the dsp and the data thread. ; A queue of this size is allocated for each card. ; COMMAND_PORT=1700 ; Socket number for command socket ; DATA_PORT=1701 ; Socket number for data socket ; NetDataIF=1 ; 1 to enable command and data sockets. 0 to disable. ; DisplayOptions=2 ; Set to 0 to minimize on startup. ; Set to 1 to keep display minimized at all times. ; Set to 2 to show always. ; Set to 3 to let the operator choose ; PostProcessing=1 ; Set to 0 to enable DSP based post processing ; DspSyncInterval=60000 ; Set to the number of milliseconds between time syncs of each DSP card. ; PciPollInterval=20 ; Set to the number of milliseconds to sleep when there is no data on the ; shared memory between DSP and PC. Can be increased when bigbuf is used. ; IgnoreMFOverlap=0 ; Set to 1 to ignore the size of the matched filter (SaveSize). This will ; deliver some data at the end of a pulse that is not good. ; SoundSpeed=1500 ; Sound speed in meters per second. ; CmdXmitSize=32000 ; CmdRecvSize=32000 ; DataXmitSize=32000 ; DataRecvSize=32000 ; Size of transmit and receive buffers for data on sockets. ; DualNetwork=0 ; Set to 0 to get 1 network socket for both command and data and storage. ; Set to 1 to get 2 simultaneous network connections. In this case the ; second connection replaces record for the storage window interface. ; Set to 2 to get 2 command sockets but only a single data socket. ; with storage support (on the second window). ; TimeSyncInterval=1 ; Time sync interval for hardware time sync in seconds. ; TimeSyncNetwork=0 ; Set to a time interval in seconds to enable sonar as a master timesync ; for the SIU and this computer. ; When this number is positive the bottle computer (Sonar.Exe) is the ; time sync master. Time sync is done periodically. When this parameter ; is set to 1 it will timesync every 30 seconds. For custom timesync ; interval set to 2 or greater (eg 2 for every 2 seconds). ; TimeSyncMaxLatency=100 ; Maximum latency between a query for time and a response from the SIU. ; If the latency is exceeded the response from the SIU is ignored and ; no timesync is performed. ; TimeSyncMaxDelta=20 ; Maximum time delta in ms to apply per time sync query (to the SIU). ; If this value is too small, the SIU time may never converge, but ; smaller values can help to filter out latency noise in the algorithm. ; XmitRate=500000 ; Rate of data socket (maximum sustainable) in bytes per second. ; XmitBufSize=0 ; Buffer size in bytes of network buffers to avoid overflow. If set to zero ; then rate limiting of data transmission is disabled. A good number is about ; 32000 ; DisableUnsolicitedMsgs=0 ; Set to 1 to disable unsolicited messages on the command socket (eg status msgs) ; CachePulseList=1 ; Set to 0 to dynamically scan for pulses on every request. The default ; keeps the disk from spinning up for a bottle system unless a pulse is ; loaded. ; CompatibilityOptions=0 ; Bit 0: Use old pulse file formats (per channel) and window based on samples ; TimerSource=-1 ; Set the internal timer source if >= 0. Standard (0), HP (1), Hardware (2) ; PostCodes=00001 01001 10001 11001 ; Power on self test codes to run on startup. This consists of up to 8 hex numbers. ; Each value has the following: (S)(C)(P)(F) where, ; (S) : One Hex digits of the subsystem index (0..f) ; (C) : One Hex digits of the channel number (0..f) ; (P) : Two Hex digits of the post code as defined in DiagnosticSelectionType (SonarMessages) ; (F) : Function to perform (1 => Execute but dont check status, 2 => Execute and include in status) ; Other values (ie 0) cause the POST test to be ignored. ; To run digital diag use code 00022. To run SB power amp feedback use code 00012 ; eg: PostCodes=00001 01001 10001 11001 00022 00012 ; RECOMMENDED POSTCODES: ; FSIC: 00001 10001 11001 00012 00022 00032 ; FSSB: 00001 00012 00022 ; IgnorePostError=1 ; When set to 0, NO SONAR DATA will be transmitted if there is a POST error. ; When set to 1, post errors are ignored. SONAR_MESSAGE_OVERRIDE message can ; be sent to set the flag to 1. ; StepWedgeSamples=0 ; Set to a positive value to fill the first N samples of each returned message ; packet with a step wedge for testing. ; StepWedgeGainDB=0 ; Overall scale factor for intensity level of step wedge in DB. ; Message_Dll= ; Name of message dll for advanced / extended processing. ;-------------------------------------------------------------------------- [File] - Store and Forward ;-------------------------------------------------------------------------- ; PrimaryDrive=D: ; BackupDrive= ; Sets the primary and backup hard disks for data storage. If the BackupDrive ; is specified and is not blank, then if a disk error occurs then storage will be ; switched from the primary to the backup drive. See the keyword "OnBackupDrive". ; BaseName=\DATA\DATA ; Base directory and file name for data storage. Note that this is preceeded by the ; PrimaryDrive or BackupDrive string when creating files. ; MaxFileSize=50 ; Maximum size of each file in mb. Once a file exceeds this size it is closed ; and a new file is created. Must be between 1mb and 2 gb. ; MaxFileTime=600 ; Maximum time a file can remain open for writing in seconds. Onces a file ; is open for this time it is closed and a new file is created. This determines ; the maximum amount of data that can be lost on power failure. ; AutoRecord=0 ; Set to 1 to enable recording of data to disk on startup. ; AutoPlayback=0 ; Set to 1 to enable playback of store and forward data on startup. ; FileQueueSize=100 ; Size of the data queue in elements destined to be written to a data file. ; PlaybackRate=100 ; Sets the playback rate in messages per second. ; AllowNoHeaderRead=0 ; Set to 1 to enable compatibility mode with old format JStar files. This ; reduces the amount of error checking done. ; MaxBackupSize=0 ; Set to the maximum size of the backup data files in mb. Once data is ; played back, it is deleted if this value is 0. Otherwise, only the oldest ; data is deleted until the total size of the backup files are below this value. ; MaxDiskUsage=0 ; Set to the maximum space allowed for data files waiting to be played back ; and backup data. Set to 0 to disable this check. ; MinDiskFree=0 ; Set to the mimimum amount of disk free space in mb. A new recording file will ; not be created (Disk Full Error) if there is not at least this much ; free disk space. A value of 0 will set the minimum disk free space to ; twice the MaxFileSize. A value less than 10 mb will otherwise set the minimum disk ; free space to 10 mb. Use -1 to disable this check (not recommended). ; DesiredBufferSize=65536 ; Data is buffered into disk-sector sized units before writing to the disk. This sets ; the buffer size. It must be at least the sector size (typically 512 bytes) and at ; most 2000000 bytes. The actual value used will be rounded to the current sector size. ; OnBackupDrive=0 ; When set to 1, data is recorded on the secondary (backup drive). Recording will be ; AUTOMATICALLY switched from primary to secondary drive when a disk error occurs if ; the BackupBaseDirectory is specified and is not blank. ;-------------------------------------------------------------------------- ; [SUBNIOM] : IO Channel configuration options (Starts with IO0 .. IO) ;-------------------------------------------------------------------------- ; SystemDescription=Sonar System ; Information (segy) written to disk ; ChannelDescription=Channel Info ; Information (segy) written to disk ; PulseDescription=Pulse Info ; Information (segy) written to disk ; DATA_TYPE=1 ; Format of data to be returned for this channel (1 => match filtered, ; 2 => raw, 4 => All data (all 8 channels of raw data), 5 => All low rate ; IO data. Other values will return incorrect results. ; DATA_NETWORK=1 ; Send data for this channel over the ethernet interface ; DATA_FILE=0 ; Write data for this channel to local storage ; DATA_NETWORK_WINDOW=1 1 0 2048 2048 ; Set the points to return to the ethernet (Frame decimation, decimation, first ; sample, total samples, block size in samples) ; DATA_FILE_WINDOW=1 1 0 2048 2048 ; Set the points to return and write to the disk ; PROCESSING_CALCONST=1000 ; 1000 * the calibration constant. ; PROCESSING_PAKDELAY=0 ; Spherical correction factor for the first ADC sample. Set to -1 to disable. ; Only applies to match filtered data ; PROCESSING_DIRECT_PATH = -1 ; Sets optimization window for agc processing in samples. ; Special Values: ; -1 : Use the size of the outgoing pulse + 20%. ; -N : Delay by abs(N) milliseconds. ; PING_GAIN=1000 ; 1000 * the gain factor for the outgoing pulse. Should be between 0 and 1000. ; Note that when the outgoing pulse is 0 (value of 0 here) the power amp is ; kept off. ; ADC_GAIN=1 ; Log 2 of gain factor for ADC. 0..3 without analog card. 0..7 and 12 with card. ; ADC_AGC=0 ; Set to 1 to enable AGC algorithm ; DACChan=-1 ; Default actual DAC channel. If set to -1, the logical and actual channel number ; are the same. If -2 then this channel is disabled. ; ADCChan=-1 ; Default actual ADC channel. If set to -1, the logical and actual channel number ; are the same. If -2 then this channel is disabled. ; SlaveChannel=-1 ; Set to the channel on the card where gain is controlled from. Only used if a slave ; card is present. The gain setting is sent both to the primary and slave channels. ; ADC_ANALOGCARDGAIN=1 ; Set to 0 to use only the on card 4 level gain stage. ; Set to 1 to use the preamp gain on the analog card only for gains. ; Set to 2 to use both a preamp gain and the on card 4 level gain stage. ; Set to 3 to use a 16-bit number as the gain (0..32767) (For Side Scan). ; ---------------------------------------------------------------------------------- ; The Current pulse file overrides the following settings. These are included ; for internal testing purposes only. ; ---------------------------------------------------------------------------------- ; PING_DAC_RATE=200000 ; Set the rate for data acquistion and DAC output. Note that when a pulse is loaded ; the pulse values will override this temporary setting. Currently the IO0 rate is ; used for all channels of a subsystem. ; ADC_DECIMATE=3 ; Set the ADC decimation factor. Note that when a pulse is loaded the pulse values will ; override this temporary setting. Currently the IO0 decimation is used for all channels ; of a subsystem. ; FFTSize=4096 ; Initial value of forward FFT size. This value is overridden when the first ; pulse is loaded. ; IFFTSize=4096 ; Initial value of inverse FFT size. This value is overridden when the first ; pulse is loaded. ; FFTDecimation=1 ; Initial forward FFT decimation factor. This value is overridden when the first ; pulse is loaded. ; MatchFirst=0 ; Initial value of first value in matched filter. This value is overridden when the ; first pulse is loaded. ; MinSaveSize=0 ; Minimum save size per matched filter. Must be less than IFFTSize. When set to ; 0 the save size as specified in the pulse file is used. ; CompressNet=0 ; CompressDisk=0 ; Set to 0 for no compression. Set to 1 for about 50% compression. Other ; options TBD. ; RawDataItemID=-1 ; Used to enable special diagnostic data collection. Set to 256 * subsystem + channel ; to send raw data to the specified subsystem / channel pair for special diagnostic ; processing. The subsystem / channel routed to should have ACTADCChan and ACTDacChan ; set to -1 to ignore true io. ;-------------------------------------------------------------------------- ; [DSPN] : ADC64 card options (Starts with DSP0 .. DSP) ;-------------------------------------------------------------------------- ; DspExecutable=.\DSP\SONAR.OUT ; File name of ADC64 executable file image ; BigBuf=0 ; When zero it uses the standard buffer size for shared memory between the ; DSP and the PC (PCI Bus) of 128 K. Larger values are needed for some high ; data rate applications. ; TimeSyncMask=0 ; Mask of trigger in bits to use for the time sync function or 0 to disable ; ReferenceADCValue=195 ; Reference ADC Value for SSL and SSH VGA gain profiles (0..255) ; VersionNumber=0 ; Version number of attached analog card. ; TriggerOutInversion=0 ; This is a hex value. ; Bit map to invert the trigger out line polarity. Bit 0 is for the first trigger line. ; Bit 1 for the second and bit 2 for the third. There are two sets of values, namely: ; Bits 0-7 : Invert when any subsystem is pinging if set to 1. ; Bits 8-15: Invert when all subsystems are NOT pinging if set to 1. ; TriggerInInversion=0 ; This is a hex value. ; Bit map to invert the trigger in line polarity. Bit 0 is for the first trigger line. ; Bit 1 for the second and bit 2 for the third. The misc digital input trigger invers ; follow. Note that the invert is done before the debounce logic. ; ConfigValues=0 0 0 0 ; Overall config values. Not currently used. ; FPGAFile= ; File name of FPGA data file to download ; LOWRATEIO_NETWORK=0 ; Set to 1 to send low rate analog data up the network interface ; LOWRATEIO_DISK=0 ; Set to 1 to write low rate analog data to the disk ; LowRateIOAlgorithm=0 ; Defines the algorithm for low rate io data collection. Values: ; 0 : Disabled ; 1 : Use ADC64 channels or FSIC Serial ADC - collect 8 values ; 2 : Retrieve data from ADC64 channels 4, 5, 6, 7 ; 3 : Mux ADC64 channels ; 4 : Use FSIC Serial ADC - collect 8 values ; TemperatureAlerts=-20.0 -10.0 60.0 65.0 100.0 ; Ambient temperature Thresholds in degrees C ; If the ambient temperature in below the first or greater than the last then ; the sensor has an invalid reading. ; If between the first and second thresholds then the bottle is below spec temp ; If between the second and third then the bottle is in normal spec temp range ; If between the third and fourth then it is too hot. ; If between the fourth and fifth then the bottle is way to hot and THIS WILL ; CAUSE THE SONAR TO TURN OFF ALL PINGING ; TemperatureAlertsEnable=0 ; Set to 1 to enable monitoring of temperature alerts. ; LOWRATEIO_DECIMATION=1 ; Decimation factor for low rate io data (minimum of 1). ; AmbientScale=-17.777 0.00694 ; Offset and gain conversion factors for ambient sensor (volts to degrees C). ; BottleScale=-17.777 0.00694 ; Offset and gain conversion factors for bottle temp sensor (volts to degrees C) ; For older system, these values whould be -17.777 and 55.55 ; HumidityScale=-1351.9 1.566986e-1 -5.820021e-6 7.3137584e-11 ; Conversion factors (A B C D) from volts to humidity for humidity sensor. ; A + B * X + C * X ^ 2 + D * X ^ 3 ; PowerScale=0.0 0.00308 ; Offset and gain conversion factors for 48 volt sensor (volts sensed to power Volts) ; Once converted the 48 volt sensor should read at about 48 volts. ; Card=i ; Remap of logical to physical card number. ; DIAGNOSTIC_PARAMETERS=1 50 100 2250 0 0 0 0 0 0 ; Sets thresholds and checks for running diagnostics. These are currently: ; FSSB: ; 0: Hardware Analog Card Version Number (1) ; 1: Power Amp Feedback with 0 VDC : Max Mean Voltage * 1000 (100 => 0.1 Volts) ; 2: Power Amp Feedback with 0 VDC : Max Variance in Volts**2 * 1000000 ; 3: Power Amp Feedback Minimum Signal Level ; 4: Unused ; 5: Unused ; 6: Unused ; 7: Unused ; 8: Unused ; 9: Unused ; Recommended: DIAGNOSTIC_PARAMETERS=1 50 100 2250 0 0 0 0 0 0 ; FSIC: ; 0: Must be 2 to enable feedback diagnostic, otherwise disabled. ; 1: Power Amp Feedback with signl Amp On : Min Std Dev in Micro-Volts ; 2: Power Amp Feedback with 0 VDC Amp Off : Range about 48 Volt mean in mv ; 3: Power Amp Feedback with 0 VDC Amp On : Range about 24 Volt mean in mv ; 4: Minimum reading of 48 volts * 1000 ; 5: Maximum reading of 48 volts * 1000 ; 8: Unused ; 9: Unused ; Recommended Vals: DIAGNOSTIC_PARAMETERS=2 4000 2000 2000 40000 64000 0 0 0 0 ;-------------------------------------------------------------------------- ; [SUBN] : Subsystems installed (Starts with SUB0 .. SUB) ;-------------------------------------------------------------------------- ; NChan=1 ; Number of IO channels installed (1-8). Config for each channel is in [SUBNIOM] ; sections, where N is the current subsystem and M is the current channel (0-7). ; PulseDirectory= ; Set to the directory name where pulse files are located ; SystemNumber=0 ; End user subsystem number for this channel (as defined in Subsystem.h) ; SystemType=8 ; Type of processing for this subsystem: ; 8 => ADC64 Subbottom, ; 0 => FSIC_SB, 1 => FSIC_SSL, 2 => FSIC_SSH ; Card=0 ; Primary ADC64 card for this subsystem. ; SlaveCard=-1 ; Slave ADC64 card for this subsystem for special applications. When a slave ; card is present and ADC or DAC is located on the slave card by adding 8 to ; the actual channel number. Thus DAC 8 is the first on the slave card. ; PING_SELECT=Ping.Dat ; File name of outgoing pulse/matched filter pair ; PING_BLOCKS=3 ; Minimum number of sample blocks per ping. This effectively sets the ping rate ; The size of a sample block is nominally 512 but this is a compilation option. ; PING_RATE=0 ; Approximate ping rate * 1000.0 in Hz. If non-zero, this overrides PING_BLOCKS ; PING_RANGE=0 ; Approximate ping range in 1/1000 meter units (mm). ; PING_TRIGGER=0 ; Set to 0 for internal trigger, 1 for external trigger, 2 for coupled mode, 3 for ; gated mode. ; Set to -1 for synchronous EXTERNAL TRIGGER (trigger now). NOTE that synchronous ; mode ASSUMES that the trigger happens when the ADC is not being triggered. ; PING=0 ; Set to 1 to enable pinging. Set to 2 to ping once. ; ADC_USETIMER5CLOCK=0 ; Set to 1 to set the clock out on the 100-pin connectur to the ADC conversion rate ; NOTE that you must externally trigger the ADCs when set to 1. When set to 0 ; ADCs are internally triggered. ; TriggerMask=201 ; Trigger in and out mask in HEXADECIMAL. ; Bits 0-5: Trigger in input digital io line(s) to monitor. ; Bit 6: Enable software (ethernet) trigger in. ; Bit 8-13: Trigger out digital IO line(s) to assert. ; Bit 16: Couple this system with SB data (Chans 0..1) ; Bit 17: Couple this system with SSL data (Chans 2..3) ; Bit 18: Couple this system with SSH data (Chans 4..5) ; TriggerOutLength=0 ; Length of the trigger out pulse in us. This value is rounded to a 250 us ; multiple (FSIC card) and has a minimum value of 250. The maximum is about ; 30000 (that is, 30 ms). ; DIGITAL_OUT=0 ; Set to the default values for the Digital IO bits on the 100-pin connector ; PING_DAC_CHANNELS=1 ; Bitmap (unused currently) to enable either or both DAC channels ; ADC_CHANNELS=1 ; Bitmap used to enable up to 32 ADC channels. This is used to set the analog mux. ; Each set of 4 bits selects one of 4 possible mux channels (Only the first bit set ; is used). For example, so select ADC0 to look at IN2-IN3 and ADC1 to look at IN8-IN9 ; use the value 18 [(2 * 1) + (1 * 16)]. To enable automuxing select either the ; values 0x33333333 (first 2 channels on each mux) or 0x77777777 (first 3 channels on ; each mux) or 0xFFFFFFFF (all channels on all muxes). When automuxing, only data ; format 4 (see IO section) is valid. ; USE_ANALOG_CARD=1 ; NOTE: This value is specifed in hex format. ; For the standard SB subsystem systems: ; Set to 1 to use the "Alan" analog card logic. Set to 0 to drive the 100-pin DIO lines ; directly. This effects trigger out, power amp on/off, and external interrupt handlers. ; Bit 0: Enable use of analog card. ; Bit 1: If 1 => keep power amp on between pings ; Bit 2: If 1 => keep power amp on when sonar is off ; For the FSIC subsystems: ; Bit 1 (0x2) : Keep amp on when pinging ; Bit 2 (0x4) : Keep amp off when pinging ; Bit 3 (0x8) : Bandpass mode on adcs ; FindFile=*.* ; File qualifier for pulse files for this subsystem used in FindFirst/FindNext. ; TelemetryFormat=0 ; Reporting format for data. Choose from: ; 0: Segy ; 1: SideScan ; 2: Private - Compressed for Telemetry Bandwidth Reduction ; 3: Compressed Header : Decompression Library unpacks to Segy ; 4: Compressed Header : Decompression Library unpacks to SideScan ; DiskFormat=-1 ; Same meaning as telemetry format. Compressed header format IS NOT ; recommended since it lacks a full time stamp. A value of -1 will ; base the format on the TelemetryFormat, but disabling the compressed header option. ; EnableData=1 ; 1 to enable data output for this subsystem. 0 to disable. ; TriggerDivisor=1 ; Trigger divisor in external and coupled modes. ; TriggerSystem=0 ; Subsystem index to trigger off of ; TriggerDelay=0 ; Trigger delay in external and coupled modes in us. ; AGCHigh=32000 ; High threshold for AGC algorithm. ; AGCLow=7500 ; Low threshold for AGC algorithm. ; EnablePingSorting=-1 ; Set to 1 to enable ping sorting. Set to 0 to disable. -1: Sort if ; sidescan channel. ; HysterisisBits=0 ; Bits of hysterisis on "WeightingFactor" of returned data. A value of 0 ; means no hysterisis. A value of one requires a change of 2 bits. ; TriggerOverride=0 ; Set non-zero to IGNORE SONAR_MESSAGE_PING_TRIGGER messages from the topside ; and use the Sonar.ini file default only ; MultiPingAlgorithm=1 ; Multiping algorith option. Choose from ; 0 : Multiping is not supported. ; 1 : Use algorithm 2 for a subbottom and algorithm 3 for a sidescan ; 2 : Multiping data ends at the next pulse (of any pulse phase). ; 3 : Multiping data continues UNTIL the next pulse of the same pulse phase. ; 4 : Multiple pings in the watercolumn supported. Window determines spherical correction ; factor and ping depth. ;-------------------------------------------------------------------------- ; [SerialN] : RS232 configuration options (Starts with Serial0..Serial7) ;-------------------------------------------------------------------------- ; CREATE=0 ; Use 1 for standard serial port. 2 for DMU6. ; Network=1 ; 1 to enable data on ethernet ; NetworkRaw=0 ; 1 to enable unparsed (raw) data on ethernet ; Disk=0 ; 1 to enable data on the disk ; DiskRaw=0 ; 1 to enable unparsed (raw) data on disk ; DATA= ; Default string to write to port on init ; Port=N ; Specifies the actual hardware serial port number for the channel. Default ; is the channel number. ; Baud=9600 ; Baud rate of connection. ; Parity=2 ; Parity of port (0=>even, 1=>odd, 2=>none, 3=>mark, 4=>space ; StopBits=1 ; Stop bits for port. Minimum of 1 ; WetPortCheckInterval=100 ; Data polling interval in ms. ; ExtendedParsingInfo=0 ; Extended parsing info, reserved for future applications. ; DataBits=8 ; Data bits per character (maximum of 8). ; Priority=0 ; Set the thread priority for serial io. A value of 0 is NORMAL, 1 is ; above normal, and 2 is highest (real time). ; Parser=0 ; Parsing algorithm. Choose from: ; 0: None - read and send up any data. ; 1: Pitch/Roll in Simrad EM1000 format - This consists of 5 16-bit words with values ; (Header)(Roll)(Pitch)(Heave)(Heading) - Parser for MRU (records with gaps) ; 2: Paroscientific Pressure Meter ; 3: Pitch/Roll in Simrad EM1000 format - Parser for TSS unit (continuous xmission). ; 4: Parse NMEA and send specific messages. Messages parsed are: ; $SDDBT : Altitude from Simrad Mesotech 1007 or compatible ; $PTNTHPR,x.x,a,x.x,a,x.x,a : Heading, Pitch, Roll from Honeywell HMR3000 ; Note the x.x in above must be setup in units of degrees ; 5: Parse and send generic NMEA Strings ; VerifyChecksum=2 ; Effects how NMEA strings are validated. 0 returns any line of data. 1 Validates ; that a string begins with a $ and has a * or *. 2 also validates the ; checksum. If non-zero only valid strings are processed further. ; DiagnosticIOPort=0 ; Set to a VALID parallel port IO address IN HEX to enable latency testing. The parallel ; port data bits will then be asserted as soon as a serial record is received. A ; scope can then be attached to the port to detect latency between serial io and ; time tag events. ; ReadIntervalTimeout=0 ; Read interval timeout in ms. After the first character, if the next one does not ; arrive within the interval then the read is aborted (end of packet). A value of ; 0 disables. ; ReadTotalTimeout=0 ; Read total timeout in ms. Waits this long for the first character (or all chars if ; the interval timeout is 0). A value of 0 results in a default of 1 ms. ; WriteTotalTimeout=0 ; Suspend up to this long in ms waiting for a write. A value of 0 uses 1.5 times the ; WetPortCheckInterval. ; TimeStampFirstChar=0 ; Set to 1 or 2 to timestamp the first character read in a buffer. This will reduce the ; jitter in the timestamp read, which can be as high as 20 ms otherwise. Setting this ; flag makes the code less efficient. ; A value of 1 will read the port twice per loop: Once for the first character and then ; for what is remaining in the buffer. ; A value of 2 will read the port three times per loop: Once for the first character and ; then once for what is remaining in the buffer and then once more. ; Choose between a value of 1 or 2 by the size of the read fifo buffer and the size of each ; expected record. If the fifo buffer size is less than the amount of data per record then ; the value 2 should be selected. Otherwise the value 1 should be selected. ; TimestampBias=0 ; Bias of timestamp of each record in ms. A negative value moves back in time. Since ; the data is buffered by the hardware, there is a fixed latency in receipt of data. ; This parameter allows the timestamp to be biased (usually back in time) to compensate ; for these latencies as well as internal device sampling latency. A scope connected ; to the parallel port with the DiagnosticIOPort option can be used to determine this ; value. For a receive buffer size of N and a baud rate M, the approximate value for ; time stamp at first character receipt would be (assuming that TimestampFirstChar=1): ; - (1000 * 10.0 / M) * (N + 2) ; Value must be between +-500 or it is ignored. ; InitString= ; Init string to send to unit on startup or other failure condition. To insert non-printable ; characters use \n (newline), \r (return) or \XX where XX represents the value to insert in ; 2 hex digits. ; InitTimeout=10000 ; Timeout for init string in ms. The init string is sent after this period of inactivity ; or upon startup. A value of <= 0 disables the init string processing. ;-------------------------------------------------------------------------- ; [SerialN] : Built in support options. ;-------------------------------------------------------------------------- ; In addition to generic devices, the sonar supports some industry standard ; devices. This section describes the setup procedure and recommended ; configuration options for these devices. ;-------------------------------------------------------------------------- ; Seatex MRU4 ;-------------------------------------------------------------------------- ; Setup: Using the Seatex provided configuration utility, set the following: ; Baud: 9600 ; Data Format: EM1000 ; Transmission Rate: 20 Hz ; When properly set up, the device will transmit a fixed record of 10 char ; at a 20 Hz rate. ;-------------------------------------------------------------------------- ; Ini File Section: The [SerialN] section should have the following ; Create=1 ; Parser=1 ; ReadIntervalTimeout=5 ; ReadTotalTimeout=1000 ;-------------------------------------------------------------------------- ;-------------------------------------------------------------------------- ; TSS Pitch Roll ;-------------------------------------------------------------------------- ; Setup: Using the Seatex provided configuration utility, set the following: ; Baud: 2400 ; Data Format: EM1000 ; Transmission Rate: 23 Hz (Implied) ; When properly set up, the device will transmit a fixed record of 10 char ; at a 23 Hz rate. ;-------------------------------------------------------------------------- ; Ini File Section: The [SerialN] section should have the following ; Create=1 ; Parser=3 ; Baud=2400 ;-------------------------------------------------------------------------- ;-------------------------------------------------------------------------- ; Paroscientific Pressure Meter ;-------------------------------------------------------------------------- ; Setup: Using the vendor provided configuration utility, set the following: ; Baud: 9600 ; Transmission Rate: 1 Hz ; When properly set up, the device will transmit a fixed record of 12 char ; at a 1 Hz rate. ;-------------------------------------------------------------------------- ; Ini File Section: The [SerialN] section should have the following ; Create=1 ; Parser=2 ; ReadIntervalTimeout=5 ; ReadTotalTimeout=2000 ;-------------------------------------------------------------------------- ;-------------------------------------------------------------------------- ; Simrad Mesotech 1007 or compatible ;-------------------------------------------------------------------------- ; Setup: Use the vendors default configuration (9600 baud) ;-------------------------------------------------------------------------- ; Ini File Section: The [SerialN] section should have the following ; Create=1 ; Parser=4 ;-------------------------------------------------------------------------- ;-------------------------------------------------------------------------- ; Honeywell HMR3000 Pitch Roll Heading ;-------------------------------------------------------------------------- ; Setup: Use the vendors default configuration (19200 baud). Specify ; an update rate for the PTNTHPR. Disable (0 for time period) all others ;-------------------------------------------------------------------------- ; Ini File Section: The [SerialN] section should have the following ; Create=1 ; Parser=4 ; Baud=19200 ;-------------------------------------------------------------------------- ;-------------------------------------------------------------------------- ; Crossbow DMU6 ;-------------------------------------------------------------------------- ; Setup: The unit should be shipped from the factory set to 9600 baud ;-------------------------------------------------------------------------- ; Ini File Section: The [SerialN] section should have the following ; Create=2 ; DMUVersion=0 ; Command_calibrate=1 ;-------------------------------------------------------------------------- ; Special ini file options for the Crossbow. ;-------------------------------------------------------------------------- ;[SerialN] ; CREATE=0 ; Use 2 for DMU6. ; NETWORK=0 ; 1 to enable data on ethernet ; DISK=0 ; 1 to enable data on ethernet ; CALCONSTANT=200 ; Calibration constant for DMU6 ; TIMECONSTANT=100 ; Time constant for DMU6 ; HeaveTC=-1 ; Heave time constant. Set to a value between 0 and 255 to send ; this message on init. 0 => no heave, 1 => max roll off, 255=>lowest ; roll off. ; SAMPLERATE=100 ; Sample rate for polled operation in ms. Use -1 for continous mode ; at maximum rate, and -N for decimated by N in continuous mode. ; COMMAND_CALIBRATE=0 ; Set to 1 to calibrate the device on init ; DMUVersion=1 ; DMU Version. This is a bitmap with the following bits: ; Bit 0: Heave estimation present if 1 ; Bit 1: New Temperature Sensor if 1 ; Bit 2: 4 G Range on Accelerometers if 1 ; Bit 3: DMU-VG has no temperature sensor - temp set to -32768 if 1 ; HeaveScale=1000 ; Scale factor * 1000 for heave sensor input. Used to convert ; to Meters. ; Port=N ; Actual serial port that supplies data.