Preliminary SEAS Controller Commands - Firmware Ver 2.40
- 24 Jan 2002
- ALL COMMANDS ARE TERMINATED IN CARRIAGE RETURN <cr> - don't forget! It's assumed for all commands below.
- mode of operation:
Standard commands (precede with # only, i.e. #STAT to get status):
NOTE: The FULL command set is ONLY available when the SEAS Controller is NOT running (see STOP command).
Firmware Ver 2.40 displays:
typical response: "23 1 F 44 1 1 : 1 1 5 0"
Firmware Ver 2.40 displays:
Rain detect (0 = NO) WS_Avg (m/s) 5 latest SEAS 2 values (# of non-zero values depends on parameter C of 'U'pdate Config command) 5 latest SEAS 3 values (# of non-zero values depends on parameter D of 'U'pdate Config command) 5 latest SEAS 2 blank values (# of non-zero values depends on parameter G of 'U'pdate Config command) 5 latest SEAS 3 blank values (# of non-zero values depends on parameter H of 'U'pdate Config command)
Record Time stamp (at end of analysis steps) Elapsed Time in minutes to collect the sample analyzed on this run 5 Fe2 sample results (# of non-zero values depends on parameter C of 'U'pdate Config command) 5 Fe3 sample results (# of non-zero values depends on parameter D of 'U'pdate Config command) 5 Fe2 blank results (# of non-zero values depends on parameter G of 'U'pdate Config command) 5 Fe3 blank results (# of non-zero values depends on parameter H of 'U'pdate Config command)
Example: 2001/06/15 17:04 23 Fe2: 1st result, 2nd result, 3rd result, 4th result, 5th result Fe3: 1st result, 2nd result, 3rd result, 4th result, 5th result Fe2-blank: 1st result, 2nd result, 3rd result, 4th result, 5th result Fe3-blank: 1st result, 2nd result, 3rd result, 4th result, 5th result
2001/06/15 17:04 HRH: Humidity %, Temperature Deg C PRC: Current Level in mm WND: WindEast, WindNorth, SpeedAverage STAT: Current Sample number, Elapsed Collection Time in minutes on current sample, System Status Byte, MainCPU Status Byte, Inlet Status Byte, SEAS 2 Status, SEAS 3 Status
HRH: 0.0 0.0 PRC: 0.0 WND: 0.0 0.0 0.0 STAT: 23 1 F 44 33 1 1
Example: PCMCIA CARD present - CARD OK! FLASH card capacity: 20839680 Records used: 114; available: 21326
Example of output in STOPPED mode: Firmware SEASCPU v2.40 A - Address acknowledge CLOCK(=YYYY/MM/DD HH:MM:SS) - Read/Set RT clock date/time D - Send latest standard data E - Send latest extended data F - FLASH card commands: FB - Read any block, hex FF - Read SEAS Instrument Data record, formatted FR - Read OPS data record, formatted FS - Status info GO - Re-start sampling H - Display Help message P - Display Configuration Parameters STAT - System status info STOP - Stop sampling UOK - Update EEPROM constants XMODE - XMODEM Dump PCMCIA card via RS232 console
Example:
Parm A: 2 Parm B: 3 Parm C: 3 Parm D: 3 Parm E: 30 Parm F: 2 Parm G: 2 Parm H: 2 Parm I: 30 Parm J: 30 Parm K: 30 Parm M: 2 Parm R: 60 Parm W: 0 Parm X: 15 Parm Y: 15 RD: 3 WD: 5 WMX: 100 WMN: 0
Example: SEAS1 Model: GEOFF/SEAS SerNum: 101 CfgDat: 03OCT01 Firmware: SEASCPU v2.40 LinuxClock: 2001/12/22 19:20:01 MetMode: 1 XMET OK WindCheck: 1 XMET Timeout Tick: 27 Intel Type 2+ 20MB PCMCIA CARD present - CARD OK! FLASH card capacity: 20840436 Records used: 644; available: 612310 SEAS Instrument Records used: 6; available: 3849 Sampling ENABLED
Standard 40MB FLASH cards will take FOREVER to read this way - the preferred method of reading data is to remove the FLASH card from the SEAS Controller and read it on a Linux-based laptop with PCCard slot per Linux FLASH Card Reading Instructions
- Sampling MUST be STOPPED to dump data.
- Dumps ops data ONLY - i.e., the data that can be read a record at a time with the FR command.
- This command is rudimentary; if you must dump data this way, use the FR command to display any record and see if it's where you wish to begin. Records are currently 64 bytes long, so you'll get 16384 records per dump request. (Record length is likely to change).
- Command dumps up to 1 MB of data from the requested starting record. The dump will end after the last valid record is reached, so if there is not actually 1 MB of data after the requested start record, the dump will stop (saves you time - you'd want it that way!)
- On command entry, requests: Start record # (0 aborts) ->
- Typical example - the following description assumes PCPLUS for terminal software, but any terminal program capable of XMODEM transfer should work.
APPENDIX 1: Configuration Parameters and (Ranges)
A = # of clean_inlet cycles before opening Sampler Inlet (1 - 10) [default: 2]
B = Sampler Inlet Level select - use 1,3,7 or 15 for levels 1 - 4 [default: 3 (2nd level)]
C = # of Fe2 unknown analyses to run on each sample (1 - 5) [default: 3]
D = # of Fe3 unknown analyses to run on each sample (1 - 5) [default: 3]
E = # of minutes til abort if Sampler Inlet Level NOT reached after opening (1 - 255) [default: 30]
F = # of clean_inlet cycles after analysis complete or after abort (1 - 10) [default: 2]
G = # of Fe2 analyses of "blank standard" (wash water) after unknown analysis (1 - 5) [default: 2]
H = # of Fe3 analyses of "blank standard" (wash water) after unknown analysis (1 - 5) [default: 2]
I = # of minutes til restart if RAIN is still detected after analysis complete or abort (1 - 255) [default: 30]
J = # of seconds to wash the Sampler Inlet (1 - 255) [default: 25]
K = # of seconds to flush the Sampler Inlet (1 - 255) [default: 30]
M = met mode ==> 0 = none, 1 = external MET, 2 = local MET (0,1,2 only) [default: 2]
R = # of minutes of restart delay between samples regardless; (0 disables, 1 - 255) [default: 120]
U = SEAS2_retry timeout (# of minutes of NO RESPONSE to commands during standard ops) (1 - 255)
[default: 15]
V = SEAS3_retry timeout (# of minutes of NO RESPONSE to commands during standard ops) (1 - 255)
[default: 15]
W = wind check toggle ==> 0 = OFF, 1 = ON (0,1 only) [default: 0]
X = SEAS2_analysis_timeout (SEAS taking too long to complete analysis) (1 - 255) [default: 15]
Y = SEAS3_analysis_timeout (SEAS taking too long to complete analysis) (1 - 255) [default: 15]
NOTE: Currently operational steps are sequenced on a 1-minute interval; this means there are often 1-minute delays between steps; most noticeable when multiple cycles are required to complete a function. For example, you may notice a pause between multtiple clean_inlet cycles, or during SEAS instrument steps.
APPENDIX 2: STATUS byte masks - see struct.dec
/* system_status masks - 1 = TRUE */ #define sample_OK 0x01 #define WIND_OK 0x02 #define RAIN 0x04 #define INLET_open 0x08 #define XMET_OK 0x10 #define analyze_OK 0x20 #define SEAS2_analyzing 0x40 #define SEAS3_analyzing 0x80 /* maincpu_status masks */ #define WND_pwr 0x01 /* power ON = 1, OFF = 0 */ #define MET_pwr 0x02 #define INLET_pwr 0x04 #define SEAS2_pwr 0x10 #define SEAS3_pwr 0x20 #define RDETECT 0x40 /* 0 = rain detected, 1 = NO rain (as sent by Rain Detector hardware) */ #define SDELAY 0x80 /* if set, restart delay in progress */ /* inlet_status masks - only available in FLASH record */ #define MOTOR_dir 0x01 #define MOTOR_enable 0x02 #define OPEN_limit 0x04 #define CLOSED_limit 0x08 #define PUMP1_pwr 0x10 #define FLUSH_pwr 0x10 #define PUMP2_pwr 0x20 #define WASH_pwr 0x20 #define FLUSHED 0x40 #define WASHED 0x80 ********************************************************************************** /* SEAS2_status & SEAS3_status values (NOT masks!) */ #define IDLE_powerup 0x01 #define RECORD_dark 0x02 #define RECORD_ref 0x03 #define MIX_reagent 0x04 #define SETTLING 0x05 #define RECORD_sample 0x06 #define FLUSH_sys 0x07 /* only after 'f' command */ #define IDLE_mdone 0x08 #define IDLE_fdone 0x09 /* only after 'f' command */ #define IDLE_datasent 0x0A