Last updated: December 3, 2008
The following information provides additional details on Step 4 of the Programming Flowchart. This information is applicable to all test applications.
In this step you make a connection between the mobile station and test set. How you do this depends upon whether you are in active cell or test mode. In active cell mode you establish a phone call between the test set and mobile station. In test mode, you command the mobile station to synchronize to the test set's signal and begin transmitting back an appropriate signal.
To test a mobile station in active cell mode, you must first establish a call between the test set and mobile station. Your control program must issue the commands necessary to initiate the call connection process, either to the test set (for a base station originated call) or to the mobile station (for a mobile station originated call). Your control program must then determine when the call has successfully connected so that it can proceed to testing. The control program must also determine if the call has not been successfully connected so that it can take appropriate action.
At any instant in time a call can be in a stable state such as the idle or the connected state, or in one of many transitory states such as alerting, handoff, registering, releasing or paging. These are referred to as transitory states because the amount of time which the call can spend in any of these states is limited by the mobile station's protocol. The call is not allowed to stay in a transitory state indefinitely.
If repeat paging or repeat registration are on, it is possible for the call process to stay in one of the transitory states beyond the time specified by the mobile station's protocol timers.
The test set has a set of commands designed specifically for call connection and release synchronization.
Synchronization Command | Command Syntax |
---|---|
Call-Connected-State Query | CALL:CONNected[:STATe]? |
Call-State-Change Detector Arm | CALL:CONNected:ARM[:IMMediate] |
Call-State-Change Detector Timeout | CALL:CONNected:TIMeout |
Call-Connected-State Query
The CALL:CONN? query allows the control program to determine if a call is in the connected state or in the idle state.
Response | Meaning |
---|---|
1 | The call is in the connected state. |
0 | The call is in the idle state. |
If the call is in one of the transitory states, the query waits until the call reaches the idle state or connected state before returning a value.
Call-State-Change Detector Arm Command
The test set has a call-state-change detector which can be used to temporarily hold the response to a CALL:CONN? query until the call state has moved from idle to connected or vice versa.
Without the call-state-change detector, the CALL:CONN? query only hangs if the call is in a transitory state. Otherwise, it immediately returns a 1 or 0. Therefore, if a call connection process is started and the CALL:CONN? query is sent before the call state has transitioned from idle to one of the transitory states, the query immediately returns a 0. This indicates that the call is in the idle state (and therefore that the connection attempt failed). In reality, the call likely connected, but not until after the CALL:CONN? query immediately returned a 0.
When the call-state-change detector is armed during a connection attempt, if the CALL:CONN? query is sent while the call state is still idle, the query waits until the state changes to connected, and then returns a 1.
The CALL:CONNected:ARM[:IMMediate] command is used to arm this call-state-change detector.
Call-State-Change Detector Timeout Command
If the call-state-change detector is armed and a call connection is attempted but the call state never changes from the idle state, the CALL:CONN? query hangs the bus. This easily happens if the mobile is badly broken, the mobile is not connected to the test set, or no one pushes the send button on the mobile.
The CALL:CONNected:TIMeout command is used to set the timeout value for the call-state-change detector.
The timeout timer is started whenever the call-state-change detector is armed, and should be set to the maximum amount of time the control program should wait between arming the detector and the beginning of the connection process (when the call state moves from the idle state). If the timer expires before the call state has moved from the idle or connected state, the call-state-change detector is disarmed, which releases the CALL:CONN? query if it is currently hanging.
It is not necessary for you to send the CALL:CONN:TIM and CALL:CONN:ARM commands as they are automatically sent by the test set during a base station originated call or base station release.
OUTPUT Test_set;"CALL:PAG:PNUM `0000574016'"! Set paging number OUTPUT Test_set;"CALL:PAG:REP ON" ! Set paging repeat state OUTPUT Test_set;"CALL:ORIG" ! Start a base station originated call OUTPUT Test_set;"CALL:CONN?" ! Hanging GPIB query ENTER Test_set;Call_connected ! Program hangs here until ! origination passes or fails IF NOT Call_connected THEN OUTPUT Test_set;"CALL:END" ! <put error handler here> END IF ! Call is connected so proceed with control program
The test set cannot originate a call from the mobile station. You must physically dial a number on the mobile station and press send, or send commands to a test bus built into the mobile station. For mobile station originated calls where the call is originated by physically dialing a number (as opposed to using a test bus) ensure that the call-state-change detector timeout time is long enough to allow the number to be dialed.
OUTPUT Test_set;"CALL:CONN:TIM 10" ! Set timeout time to 10 seconds OUTPUT Test_set;"CALL:CONN:ARM" ! Arm the change detector DISP "Initiate a call from the mobile" OUTPUT Test_set;"CALL:CONN?" ! Initiate a call connected state query ENTER Test_set;Call_connected ! Program hangs here until ! origination passes or fails IF NOT Call_connected THEN OUTPUT Test_set;"CALL:END" ! <put error handler here> END IF ! Call is connected. Proceed with the control program.
To make a connection between the test set and mobile station in test mode, you must send the appropriate test mode commands to the mobile station to command it to synchronize to the test set's signal and begin transmitting.
You may also want to make a quick power measurement to ensure that the connection has been made.