Engineering Test Software (ETS) Operation
This document provides final product specifications. VIA Telecom reserves the right to make changes to this product at any time without notice. This document contains proprietary information of VIA Telecom, Inc. The information contained herein is not to be used by or disclosed to third parties without the express written permission of an officer of VIA Telecom, Inc.
Engineering Test Software Operation Engineering Test Software Operation Revision: Status: Author: Function: Path and Filename: File Type: Version 32 Release Date: Rev 28_A Sept 2005 VIA Telecom, Inc. Proprietary 32 Draft Multiple VIA Telecom, Inc. C:\CM\CBPTOOLS\Docs\ctm_ets_overview.
Engineering Test Software Operation Revision History Rev 32 31 30 29 Status* Draft Draft Draft Draft Date 5/10/2007 1/24/2007 2/21/2006 1/19/2006 Author C. Lewis C. Lewis C.Lewis C. Lewis M. Liu D. Orloff 28 Approved 9/19/2005 27 Draft 09/02/2005 26 Approved 5/24/2005 25 Pending 05/02/2005 24 Approved 1/13/2005 R. Smith J. Miller 23 Pending 01/06/2005 Chuck Lewis Made generic to all CBP products D.
Engineering Test Software Operation Rev 32 31 30 29 Status* Draft Draft Draft Draft Date 5/10/2007 1/24/2007 2/21/2006 1/19/2006 Author C. Lewis C. Lewis C.Lewis C. Lewis M. Liu D. Orloff 28 Approved 9/19/2005 27 Draft 09/02/2005 26 Approved 5/24/2005 25 Pending 05/02/2005 Roy Davis, Bryan Yang M. Liu 11 Draft 2/14/03 D. Schaeffer Made file “read-only recommended” 10 Draft 1/06/03 D. Schaeffer Converted to new VIA Telecom template 9 Draft 12/20/02 W.
Engineering Test Software Operation Table of Contents 1 Introduction ...................................................................................................................................................... 1 1.1 Acronyms ............................................................................................................................................... 1 2 Interfaces ..................................................................................................................
Engineering Test Software Operation 3.3.1.1 BitPack Bit Fields....................................................................................................... 14 3.3.1.2 Non-BitPack Bit Fields............................................................................................... 14 3.3.1.3 Bit Field Parameter Differences ................................................................................ 15 3.3.2 Numeric Fields ....................................................................
Engineering Test Software Operation 3.3.9.26 Field Parameter: size................................................................................................ 34 3.3.9.27 Field Parameter: type ............................................................................................... 35 3.3.9.28 Field Parameter: Hidden........................................................................................... 36 3.3.9.29 Field Parameter: ReadOnly .....................................................
Engineering Test Software Operation 5.2 5.3 5.4 5.5 5.6 iv 5.1.8.1 Loopback Test ........................................................................................................... 50 5.1.8.2 Printf Message Handler ............................................................................................. 50 5.1.8.3 Trace Message Handler ............................................................................................ 50 5.1.8.4 Database Template Handling............................
Engineering Test Software Operation 5.7 5.8 5.9 6 5.6.1.8 GetAutoRspQ ............................................................................................................ 60 5.6.1.9 RawHex ..................................................................................................................... 60 5.6.1.10 ResetPolarity ............................................................................................................ 61 5.6.1.11 ResetBoard...................................
Engineering Test Software Operation 6.4 6.3.1.1 Modify ETS Message Id and Message Body Definition Text Files............................ 73 6.3.1.2 Modify CBP CP Software Files.................................................................................. 73 6.3.2 Enabling an ETS Spy................................................................................................................ 74 ETS Faults.................................................................................................
Engineering Test Software Operation List of Figures Figure 1. ETS Interfaces........................................................................................................................................ 2 Figure 2. Naming Conventions for ETS Base Message........................................................................................ 6 Figure 3. Naming Conventions for ETS Named Submessages ............................................................................ 7 Figure 4.
Engineering Test Software Operation List of Tables Table 1. Differences in Bit Field Parameters....................................................................................................... 15 Table 2. Field Types Versus Field Parameters ................................................................................................... 25 Table 3. Default Values for Min and Max Field Parameters................................................................................ 32 Table 4.
Engineering Test Software (ETS) Operation 1 Introduction This document describes the operation of the VIA Telecom Engineering Test Software (ETS). ETS is a Windows®-based PC software tool that allows designers to observe, control, and record in real-time the behavior of CMDA handsets that use all versions of the VIA Telecom CDMA Baseband Processor (CBP) products. Designers can use ETS in all phases of handset design, including development, field test, and production.
Engineering Test Software Operation 2 Interfaces ETS is a Windows-based PC program that provides designers with the capability to observe, control, and record the behavior of the CBP Control Processor (CP) and Digital Signal Processors (DSP). User Interface OLE Automation Interface Engineering Test Software Message Description File Serial\USB Port Figure 1. ETS Interfaces 2.1 Communication Interface The ETS communicates with the CP through a serial interface.
Engineering Test Software Operation 3 Message Definition Files When ETS is loaded it reads the EtsMsg.txt file and all of the referenced include files. It contains descriptions of each of the messages to be exchanged with the CP as well as various configurations items. A fatal error occurs if an invalid message definition exists in the file. A list defining each message will be in the file, in addition to definitions of the fields within each message.
Engineering Test Software Operation Example: Begin Message, Msg1 Field1, uint8, indent = 2 Field2, uint16, indent = 2 Field1, uint8, indent = 2 End In this message, Field1 is used twice, and it will be reported as a syntax error. But due to legacy reasons, some of the AMPS messages and records have used duplicated field names, and it is hard or impossible to change them. The following syntax checking flag and pragmas are introduced to overcome this problem. 3.1.3.
Engineering Test Software Operation • Lines that start with the word Help contain one-line descriptions that are associated with either the definition as a whole or with a single entry. A Help line applies to the definition as a whole if it immediately follows the Begin line. • A line that starts with PrintFormat and follows the begin statement before the first entry defines a print format for the definition as a whole. • An Entry line contains a name and an optional set of parameters.
Engineering Test Software Operation In Figure 2, the message name is created as follows: “ETS” + “ “ + “CP DB Clear” + “Cmd” to form ETS CP DB Clear Cmd “ETS” + “ “ + “CP DB Clear” + “Rsp” to form ETS CP DB Clear Rsp 3.2.1.2 Naming of Submessages in ETS Named Submessages In Figure 3, the “ETS CP Trace” message represents a message generated from the ETS Base Message. The ETS CP Trace message is composed of an Id field plus one of the many messages represented by the union (TraceMsg).
Engineering Test Software Operation Begin Enum, CP TraceIds All Off, 0, CT, CP/Trace Begin Message, ETS CP Trace TraceId, uint16, base=enum:CP TraceIds TraceMsg, union, enum=TraceId End ;----------- MON sub menu CP MON Generic Dec1, , CT, CP/Trace/MON CP MON Generic Dec2, , CT, CP/Trace/MON CP MON Generic Hex1, , CT, CP/Trace/MON CP MON Generic Hex2, , CT, CP/Trace/MON CP MON Generic dB, , CT, CP/Trace/MON CP MON Msg Trace, , CT, CP/Trace/MON .... ....
Engineering Test Software Operation Begin Message, CP Trace CP LMD Markov Trace Rsp PrintFormat, 1, 1, 0x%08X CP - LMD Markov Func=%s %s Sys Time, uint32 Func, uint32, base=enum:Markov Functions Data, union, enum=Func End Begin Enum, Markov Functions Srv Opt Start, 0, RO Srv Opt Control, 1, RO ..... ..... End Begin Message, CP LMD Markov Trace Srv Opt Control Rsp CtlRecType, uint32, base=enum:Mso Ctrl Rec Types Data, union, enum=CtlRecType End Figure 4. Naming Convention: Non-ETS Named Submessages 3.2.
Engineering Test Software Operation FieldName3, uint16 End Begin Record RecName, BitPack Field1, count = 4 Field2, uint32 End BitPack Bit Fields are numeric. The format of the field definitions is: , count= <, numeric field parameters> In the example the first field (FieldName1) is displayed or entered as a 2-bit numeric value. The second field (FieldName2) is displayed or entered as an enumerated value. The third field (FieldName3) is an unsigned 16-bit integer.
Engineering Test Software Operation Begin Message, ETS CP Spy SpyId, uint16, base=enum:CP SpyIds SpyMsg, union, enum=SpyId End Begin ENUM, ETS SpyIds All Off, 0, CT, CP/Spy, Lite CP Tx DSPM Mbox, , CT, CP/Spy/MON CP Tx DSPV Mbox, , CT, CP/Spy/MON End Begin Message, CP Spy Cmd Enable, uint8, base=bool End Begin Message, CP Spy All Off Rsp End Begin Record, DSP HW Mailbox Msg Id, uint16, base=enum:DSP HW Mailbox Ids Length, uint16 Data, array, type=uint16, maxsize=40, size=Length End Begin Message, CP Spy CP
Engineering Test Software Operation 3.2.6 GlobalVar Definition GlobalVar section defines the global variables in all ETS text definitions. Each entry in this section specifies the following: • The name of the global variable • The default value of this global variable The following is an example: Begin GlobalVar, Only One Global Var Block PREV, default = 6 ; add more here End There are two ways to use a global variable, as described in the next two sections. 3.2.6.
Engineering Test Software Operation CP AMPS Tune Radio1, 801, CO, RF/AMPS, disabled=GBL_RF_OPTION==1 CP AMPS Tune Radio2, 801, CO, RF/AMPS, disabled=GBL_RF_OPTION>1 CP AMPS Tune Radio3, 801, CO, RF/AMPS, disabled=GBL_RF_OPTION<3 Another example of using #existif is below. Depending on the GBL_RF_OPTION conditional statement the field "Use NVRAM data_FALSE" or "Use NVRAM data_TRUE" will display on the "CP AMPS Rx Cal Override" ETS command window dialog.
Engineering Test Software Operation 3.2.10 Extra Log Window Definition Extra log windows display selected messages. This definition file entry specifies the following: • The title that will appear at the top of the window. • The log entries that will be displayed. • The menu selection of any spy messages that need to be turned off.
Engineering Test Software Operation TraceWinSize UseCTypeForPrint ,1000 ,0 End 3.3 Field Definitions The entries in the message definitions are field definitions. Each message definition must contain at least one field. The first parameter of a field entry is the field type. The remaining parameters are an optional list of comma-separated name value pairs with the format of (,=).
Engineering Test Software Operation Example: Begin Record RecName Field1, bit, offset=15, count=1, bytes=2, pos=first, base=enum:Support Type Field2, bit, offset=0, count=1, bytes=2, pos=middle, base=enum:Support Type Field3, bit, offset=1, count=1, bytes=2, pos=last, base=enum:Support Type Field4, uint32 End In this example, Fields 1 through 3 operate on the same 2-byte data block. The record contains 4 bytes. 3.3.1.
Engineering Test Software Operation 3.3.3 Padding Fields Some messages and records must end on a specific byte or bit boundary. If the message is of fixed size, a field can be added to insure the proper ending bit position. However, if the message has a variable length due to variable field arrays or fields that only exist under certain circumstances, then the padding must be dynamic. The padding field type is used to dynamically insure that a message ends on a specific byte or bit boundary.
Engineering Test Software Operation Rules: 1. If the base field parameter is used, enum and bool are not allowed as values. 2. An array field is displayed as a list of space-delimited numbers. 3. A maxsize field parameter is required and defines the maximum number of elements in the array. 4. If just the maxsize parameter is specified (i.e., no size parameter) then the array is of fixed length. 5. A size field parameter is used to specify a variable length array field. 6.
Engineering Test Software Operation Examples: Fixed length record array field with 10 "RecordA" records. Data, record, type=RecordA, maxsize=10 Variable length record array field to end of message with a maximum of 20 "RecordB" records. Data, record, type=RecordB, maxsize=20, size=end Variable length record array field with the number of "RecordC" records defined by the Length field. Length, uint16 Data, record, type=RecordC, maxsize=24, size=Length 3.3.
Engineering Test Software Operation Characters, uint8 Name, string, size=Characters where the string has a fixed length defined by the Characters field. 3.3.6.3 Password parameter A password parameter can be added to a string field declaration. This will cause the characters of the field to be replaced with ‘*’ characters when printed and when displayed in a command dialog window. Example: Name, string, size=end, columns=20, password 3.3.
Engineering Test Software Operation ;***************************************************** ; ETS Message ID Definition ;***************************************************** Begin Message, ETS Id, uint16, base=enum:ETS Id Message, union, enum=Id End Message 1 CMD Message Y-2 CMD Message 1 RSP Message Y-2 RSP Message 2 RSP Message Y-1 RSP Message N CMD Message Y CMD Figure 5. Message with Union Field 20 Rev 28_A Sept 2005 VIA Telecom, Inc.
Engineering Test Software Operation ;***************************************************** ; ETS Message ID Definition ;***************************************************** Begin Message, ETS Id, uint16, base=enum:ETS Id Full Message ; ETS CP DB Read CP Read Command ;******************************************************** Begin Message, CP DB Read CP Read Cmd Segment, uint8, base=enum:CP DB Segments Offset, uint16, base=10 Bytes, uint16, base=10, max=217 End End Figure 6.
Engineering Test Software Operation 3.3.7.2 3.3.7.2.1 Union Field Examples Example: Main Message The following are excerpts from the main message definition identifier: Begin ENUM, ETS Id help ETS Message Identification values. Loopback, 0, CR, Debug Help Loopback Messages MonFault, 1, RO Spies, 101, CRM, SpyTest End 3.3.7.2.2 Example: Command Response Message The Loopback message has an Id equal to zero, being a command response type and having a menu item located under a Debug submenu.
Engineering Test Software Operation Begin Message, ETS Spies SpyId, uint8, base=enum:ETS SpyIds SpyMsg, union ,enum=SpyId End Begin ENUM, ETS SpyIds Spy0, 0, CT, SpyTest Spy1, 1, CT, SpyTest Spy2, 2, CT, SpyTest End Begin Message, Spies Spy0 Rsp bArray, array, type=uint16, maxsize=126, size=end End This shows that there are three spy ids and also shows the message definition for Spy 0. Note that the name is Spies Spy0 Rsp NOT ETS Spies Spy0 Rsp. 3.3.
Engineering Test Software Operation Example: Begin Message, CP DB Read CP Read Cmd Segment, uint8, base=enum:CP DB Segments Offset, uint16, base=10 Bytes, uint16, base=10, max=217 End Begin DB DB DB DB End Enum, CP DB Segments PSW NAM, 0x00 PSW, 0x01 PSW MS CAP DB, 0x02 MMI MISC, 0x03 In this example, the Segment field is defined by the CP DB Segments enumeration. 3.3.8.3 Enumeration For Unions A special type of enumeration definition is used to support a union field.
Engineering Test Software Operation 3.3.8.3.2 Sub-Menu The sub-menu parameter is optional and defines the menu structure before the name of the message appears in the menu. For example three messages could be used to define the mode of the CP. So the sub-menu for each of the messages might be defined as Mode. If a sub menu were not defined for the message then if it were to have a menu at all it would be a main menu item. Each command type category message will have an associated menu item.
Engineering Test Software Operation Field Field Parameters pos rows scale set size type 3.3.9.1 Array Bit * * * * * * * * Bit in BitPack * * * * Numeric Record String * * * * * * * * Union Field Parameter: base The base parameter allows entry and display of a numeric field to be controlled. The options for the base parameter are 10, 16, bool, and enum. 3.3.9.1.1 base: 10, 16 The numbers 10 and 16 specify decimal or hexadecimal as the display format.
Engineering Test Software Operation 3.3.9.2 Field Parameter: byteorder The target system will have one of two types of byte ordering for 16-bit, 32-bit, and 64-bit integers. The options for this parameter are: motorola Big Endian order, which means that 16-bit and 32-bit integers will have the Most Significant Byte placed first in the message stream.
Engineering Test Software Operation LEN, count = 8, indent = 2 Msg, union, enum=OHD, ConsumeBits= LEN + 1 OHD, count=3, base=enum:FOCC Overhead Message Enum End In the example, the Msg union field has exactly 21 bits. 3.3.9.6 Field Parameter: ConsumeBytes The ConsumeBytes field parameter is only used by the union field type or record field type. The ConsumeBytes parameter defines the specific number of bytes that a field will consume when a message is received. It can be a constant or an expression.
Engineering Test Software Operation 3.3.9.8.2 Default: Numeric Fields The value of the default parameter is dependent upon the base field parameter for the field. 10 or 16 values must be numeric or hexadecimal (i.e., 0x1234) bool values must be True, False, Yes, No enum values must be one of the allowable enumeration items Example: Band, uint8, base=enum:PCS/AMPS/Cellular/T53, default=PCS NumWords, uint16, default=47 IsActive, uint8, base=bool, default=true 3.3.9.
Engineering Test Software Operation F2, uint8 F3, uint8 #endexistif F4, uint8 End In this example fields F2 and F3 would have the existence parameter applied to them exist=(F1==2). If the #endexistif statement is left out then #existif will be applied to all fields from the #existif until the end statement for the message. 3.3.9.11 Field Parameter: fields The fields parameter function is used with large numeric fields. Large is defined as numeric field with a bytes parameter set to more than 8 bytes.
Engineering Test Software Operation 3.3.9.15 Field Parameter: log10 A log10 display can occur for numeric fields. This displays received values by taking the Log10. Values entered are translated using the inverse of the Log10 or ten to the power of the entered value. Log10 numeric fields are limited to a value greater than zero. The format is: Num, uint16, Log10=true Internally these are processed as scaled values. If scale and offset parameters are also specified they are applied prior to the Log10. 3.3.
Engineering Test Software Operation Table 3. Default Values for Min and Max Field Parameters Numeric Type Minimum Maximum int8 int16 int32 int64 uint8 uint16 uint32 uint64 -128 -32768 -2,147,483,648 -9,223,372,036,854,775,808 0 0 0 0 127 32767 2,147,483,647 9,223,372,036,854,775,807 255 65535 4294967295 18,446,744,073,709,551,615 3.3.9.19 Field Parameter: minbytes The minbytes parameter is used in a record array field. If the size of the record array is defined as size=end (i.e.
Engineering Test Software Operation The example has two fields that are contained in a two-byte (int16) integer. The bit layout is: Offset Bits 0 1 2 3 15 14 13 12 4 11 5 10 6 9 7 8 8 7 9 6 10 11 12 13 14 15 5 Archive Field 4 3 2 1 0 Test Field 3.3.9.21.2 offset: Numeric Fields In this context, the offset parameter is used as a numeric offset in the translation of an integer to a floating point number. See the scale for a full description of how the offset parameter is used. 3.3.9.
Engineering Test Software Operation 3.3.9.24 Field Parameter: scale The scale parameter is used with the offset parameters to allow a numeric value to be displayed and entered as a floating point value. The information that is moved across the serial interface is still an integer of some type.
Engineering Test Software Operation 3.3.9.26.1 size: end With this setting, the field extends to the end of the message. The exceptions are: 1. For string fields, the field extends to the null-terminator or the end of the message, depending upon which comes first. 2. When a maxsize field parameter is used, the field extends to the end of the message or maxsize, depending upon which comes first.
Engineering Test Software Operation 3.3.9.28 Field Parameter: Hidden The hidden field parameter is used to hide the values of a field from the user. The format of this parameter is “hidden=”. When the expression is nonzero the field will be hidden. 3.3.9.29 Field Parameter: ReadOnly The readonly field parameter is used prevent the user from modifying a field. The format of this parameter is “readonly=”.
Engineering Test Software Operation 3.3.10.1 Field Names as Entities Field names are used as entities in expressions. When a message consumption or production is in progress, the field, associated with the name, is queried for its value or size. In most cases, the queried field is present in the same message as the field that contains the field (see the Length and Data fields in the example). There are some message definitions that have dependencies to fields that are not in same message level or record.
Engineering Test Software Operation 4 Utilities 4.1 Include File Generator A set of include files can be generated from the message definition files. The names of the files and the contents of the files are specified in a definition file that is selected using the Log/Make Include… menu item. Two types of “C” definitions can be created using this utility. The first is an enumerated list, and the other is an initialized list of strings. 4.1.
Engineering Test Software Operation The following example shows the string definition and the resulting string array that is generated.
Engineering Test Software Operation Table 4 describes each option. Figure 7. Options Dialog 40 Rev 28_A Sept 2005 VIA Telecom, Inc.
Engineering Test Software Operation Table 4.
Engineering Test Software Operation 4.2.2 Logging As messages are exchanged they are textually recorded in a Log Window and optionally appended to a Log file. In addition any ETS errors that occur are logged. Log entries are time stamped to the nearest tenth of a second. Entries fall into one of three classes: 1. Messages sent to the CP. Identified by a “<”. 2. Messages sent by the CP. Identified by a “>”. 3. ETS error messages.
Engineering Test Software Operation • LOGTRACEFILE - Opens a trace window log file that future trace log entries will be copied to. • LOGTRACECLOSE - Closes a trace window log file that is open. Scripts can be saved to a file and reopened. Simple editing capabilities are provided. 4.4 OLE Automation Interface All of the sophisticated display and control windows will use this interface to exchange messages with the CP. The OLE automation interface provides the following. 1.
Engineering Test Software Operation Note: When using full message definitions the etsmsg.txt file cannot have any “include” statements. When using the full message definition set first consolidate the ETS Text files using the following command: EtsMain.exe -s -savedefs=c:\temp\etsmsg.txt The etsmsg.bin file should be put in the start directory when EtsMain.exe is run. 44 Rev 28_A Sept 2005 VIA Telecom, Inc.
Engineering Test Software Operation 5 Modules The ETS is composed of four types of executables: the ETS Main, Script Utility, Control Panels, and Test Drivers. Control Panels Test Drivers Script Utility ETS Main Figure 8. ETS Sub-Module Interfaces The ETS Main module interfaces to the Script Utility, Control Panels, and Test Drivers through the OLE Automation interface. 5.1 ETS Main The ETSMAIN.EXE file is the executable that contains all of the communications and message handling functions.
Engineering Test Software Operation Trace Management System Mode Processing Communcation Test Message Definition Processing Message Objects Log Processing Menu Handler Message Router OLE Interface Communication Interface Figure 9. ETS Main Sub-Modules 5.1.1 Command Line Options ETSMAIN.EXE has several command line options to support various applications. The following is a list of those options. Specify an initial configuration file to be loaded.
Engineering Test Software Operation 5.1.1.3 Communication Port Multiple EtsMains can run concurrently as long as they are connected to different communication ports including Serial and USB. This option overrides the port specification in the system configuration for etsmain. The port specifier identifies the communication port to be used. The serial ports COM1 through COM12 and USB can be used. The acceptable formats are. /Port=2 /Port=COM2 /Port=USB2 5.1.1.
Engineering Test Software Operation DSPV TraceIds DSPM SpyIds DSPV SpyIds Example: To enable CP Loopback in Lite mode, the command message line looks like the following: CP Loopback, 0, CR, Debug, Lite 5.1.3 Save Definitions In normal operation ETS loads message definitions from multiple files and applies the definitions in a preprocess to creating the messages. The Save Definitions feature allows the preprocessed messages definitions to be saved in a single file.
Engineering Test Software Operation 5.1.4.4 Log Processing The Log Processing module handles the following functions: • Manages log window display. • Updates to log file. • Sends log entries to the OLE automation interface. 5.1.4.5 Trace Management The trace management module tracks the activity states of trace messages. This module performs the issuing of trace commands.
Engineering Test Software Operation the purpose of automated processing the interface used can be specified from the command line of the ETS Main. 5.1.5.1 Serial Interface The serial interface sub-module provides a bi-directional byte stream interface through which link layer data is sent. 5.1.5.2 Message Encapsulation The message encapsulation sub-module translates between the byte stream to the serial interface and the message level.
Engineering Test Software Operation Class can be a number or mnemonic. For example: PrintFormat, "One","2", 0x%08X CP - A format string, %d, %d, %d This associates a class of "One" and a level of “2” with a format string of “0x%08X CP - A format string, %d, %d, %d. Note: The CP Trace messages always have the System Time as the first parameter. That is why the 0x%08x is the first field in the format string for the CP Trace messages. The C standard printf format string is used.
Engineering Test Software Operation 5.1.11 Binary Logging and Playback A binary log allows a comparatively compressed log to be made of the messages exchanged between the CP and ETS. At the start of the Log the version information of the CP is recorded. The Debug/BinLog menu contains the following menu items. • Open BinFile… o • Open TextFile… o • An existing textual log file is opened and played back. This will work only if the log file contains Raw Rx and Raw Tx entries.
Engineering Test Software Operation To register an OCX (ActiveX component) like EtsIf.ocx when open ETSMAIN.EXE, Insert a Record to the Definition Text file as follows: Begin Record, Register OCX File, End Component: The name of an OCX or an ActiveX component needed to be registered. Example: Begin Record, Register OCX File, EtsIf.ocx End 5.1.13.2 External Application Interface These applications can really be any windows application that interacts with Etsmain.exe through the Etsif.
Engineering Test Software Operation 5.5 ETS ActiveX Interface 5.5.1 Overview This is an ActiveX control in the file ETSIF.OCX. It provides a set of functions that would commonly be needed to develop VB or other programs to interface to the ETS program. The following groups of functions are provided: Auto Script Interface Layer Message Flow Support Get or set field data Use configuration files and log files Array field functions System flag handler 5.5.
Engineering Test Software Operation Retrieves all of the strings in the response queue in the form of a list of strings. If there are no responses in the response queue an empty string is returned. GetResponses as boolean Enables and disables the response queue. When set to false the queue is emptied and disabled. GetError() as string Retrieves a string from the error queue in the same format as in the log window. If there is no error in the error queue an empty string is returned.
Engineering Test Software Operation Call this function to add a string to the event filter list. Only those messages that are in the event filter list will generate events. The string that is provided must match the leading characters of the message text. EnableEvents as boolean Set this to true or false to enable or disable message event generation. EvFilterClear() Call this function to remove all entries from the event filter list.
Engineering Test Software Operation AddNum( Number as long ) AddDouble( Number as double ) Adds the number to the internal list of numeric values. Clear() Empties the internal list of numeric values. GetNum( Index as integer ) as long GetDouble( Index as integer ) as double Returns a specific numeric value from the list. GetSize() as long Returns the number of entries in the numeric list. 5.5.7 File Functions The functions described in this section allow access to the file interface functions of ETSMain.
Engineering Test Software Operation void EnableExtraLogPrint(boolean Enable); The entry of extra log window messages into the main log window can be enabled and disabled with this function. This operates in the same manner as the user selecting "Print to Main Log" in the popup menu of all of the extra log windows. void PauseLogWindows( boolean Pause) Pauses or removes pause from all log windows. 5.5.
Engineering Test Software Operation 5.5.11.3 Function Enable(Enable As Boolean) As Boolean This function enables or disables the delivery of messages in the Queue. Disabling the queue and then enabling it will flush all entries from the queue. 5.5.11.4 Function GetAllResponses() As String Returns a new line separated list of all the responses currently in the queue. This causes all of the messages to be removed from the queue.
Engineering Test Software Operation pParameters – Used only when COM# is selected. The string must contain the following: Port identifier, Baud Rate, 0 or 1 to enable or disable the TxPreamble Preamble delay in milliseconds. Example: “COM1, 115200, 1, 20” Open COM1 at 115200 baud, enable the TxPreamble with 20 milliseconds. 5.6.1.3 UnloadDefinitions UnloadDefinitions(); Unloads the definitions that were loaded with the LoadDefinitions call. 5.6.1.
Engineering Test Software Operation 5.6.1.10 ResetPolarity ResetPolarity([in] BOOL Positive); Sets the ResetPolarity. If this call is not made the reset polarity will be negative which is compatible with the CDS4 boards. 5.6.1.11 ResetBoard ResetBoard(); Performs a board reset using the CTS serial interface line. This will only have an effect if the active interface is a serial port. The CTS line is used in the CDS boards to allow an application to cause a hard reset of the board. 5.6.1.
Engineering Test Software Operation 5.6.2.5 ClearRxQueue ClearRxQueue(); Removes all messages from the receive queue. 5.7 ViaHub The ViaHub.exe program provides two functions. One is USB interface management the other is as a common connection point for applications using EtsMain.exe through EtsIf.ocx. 5.7.1 USB Connection Management When a phone is connected to a USB port the ViaHub.exe associates it with a port number. If the physical USB port had not been used by a Via phone then the ViaHub.
Engineering Test Software Operation Rsp: "BINLOG, Cmd=Create, Status={Ok|Fail}, Cause=" 5.8.1.1.1 Command Parameters Path= 5.8.1.1.2 The pathname of the file to be created. Response Parameters Status={Ok|Fail} If it is Ok then the binary file has been created and is being written to. If it is Fail then the file did not open for some reason. Cause= Specify the failure reason if Status = {Fail} 5.8.1.
Engineering Test Software Operation Rsp: "BINLOG, Cmd=Playback, Status={Ok|Fail}, Cause=" 5.8.1.4.1 Command Parameters Path= 5.8.1.4.2 The pathname of the file to be playback. Response Parameters Status={Ok|Fail} If it is Ok then the binary file has been playback. If it is Fail then the file can not be playback for some reason Cause= Specify the failure reason if Status = {Fail} 5.8.2 GETDEF Add support to access Message Definition for EtsMain.exe and ViaIf.dll.
Engineering Test Software Operation 5.8.2.2.1 Command Parameters {Record|Message|Enum|...} = , Entry = The Entry number that is used to retrieve entry value. 5.8.2.2.2 Response Parameters 5.8.2.2.3 The Entry value. Example In the above example: Cmd: "GETDEF, Record = ETS Definition Version, Entry = 0" Rsp: "GETDEF, Project, CBP4.05" 5.8.2.3 Get Definition Entry Value by Entry Name This message pair is used to get Definition Entry value by Entry name.
Engineering Test Software Operation The download.dll uses the ViaIf interface to communicate with the CBP. The download.dll is used by an application that also uses the ViaIf. The application that creates an instance of the download.dll will provide the download.dll with a reference to a usable ViaIf object using the Connect method. 5.9.1 IDownloader interface 5.9.1.1 Methods 5.9.1.1.1 Connect This call provides the instance of the downloader with a reference to the ViaIf interface.
Engineering Test Software Operation Return: 5.9.1.1.6 True if successful otherwise false. When false is returned the GetLastError function provides a description of the error. GetState Returns the string representing the current state of the downloader. BSTR GetState(); Return: 5.9.1.1.7 The state of the downloader. GetProgress long GetProgress(); Return: 5.9.1.1.8 Returns a number representing the progress of the transfer.
Engineering Test Software Operation Return: True if successful otherwise false. When false is returned the GetLastError function provides a description of the error. 5.9.1.1.13 BlockDbDownload The most common use of this function will be to download the PRL. In addition any of the block databases can be downloaded that are listed in the ETS definition for “Begin Enum, Block Database List Write”. BOOL BlockDbDownload( BSTR Path, BSTR Database); Path: The full pathname of the file to be downloaded.
Engineering Test Software Operation HRESULT Status([in] BOOL Active, [in] long TotalBytes, [in] long TransferredBytes, [in] BSTR State); Active: This is True when a Transfer is in progress or if the downloader is otherwise in the process of doing something. TotalBytes: The total number of bytes that will be transferred. TransferredBytes: The number of bytes that have been transferred. State: The State of the Transfer. Rev 28_A Sept 2005 VIA Telecom, Inc.
Engineering Test Software Operation 6 Adding Commands, Traces, Spies, Faults The purpose of this section is to provide instructions on how to add new ETS commands, traces, spies, and fault messages to ETS text files and CP software. All examples herein pertain to the MMI sub-unit. These instructions, however, can also be used to add new ETS commands, traces, spies and fault messages for other sub-units by replacing MMI with the other unit’s name wherever appropriate.
Engineering Test Software Operation Example: IOP_CP_TEST_MESSAGE_ETS=1199, 6.1.1.2.2 Add Routing for the New Command Message in Add the routing for the new message id to the 'IopRoutingTable'. 1. The value in the right-most column in the table indicates whether an ACK to ETS is needed. If it is TRUE, an ACK is needed, and the IOP task will perform the ACK. 2. The value in the (right-most – 1) column in the table indicates whether a response to ETS is needed.
Engineering Test Software Operation 6.2.1.1 Modify ETS Message Id and Message Body Definition Text files On the ETS side, the file that defines all ETS commands is 'trace_id.txt'. The command message body definitions are defined in each sub-unit ‘_trace.txt’ file and are included by ‘etsmsg.txt’. We will now describe the steps for modifying both of these ETS text files. 6.2.1.1.1 Declare the New Trace in trace_id.txt Open the file ‘/trace_id.txt’.
Engineering Test Software Operation 6.2.2 Enabling an ETS Trace From the ETS Main application click on CP\TRACE\MMI\'trace name' to turn on or off a trace where 'trace name' is the name of the trace. In the above example, 'trace name' is 'CP MMI Test Msg'. The traces received from the CP will be displayed in the Trace window, only if the Trace is enabled through ETS; ETS passes a message to the CP MON task, when a trace is enabled by the user. By default all traces are turned OFF. Note: Whenever any ETS *.
Engineering Test Software Operation 6.3.1.2.2 Add MonSpy() Calls to Source Code In the CBP CP source files, a 'MonSpy()' call can be added to send spy information to ETS whenever such information is desired. The prototype for 'MonSpy' is defined as follows: extern void MonSpy(uint16 SpyId, uint8 *DataP, uint32 NumBytes); Example: /* display the first 8 bytes of the template data */ MonSpy (MON_CP_MMI_TEST_SPY_ID, (uint8 *) Test.Template.ptr, 8); 6.3.
Engineering Test Software Operation 6.4.1.2.1 Add New Fault Code to Add the new fault code to the ‘MmiErrsT’ enum in mmi_errs.h Example: MMI_ERR_TEST, 6.4.1.2.2 /* 13 */ Add 'MonFault () Calls to Source Code In the CBP CP source files, a 'MonFault()' call can be added to send fault information to ETS whenever such information is desired.
Engineering Test Software Operation 7 Rev 27_D Review Information Topic/Section(s) Reviewed: Sections 5.1.1 and 5.6; reviewed via email Date: Sept 14,2005 Related Documents: Meeting Moderator: N/A Meeting Scribe: Darren Orloff Invitees Attended (Y/N) Attended (Y/N) Invitees Roy Davis Bryan Yang Is approval required from anyone who didn’t attend? If so, from whom? Agenda/Issues discussed: 1. 2. 3. 4. Outcome/Summary: .
Engineering Test Software Operation 8 Rev 25_D Review Information Topic/Section(s) Reviewed: Sections 3 and 4.6; reviewed via email Date: May 3, 2005 Related Documents: Meeting Moderator: Darren Orloff Meeting Scribe: Darren Orloff Invitees Attended (Y/N) Invitees Chuck Lewis Laurent Ronc Hai Nguyen Andy Monteiro Attended (Y/N) Mike Shaver Ray Smith Is approval required from anyone who didn’t attend? If so, from whom? Agenda/Issues discussed: 1. 2. 3. 4. Outcome/Summary: No comments.
Engineering Test Software Operation 9 Ver 23_P Design Review Information Topic of Review: ETS Overview document Related Documents: Meeting Moderator: Charles Lewis Meeting Scribe: Charles Lewis Invitees John Miller Mike Shaver Henry Hsin Amy Poon Tiffany Lam Darren Orloff Date: 01/07/05 Attended (Y/N) Y Y N N N Y Attended (Y/N) N N Y Y Y Y Invitees Ray Smith Laurent Ronc Chuck Lewis Hai Nguyen Maggie Liu Andy Monteiro Is approval required from anyone who didn’t attend? No If so, from whom? Agenda/Issu
Engineering Test Software Operation 10 Ver 14_D Design Review Information Topic of Review: ETS Overview document Related Documents: Meeting Moderator: Charles Lewis Meeting Scribe: Charles Lewis Date: 5/22/2003 Attended (Y/N) Y Y Y Invitees Henry Hsin Sean Oleary Mike Shaver Invitees Ray Smith Laurent Ronc Amy Poon Attended (Y/N) N N N Is approval required from anyone who didn’t attend? No If so, from whom? Agenda/Issues discussed: 1. Formatting of tables 2.
Page: [l1]Is it really the name of the Message Definition file or the name of the definition.