APU-102 Wayside Equipment Command Shell (WECS): Difference between revisions
| Line 13: | Line 13: | ||
= Commands Supported: = | = Commands Supported: = | ||
TDIR – Train directory (list last 5 trains) | |||
LT94 – Consist dump in T94 (S918A;S9203) format. | |||
STAT – AEI unit status. | |||
EXIT – Exit the interface. | |||
For an updated list of commands, type “?” at the prompt. | |||
Example: | |||
[[image:WECSIMG2.png|center]] | |||
= Typical Usage: = | = Typical Usage: = | ||
<p>Once the train clears the AEI system, the APU102 processes the train and makes the final consist available to the external wayside detector unit(s). Because there is a finite period of processing required by the APU102 to produce this consist, it may take as long as two minutes after the train clears the site before a consist can be accessed (especially in multitrack territory). In most cases, it will be available within 10 seconds</p><p>To allow the external processors to be aware that processing may still be underway, a “STAT” command is available. By inspecting the “Postprocessing?” and “Acquiring” fields returned by the STAT command, the external device is able to determine if additional wait time is necessary. </p><p>In the simplest usage scenario, a defect detector accesses the AEI interface only after it has finished recording a train. In that case, the detector would simply request a periodic STAT dump from the unit, unit it is reported that “acquisition” and “post processing” is complete. At that time, the external device can issue an “LT94” command to retrieve the consist for the last train.</p> | <p>Once the train clears the AEI system, the APU102 processes the train and makes the final consist available to the external wayside detector unit(s). Because there is a finite period of processing required by the APU102 to produce this consist, it may take as long as two minutes after the train clears the site before a consist can be accessed (especially in multitrack territory). In most cases, it will be available within 10 seconds</p><p>To allow the external processors to be aware that processing may still be underway, a “STAT” command is available. By inspecting the “Postprocessing?” and “Acquiring” fields returned by the STAT command, the external device is able to determine if additional wait time is necessary. </p><p>In the simplest usage scenario, a defect detector accesses the AEI interface only after it has finished recording a train. In that case, the detector would simply request a periodic STAT dump from the unit, unit it is reported that “acquisition” and “post processing” is complete. At that time, the external device can issue an “LT94” command to retrieve the consist for the last train.</p> | ||
Revision as of 20:11, 28 January 2026
Tag: Detector Support
This article details the commands and responses that are available for external wayside detectors to retrieve AEI data from the APU102.
Transport:
Currently, this interface is available via RS232 or Ethernet. When using Ethernet, assign each detector a unique IP port to attach to. Currently, the default port is 24.
Logging in:
Once a connection is made, simply send an <ENTER>. A prompt will be returned.
For example:

Commands Supported:
TDIR – Train directory (list last 5 trains) LT94 – Consist dump in T94 (S918A;S9203) format. STAT – AEI unit status. EXIT – Exit the interface.
For an updated list of commands, type “?” at the prompt.
Example:

Typical Usage:
Once the train clears the AEI system, the APU102 processes the train and makes the final consist available to the external wayside detector unit(s). Because there is a finite period of processing required by the APU102 to produce this consist, it may take as long as two minutes after the train clears the site before a consist can be accessed (especially in multitrack territory). In most cases, it will be available within 10 seconds
To allow the external processors to be aware that processing may still be underway, a “STAT” command is available. By inspecting the “Postprocessing?” and “Acquiring” fields returned by the STAT command, the external device is able to determine if additional wait time is necessary.
In the simplest usage scenario, a defect detector accesses the AEI interface only after it has finished recording a train. In that case, the detector would simply request a periodic STAT dump from the unit, unit it is reported that “acquisition” and “post processing” is complete. At that time, the external device can issue an “LT94” command to retrieve the consist for the last train.
Interface Health Support:
To allow the APU102 to conduct simple health reporting to our customer’s maintenance hosts, the software will expect to see periodic commands issued (typically “stat”, or simply an “<enter>”). If no activity is seen for longer than 2 minutes, the APU102 will log and report a message to the customer’s maintenance host indicating the connection has been disconnected.
External Detector Command Responses:
Command: TDIR
| ||||
Ref |
Field |
Type |
Size |
Description |
TDIR00 |
Segment ID |
AN |
4 |
“TDIR” |
TDIR01 |
Train Seq |
N |
8 |
Train Sequence # |
TDIR02 |
Start Date |
N |
8 |
Start Date in YY-MM-DD |
TDIR03 |
Start Time |
N |
8 |
Start Time in HH:MM:SS |
TDIR04 |
End Date |
N |
8 |
End Date in YY-MM-DD |
TDIR05 |
End Time |
N |
8 |
End Time in HH:MM:SS |
TDIR06 |
Owner Code |
AN |
4 |
Lead Loco Owner |
TDIR07 |
Number |
N |
6 |
Lead Loco Number |
TDIR08 |
Dir |
A |
1 |
‘<’ = R to L, ‘>’ = LtoR |
TDIR09 |
Total Axles |
A |
4 |
Total Axles in Train |
TDIR10 |
Total Vehicles |
A |
4 |
Total Vehicles in train |
TDIR11 |
Total Tags |
A |
4 |
Total tag count. |
Example:

Command: STAT Sends single line detailing current status.
| ||||
Ref |
Field |
Type |
Size |
Description |
STAT00 |
Segment ID |
AN |
4 |
“STAT” |
STAT01 |
Seconds UTC |
N |
10 |
Time in seconds since UTC 1/1/70 |
STAT02 |
Local Date |
N |
8 |
Date in YY-MM-DD |
STAT03 |
Local Time |
N |
8 |
Time in HH:MM:SS |
STAT04 |
Acquisition Clock |
N |
10 |
Time in Ms since start of clock synch. |
STAT05 |
Acquiring |
A |
1 |
Y/N |
STAT06 |
Post Processing? |
A |
1 |
Y/N |
STAT07 |
Current Axle |
N |
5 |
|
STAT08 |
Current Speed |
N |
4 |
Ft/Sec |
STAT09 |
Current Seq |
N |
4 |
Current (or next) train seq |
STAT10 |
Example:

Command: LT94 <SEQ #>
Sends consist information for a train. Refer to the “T94 report specification” for details concerning the format of the output.
Example:
AEI>LT94
AEM*00076*TA75511*060817*2245*2250*070*Y*411*0002*G*G*N*0*E*028*015*06334*G*03*02*105*105*0436RRE*001*D* *0000000000*A* *G*N*K*00*00*020*06*01
RRE*002*D*CSXT*0000008518*B* *G*G*K*38*14*021*06*01
RRE*003*D*CSXT*0000005864*B* *G*G*L*35*17*015*04*01
RRE*004*R*BNSF*0000432638*A* *G*G*K*40*03*019*04*01
RRE*005*R*BNSF*0000780578*A* *G*G*K*38*18*019*04*01
RRE*006*R*BNSF*0000782917*B* *G*G*K*36*15*019*04*01
RRE*007*R*DMIX*0000190145*A* *G*G*K*40*19*020*04*01
RRE*008*R*GATX*0000073427*A* *G*G*K*38*18*020*04*01
RRE*009*R*CSXT*0000130078*B* *G*G*K*40*14*021*04*01
RRE*010*R*RBOX*0000040426*A* *G*G*P*37*18*021*04*01
RRE*011*R*CSYX*0000013492*A* *G*G*K*35*14*020*04*01
RRE*012*R*CEFX*0000011185*A* *G*G*K*35*11*021*04*01
RRE*013*R*CEFX*0000011164*A* *G*G*K*34*02*021*04*01
RRE*014*R*CEFX*0000012279*B* *G*G*K*35*08*021*04*01
RRE*015*R*CEFX*0000012241*A* *G*G*L*35*11*021*04*01
RRE*016*R*UELX*0000030024*A* *G*G*K*36*13*022*04*01
RRE*017*R*ADMX*0000085135*B* *G*G*K*31*17*022*04*01
RRE*018*R*UELX*0000100029*B* *G*L*K*32*00*022*04*01
RRE*019*R*UELX*0000030332*B* *G*G*K*38*14*022*04*01
RRE*020*R*AGPX*0000095235*B* *G*G*K*29*13*022*04*01
RRE*021*R*TILX*0000512211*B* *G*G*K*33*21*023*04*01
RRE*022*R*CRDX*0000014293*B* *G*G*K*30*13*022*04*01
RRE*023*R*AEX *0000006514*B* *G*G*K*32*07*023*04*01
RRE*024*R*HPJX*0000015051*B* *G*G*K*29*16*023*04*01
RRE*025*R*MMID*0000005059*B* *G*G*K*31*01*023*04*01
RRE*026*R*CSXT*0000228209*B* *G*G*K*31*17*023*04*01
RRE*027*R*CSXT*0000223017*B* *G*G*K*33*15*024*04*01
RRE*028*R*CSXT*0000226487*A* *G*G*K*32*15*023*04*01
RRE*029*R*CSXT*0000222012*B* *G*G*K*33*12*024*04*01
RRE*030*R*SSAM*0000043512*B* *G*G*K*30*15*025*04*01
RRE*031*R*CNA *0000555065*B* *G*G*K*31*14*025*04*01
RRE*032*R*BCOL*0000041799*B* *G*G*K*33*15*025*04*01
RRE*033*R*IC *0000624463*A* *G*G*K*29*14*024*04*01
RRE*034*R*SRY *0000318278*A* *G*G*K*24*15*024*04*01
RRE*035*R*ATW *0000300134*B* *G*G*K*30*16*025*04*01
RRE*036*R*CSXT*0000227184*A* *G*L*K*00*18*025*04*01
RRE*037*R*CSXT*0000228251*A* *G*G*K*28*12*025*04*01
RRE*038*R*CSXT*0000220682*B* *G*G*K*23*09*025*04*01
RRE*039*R*CSXT*0000227268*B* *G*G*K*27*13*025*04*01
RRE*040*R*CO *0000604922*B* *G*G*K*30*03*025*04*01
RRE*041*R*BO *0000605218*A* *G*G*K*29*08*025*04*01
RRE*042*R*NYC *0000883927*B* *G*G*K*28*06*025*04*01
RRE*043*R*CSXT*0000228059*A* *G*G*K*30*11*026*04*01
RRE*044*R*GATX*0000030055*A* *G*G*K*30*15*026*04*01
RRE*045*R*CSXT*0000137183*B* *G*G*K*30*16*026*04*01
RRE*046*R*ETCX*0000000926*B* *G*G*K*29*13*025*04*01
RRE*047*R*ETCX*0000052031*B* *G*G*K*29*08*026*04*01
RRE*048*R*ETCX*0000000911*B* *G*G*K*30*12*026*04*01
RRE*049*R*ETCX*0000001074*A* *G*G*K*30*13*026*04*01
RRE*050*R*NAHX*0000800254*B* *G*G*K*28*17*026*04*01
RRE*051*R*ATW *0000114033*A* *G*G*P*27*15*027*04*01
RRE*052*R*SOU *0000085042*B* *G*G*K*23*09*025*04*01
RRE*053*R*XTTX*0000137248*A* *G*G*K*03*10*026*04*01
RRE*054*R*AEX *0000009055*B* *G*G*K*29*04*026*04*01
RRE*055*R*NAHX*0000060730*A* *G*R*K*28*00*026*04*01
RRE*056*R*IC *0000010093*A* *G*G*K*27*07*026*04*01
RRE*057*R*TTJX*0000081671*B* *G*G*K*30*16*026*04*01
RRE*058*R*AEX *0000004142*B* *G*G*K*27*12*026*04*01
RRE*059*R*AEX *0000007490*A* *G*G*K*24*11*026*04*01
RRE*060*R*TIMX*0000062024*A* *G*G*K*33*11*026*04*01
RRE*061*R*TIMX*0000062002*A* *G*G*K*26*16*026*04*01
RRE*062*R*EEC *0000000818*A* *G*G*K*29*15*027*04*01
RRE*063*R*AOK *0000021548*B* *G*G*K*26*13*026*04*01
RRE*064*R*AOK *0000029817*B* *G*G*K*25*10*026*04*01
RRE*065*R*TTZX*0000087558*A* *G*G*K*24*16*026*04*01
RRE*066*R*NOKL*0000732566*B* *G*G*K*10*08*026*04*01
RRE*067*R*CN *0000625334*B* *G*G*K*23*11*027*04*01
RRE*068*R*ABOX*0000052094*B* *G*G*K*29*14*027*04*01
RRE*069*R*ABOX*0000051922*B* *G*G*K*26*15*028*04*01
RRE*070*R*ABOX*0000052018*B* *G*G*K*28*15*027*04*01
RRE*071*R*NW *0000178393*A* *G*G*K*22*10*026*04*01
RRE*072*R*RFMX*0000464339*B* *G*G*K*28*03*026*04*01
RRE*073*R*SIRX*0000460326*A* *G*G*K*29*02*026*04*01
RRE*074*R*CRDX*0000004845*A* *G*G*K*28*13*026*04*01
RRE*075*R*CHVX*0000889374*A* *G*G*K*31*14*026*04*01
RRE*076*R*CHVX*0000890226*A* *G*G*K*21*12*026*04*01
RRE*077*R*PSPX*0000006162*A* *G*G*K*29*11*026*04*01
RRE*078*R*CSXT*0000292015*B* *G*G*K*31*07*026*04*01
RRE*079*R*AEX *0000004133*B* *G*G*K*27*11*026*04*01
RRE*080*R*CSXT*0000251152*B* *G*G*K*27*04*026*04*01
RRE*081*R*NCHX*0000046090*A* *G*R*K*27*00*026*04*01
RRE*082*R*ACFX*0000064791*A* *G*R*P*29*00*026*04*01
RRE*083*R*NDYX*0000827685*B* *G*G*K*19*02*026*04*01
RRE*084*R*ATW *0000113151*B* *G*G*K*31*14*027*04*01
RRE*085*R*GVSR*0000782018*A* *G*G*K*27*18*027*04*01
RRE*086*R*EEC *0000002094*A* *G*G*K*31*13*026*04*01
RRE*087*R*RBOX*0000032673*A* *G*G*K*23*15*027*04*01
RRE*088*R*TTZX*0000085477*A* *G*G*K*22*15*025*04*01
RRE*089*R*BCOL*0000873518*A* *G*G*K*21*13*025*04*01
RRE*090*R*WC *0000037150*B* *G*G*K*14*10*025*04*01
RRE*091*R*WC *0000037653*A* *G*G*K*27*12*025*04*01
RRE*092*R*CNIS*0000623214*B* *G*G*K*26*14*025*04*01
RRE*093*R*HOKX*0000112086*B* *G*G*K*31*15*025*04*01
RRE*094*R*FMLX*0000051685*B* *G*G*K*26*12*025*04*01
RRE*095*R*CSXT*0000485038*B* *G*R*L*00*08*025*04*01
RRE*096*R*CSXT*0000705742*A* *G*G*K*29*12*025*04*01
RRE*097*R*CSXT*0000486398*B* *G*G*K*21*16*025*04*01
RRE*098*R*RBOX*0000043652*A* *G*G*K*23*16*025*04*01
RRE*099*R*SOU *0000530948*B* *G*G*K*32*14*025*04*01
RRE*100*R*CN *0000407054*A* *G*G*K*28*11*025*04*01
RRE*101*R*GMRC*0000021085*B* *G*G*K*32*14*025*04*01
RRE*102*R*MEC *0000032144*B* *G*G*K*30*15*025*04*01
RRE*103*R*CVC *0000402528*A* *G*G*K*31*14*025*04*01
RRE*104*R*MEC *0000032071*A* *G*G*K*29*16*025*04*01
RRE*105*R*RBOX*0000036246*A* *G*G*K*32*14*025*04*01
RRE*106*R*ADMX*0000017757*A* *G*G*K*34*02*024*04*01
RRE*107*R*SHPX*0000201378*A* *G*G*K*30*16*024*04*01
RRE*108*R*UTLX*0000628032*B* *G*G*K*29*17*024*04*01
EOT*108*E*CSXE*0000028671*00*20*K
EOC*0000005867