Page 1
––- PROGRAMMER’S MANUAL ACE9600 For use with ACE9600 firmware versions later than 1.0 RF Test Equipment for Wireless Communications...
Page 2
This manual contains proprietary information of dBmCorp, Inc. It is provided under confidential custody for the sole purpose of specification, installation, maintenance and operation of dBm test system instruments and equipment and may not be used or disclosed to any person for any other purpose whatsoever. No portion of this manual or the information it contains may be reproduced, used, or disclosed to individuals not having a need to know con- sistent with its intended purpose, without the written permission of dBmCorp, Inc.
Advanced Channel Emulator Contents Contacting dBm ......................7 REMOTE OPERATION OVERVIEW ..............8 Text Command Overview ....................8 Client Application Overview .................... 8 USING REMOTE TEXT COMMANDS ..............9 Connect and Open Commands ..................9 Connecting to the ACE ....................10 Disconnecting from the ACE ..................
Page 4
File Upload Protocol Example ..................37 Uploading Captured Data from a Channel ..............38 Beginning the Capture Upload..................38 Receiving Binary Capture Data ..................38 Ending the Capture Upload ................... 39 Aborting the Capture Upload ..................39 ACE9600 Programmer’s Manual...
Page 5
Editing the User Configuration ..................69 Add/Remove Interface Property ................... 71 Tab Views Property ...................... 72 Options Property ......................78 DYNAMIC FILE FORMAT .................. 81 Delay Type File Format ....................81 Frequency Offset Type File Format ................82 ACE9600 Programmer’s Manual...
Page 6
RF Type File Format ..................... 83 Noise Type File Format ....................84 Multipath Type File Format ..................84 EXAMPLE CODE IN PYTHON ................87 APPENDIX A: SUPPLEMENTARY DOWNLOAD/UPLOAD PROTOCOL DIAGRAMS ......................91 APPENDIX B: TEXT MESSAGE FORMAT ............93 ACE9600 Programmer’s Manual...
Advanced Channel Emulator Contacting We encourage you to contact us if you want more information or have any questions or concerns about this or any other dBm product or manual. Use any of the following methods Mail 32A Spruce Street...
In addition, parameter files may be downloaded or uploaded by the ACE9600 via the data port, or files may be deleted from the ACE9600 memory through text commands to the control port.
APPLICATION. USING REMOTE TEXT COMMANDS This section details the text command syntax used to remotely control the ACE9600 over a LAN interface. The command descriptions are grouped by similar function. For a summary of the text command syntax in table form, see Appendix B: Text Message...
Opening the Data Port Syntax: Open DataPort Function: Instructs the ACE to open the data port and await connection by the client. Returns: Nak: <error message> Ack: DataPort Opened Where: <error message> Descriptive text describing cause of error Example: ACE9600 Programmer’s Manual...
Mode Commands The commands described in this section are related to obtaining or changing the mode of the instrument. Getting the Mode Syntax: Get Mode Function: Returns the current Mode of the instrument. Returns: Nak: <error message> ACE9600 Programmer’s Manual...
The commands described in this section are related to storing and recalling settings in the instrument's on-board memory. Storing a Current Setting on the Instrument Syntax: Store Settings <index> Function: Saves the current instrument settings in the on-board memory. Returns: Nak: <error message> ACE9600 Programmer’s Manual...
Options Settings Commands The commands described in this section are related to obtaining the factory settings of the instrument, enabling the Multipath Function, or changing the Capture Point. Obtaining Version Related Settings Syntax: Get Version <type > Function: ACE9600 Programmer’s Manual...
Sent command - Get Version ModelNumber Received command - Ack: Version ModelNumber ACE9600-4-1125 Notes: These options cannot be changed without factory maintenance by dBm-Corp. Obtaining Factory Option Related Settings Syntax: Get Options <channel> <type> Function: Returns the installation state for Fading license, AWGN license, channel board...
Options <channel> < type > < setting > Where: <error message> Descriptive text describing cause of error Multipath/CapturePoint <type> Ch1/Ch2/Ch3/Ch4 <channel> <setting> One of these valid choices: Enabled/Disabled Multipath CapturePoint Before/After Example: Sent command - Set Options Ch1 Multipath Enable ACE9600 Programmer’s Manual...
Example: Sent command - Start Received command - Ack: Dynamic State Armed Resetting a Dynamic Run Syntax: Reset Function: Resets the dynamic run when in the dynamic mode while running, paused or done. Returns: Nak: <error message> ACE9600 Programmer’s Manual...
Increments the dynamic run by the number of msec specified by <setting> when in the dynamic mode while paused or ready. Returns: Nak: <error message> Ack: Dynamic ElapsedTime <setting> Where: <error message> Descriptive text describing cause of error <setting> Time in msec Example: ACE9600 Programmer’s Manual...
Interval, RF Interval, Multipath Interval, Elapsed Time, Start Time, or State while in the Dynamic mode. Returns: Nak: <error message> Ack: Dynamic < parameter > <setting> Where: <error message> Descriptive text describing cause of error <parameter> <setting> Trigger Internal/External Loop Single/Continuous MultiChassisSync StandAlone/Master/Slave ACE9600 Programmer’s Manual...
Descriptive text describing cause of error <parameter> <setting> Trigger Internal/External Loop Single/Continuous MultiChassisSync StandAlone/Master/Slave DelayInterval 1/2/5/10/20/50/100/200/ 500/1000 (in msec) RfInterval 100/200/500/1000 (in msec) MpathInterval 100/200/500/1000 (in msec) Update Internal/External StartTime integer (in msec) Example: Sent command - Set Dynamic DelayInterval 50 ACE9600 Programmer’s Manual...
Ready, the command to Start may be sent. See Changing Selected File for Dynamic for more information about selecting files for dynamic data parameters. Returns: Nak: <error message> Ack: Dynamic State Ready Where: <error message> Descriptive text describing cause of error ACE9600 Programmer’s Manual...
<error message> Ack: DelaySlewBoundary <setting > Where: <error message> Descriptive text describing cause of error <setting> value (in msec) Example: Sent command - Set DelaySlewBoundary 100 Received command - Ack: DelaySlewBoundary 100 Calculating Noise Density Syntax: Calculate ACE9600 Programmer’s Manual...
Page 22
<error message> Descriptive text describing cause of error Ch1/Ch2/Ch3/Ch4/All <channel> Notes: The channel's incoming signal is captured when the command is received. See Uploading Captured Data from a Channel about commands to retrieve the captured data. ACE9600 Programmer’s Manual...
Ack: File Count 5 Deleting a Single File Syntax: Delete File <filename> Function: Removes a file from the file directory on the instrument. Returns: Nak: <error message> Ack: File <filename> Deleted Where: <error message> Descriptive text describing cause of error ACE9600 Programmer’s Manual...
Returns space delimited file information, where: <error message> Descriptive text describing cause of error <filename> Filename Delay/FreqOffset/Atten/ <type> PhaseOffset/RfIn/NoiseNo/Mpf <length> number of samples in the file CONTINUOUS/DISCONTINUOUS <continuous> <timestamp> YYYY-MM-DD_HH:MM:SS Example: Sent command - Get File Info Dly1.ace ACE9600 Programmer’s Manual...
The commands described in this section are related to parameters and actions that are valid in the Static Mode. Getting Settings for Link Parameters Syntax: Get Param <channel> <parameter> Function: Returns the current setting for Delay, Frequency Offset, Phase Offset, Attenuation, RF Input, RF Output and Signal Power. Returns: ACE9600 Programmer’s Manual...
(in dB) RfIn (in MHz) RfOut (in MHz) InRange/Overflow SigPower (in dBm) Example: Sent command - Get Param Ch1 Delay Received command - Ack: Param Ch1 1000.3400000 Notes: The Delay value may also includes the status Slewing, which is separated from the value by an ASCII space character.
<error message> Descriptive text describing cause of error CH1/CH2/CH3/CH4 <channel> NoiseNo/NoiseBr/NoiseEbNo/ <parameter> NoiseMode/NoiseEnable/ CalcStatus/RangeStatus <setting> Value with default units or one of valid choices: NoiseNo (in dBm/Hz) NoiseBr (in MHz) NoiseEbNo (in dB) No/EbNo NoiseMode NoiseEnable Off/On Calculated/NotCalculated CalcStatus RangeStatus InRange/OutOfRange...
<error message> Descriptive text describing cause of error CH1/CH2/CH3/CH4 <channel> NoiseNo/NoiseBr/NoiseEbNo/ <parameter> NoiseMode/NoiseEnable <setting> Value with default units or one of valid choices: NoiseNo (in dBm/Hz) NoiseBr (in MHz) NoiseEbNo (in dB) No/EbNo NoiseMode NoiseEnable Off/On Example: Sent command -...
Descriptive text describing cause of error <setting> value (in msec) Example: Sent command - Get DelaySlewBoundary Received command - Ack: DelaySlewBoundary 100 Changing the Delay Slew Boundary Syntax: Set DelaySlewBoundary <setting > Function: Changes the Delay Slew Boundary of the instrument. ACE9600 Programmer’s Manual...
Getting Settings for Noise Parameters about commands to retrieve the calculated status of each channel. The Noise Density parameter will only be calculated if the Noise Type for that channel is set to "EbNo". Capturing Input Signals Syntax: ACE9600 Programmer’s Manual...
Beginning the File Download Syntax: Begin File Transfer <filename> <size in bytes> Function: Informs the instrument that downloading will begin. Returns: Nak: <error message> Ack: File Transfer Beginning Where: <error message> Descriptive text describing cause of error <filename> Filename ACE9600 Programmer’s Manual...
The End File Transfer command is sent through the control port of the instrument, and the acknowledgement or Nak comes through the control port. Once the acknowledgment is received, another file transfer may begin. Aborting the File Download Syntax: ACE9600 Programmer’s Manual...
Text commands are sent to the control port and binary data is sent from the data port. Beginning the File Upload Syntax: Begin File Uptransfer <filename> Function: Informs the instrument that uploading will begin. Returns: ACE9600 Programmer’s Manual...
Control Port, another file transfer may begin. After all files have been uploaded, the client application sends the Close DataPort command through the Control Port. Upon receiving acknowledgment back through the Control Port, the client application must close the data port connection. ACE9600 Programmer’s Manual...
Descriptive text describing cause of error Notes: The binary data is sent through the data port as the acknowledgement or the Nak comes through the control port. The binary data size for each segment is limited to 8192 bytes. ACE9600 Programmer’s Manual...
The protocol (Figure 3) for uploading captured data for a channel begins with the client application sending the Open DataPort command to the instrument's Control Port. Upon receiving acknowledgment back from the Control Port, the client application ACE9600 Programmer’s Manual...
Receiving a Directory Item Syntax: Next File DirItem Function: Dynamic filenames are sent from the control port of the instrument. Returns: Nak: <error message> Ack: File DirItem <filename> Where: <error message> Descriptive text describing cause of error ACE9600 Programmer’s Manual...
Control Port. After the last filename has been received through the Control Port, the client application sends the End File Directory command through the Control Port. See Getting the File Count for more information about obtaining the total number of files stored on the instrument. ACE9600 Programmer’s Manual...
Page 42
Client Application SLE XXXX Ack: Close DataPort Client Control Port Socket Server Control Port Socket Client Data Port Socket Server Data Port Socket Server Data Port Listening... Step 8 Client Data Port disconnects to Server Data Port ACE9600 Programmer’s Manual...
Page 44
Client Application SLE XXXX Ack: Close DataPort Client Control Port Socket Server Control Port Socket Client Data Port Socket Server Data Port Socket Server Data Port Listening... Step 8 Client Data Port disconnects to Server Data Port ACE9600 Programmer’s Manual...
Page 45
Client Application SLE XXXX Ack: Close DataPort Client Control Port Socket Server Control Port Socket Client Data Port Socket Server Data Port Socket Server Data Port Listening... Step 8 Client Data Port disconnects to Server Data Port ACE9600 Programmer’s Manual...
Page 46
Client Data Port Socket Server Data Port Socket Step 4 Client Application SLE XXXX Ack: File Directory Ending Client Control Port Socket Server Control Port Socket Client Data Port Socket Server Data Port Socket Figure 4: Uploading File Directory Protocol ACE9600 Programmer’s Manual...
Summary of User Interface AceClient provides an interface for ACE9600 test equipment that allows the user to customize the client layout according to individual preferences: Multiple ACE control: A single AceClient application has the ability to communicate with a list of different ACE9600s, with the option to link the entire list for actions such as connecting, disconnecting, starting, pausing, resetting and stepping forward/back.
Connection Panel The Connection Panel appears in the upper right corner of the client window (Figure 5 and Figure 6). ACE9600 Programmer’s Manual...
Page 49
Under the title "Interface Name", a list box contains either a descriptive name or an IP address of each instrument added to the current configuration. To add/remove items to the list or to change whether the name or IP address is displayed, see ACE9600 Programmer’s Manual...
Page 50
"Return to Remote" button is pushed (Figure 7). Figure 7: Panel in Local Mode Double clicking with the left mouse button on a list box item invokes a dialog box that allows the connection information for that instrument to be changed (Figure 8). ACE9600 Programmer’s Manual...
Please note that the connection information can only be changed when the instrument is disconnected from the ACE Static and Dynamic Panels The Static Panel or Dynamic Panel appears in the middle right section of the client window (Figure 9 and Figure 10). ACE9600 Programmer’s Manual...
Page 52
The buttons to control a run through the dynamic data files appear as media-type play controls, including from left to right: Reset, StepBack, Play, Pause, and StepFwd. The current run State in the Dynamic Mode is displayed directly under these control buttons. ACE9600 Programmer’s Manual...
Pressing the "Load Config..." button will invoke a standard file dialog box to obtain the name of the previously saved configuration file. Navigate to the directory of the file and press the "Open" button to begin the load process. ACE9600 Programmer’s Manual...
Pressing the "Preferences..." button will invoke a property dialog to change the configuration settings. See Editing the User Configuration for more information about this dialog. Exit Button and Scrolling The "Exit" button and resize handle are located at the bottom right side of the client window (Figure 14). ACE9600 Programmer’s Manual...
The program can also be closed by clicking the "dBm" icon in the upper, left corner of the title bar with the left mouse button and selecting "Close" (Figure 15).
Multipath Parameters for a given channel, as well as the Dynamic mode file selections for that channel (Figure 17). An overflow indicator for the Signal Power measurement is represented by a red LED icon next to the display. Figure 17: Channel Summary Tab ACE9600 Programmer’s Manual...
Page 57
Please note that AWGN and Multipath parameter controls will be disabled if the corresponding license is invalid. All controls will be disabled if the channel board is not present. ACE9600 Programmer’s Manual...
Clicking the up/down buttons next to the edit box will increase or decrease the Delay Slew Boundary by 1. Alternatively, a new Delay Slew Boundary value can be entered using the keyboard, followed by the "Enter" key. ACE9600 Programmer’s Manual...
Current parameter values are displayed on two-state buttons. If no dynamic file has been selected for the parameter, the Static mode value is displayed. Pressing a parameter button will display the graph for the dynamic data file that has been selected. For more information about uploading a data file, see ACE9600 Programmer’s Manual...
The graph operates in one of two modes: compact viewing of the entire data set or detail viewing of each data sample. A scroll bar is attached to the detail view so that long data files can be examined. Press the Scroll "On"/"Off" button to toggle between graph viewing modes. ACE9600 Programmer’s Manual...
Page 62
"Open" button. See Dynamic File Format for more information about creating files for download. Open the ASCII text file under the name "download_log.txt" after downloading files to view a log of errors found in the file conversion process. ACE9600 Programmer’s Manual...
"Enter" key. Please note that changes to the Dynamic mode file selections must be made by pressing the "Dynamic Setup..." button to invoke the Dynamic Run Setup dialog. See Static and Dynamic PanelsStatic ACE9600 Programmer’s Manual...
Clicking the up/down buttons next to the edit box will increment or decrement the values by a fixed amount. Alternatively, a new parameter value can be entered using the keyboard, followed by the "Enter" key. ACE9600 Programmer’s Manual...
Static mode value is graphed. Double-click on a graph to expand the plot in a floating window, or press the "Zoom In" button so that each sample in the file is displayed on the graph. For more information about uploading file data, see ACE9600 Programmer’s Manual...
The currently selected channel appears as drop list box at the top of the display area. The capture options for the currently selected channel appear above the graphs. To change the capture options, press the "Capture Options..." button (Figure 26). ACE9600 Programmer’s Manual...
Page 68
The power spectrum of the signal is also computed and displayed in the bottom graph, with the peak frequency displayed to the left of the graph. All captured graphs can be printed or saved by pressing the "Print" or "Save..buttons at the top right of the tab. ACE9600 Programmer’s Manual...
Figure 27: Activity Log Tab All text boxes on the view have scrollbars to allow viewing long lists collected data. Each text message from the client application to the ACE9600 has a corresponding response on either the control port or the data port.
Page 70
Advanced Channel Emulator Please note that none of the changes made to the configuration will take effect until the Edit Configuration dialog box is closed with the "OK" button. ACE9600 Programmer’s Manual...
To display either the descriptive name or IP address in the Control Bar connection list, click the corresponding radio button under the "Display on Main View by" title. To connect the dynamic data run controls of all connected instruments, check the "Link all instruments" box. ACE9600 Programmer’s Manual...
Enabled. For more information about this tab, see Step Size Details Tab. The Dynamic Overview tab displays all the dynamic data parameters and selected graphs on a single page. For more information about this tab, see ACE9600 Programmer’s Manual...
Page 73
Advanced Channel Emulator Dynamic Overview Tab. The File Manager tab displays a list all files downloaded to ACE as well as a graph of selected dynamic file data. For more information about this tab, see ACE9600 Programmer’s Manual...
Page 74
Advanced Channel Emulator File Manager Tab. The Link Parameter Summary tab displays all non-fading Static mode parameters and dynamic file selections on a single page. For more information about this tab, ACE9600 Programmer’s Manual...
Page 75
For more information about this tab, see Multipath Parameter Summary Tab. The Graphs tab allows for a customized display of selected graphs for dynamic data parameters on a single page. For more information about this tab, see ACE9600 Programmer’s Manual...
Page 76
Advanced Channel Emulator Graphs Tab. The Capture tab displays graphs of data that are sampled from the incoming signal to the instrument. For more information about this tab, see ACE9600 Programmer’s Manual...
Page 77
Capture Tab. The Activity Log tab displays the current settings of the selected ACE in text boxes, as well as text box logs of communication between the AceClient to instrument. For more information about this tab, see ACE9600 Programmer’s Manual...
To save a copy of the file uploaded from the instrument on the local computer executing AceClient, check the "Save Upload Data to Local Computer" box. This may speed the upload process on subsequent executions of the client application. ACE9600 Programmer’s Manual...
Page 79
"Automatically Upload Graphs When Selected" box. If this preference is not selected, then the File Manager tab must be used to manually upload dynamic data files for viewing. For more information about manual uploads, see ACE9600 Programmer’s Manual...
Page 80
Preferences Between Sessions" box. If this preference is not selected, one ACE interface with default settings will be entered into the interface list. Also, four default tab views will be on display (Channel Summary, Step Size Details, Dynamic Overview, and File Manager). ACE9600 Programmer’s Manual...
The maximum range for the data values is determined by the minimum and maximum Frequency Offset of the instrument. A sample data file containing three sample points with a resolution of 10 mHz is as follows: 3 0.00001 -4.659803 -4.659997 -4.660190 ACE9600 Programmer’s Manual...
The maximum range for the data values is determined by the minimum and maximum RF Input of the instrument. A sample data file containing three sample points with a resolution of 1 MHz is as follows: ACE9600 Programmer’s Manual...
The assumed resolution is 0.01 dBm. Each subsequent line will contain one data value in the assumed units of dBm, with lines separated by a carriage return. The maximum range for the data values is determined by the minimum and maximum Noise Density of the instrument.
Page 88
("Data port opened") except: print ("Failed to open data port") input('Enter key to end ') controlport.close() exit() print("--------") print("Check to see if in Dynamic mode after connecting") #----get mode and state message = "Get Mode" ACE9600 Programmer’s Manual...
Page 89
= controlport.recv(buffer_size) print("Received - " + data.decode('utf-8') ) print("--------") #----send close data port message = "Close DataPort" print ("Sending Close DataPort command") controlport.send(message.encode('utf-8')) data = controlport.recv(buffer_size) print("Received - " + data.decode('utf-8') ) print ("Closing data port") dataport.close() ACE9600 Programmer’s Manual...
Advanced Channel Emulator Appendix A: Supplementary Download/Upload Protocol Diagrams The following are supplementary depictions of the TCP communications sequencing for dynamic data file downloads and uploads. Figure 31: TCP Communications Sequence for Dynamic Data File Download ACE9600 Programmer’s Manual...
Page 92
Advanced Channel Emulator Figure 32: TCP Communications Sequence for Dynamic Data File Upload ACE9600 Programmer’s Manual...
0 to 9 Ack: Settings 0 to 9 Store Settings 0 to 8 Ack: Settings 0 to 8 Factory Setting Commands Version SwVersion Ack: Version SwVersion <string> Version SerialNumber Ack: Version SerialNumber <string> Version ModelNumber Ack: Version ModelNumber <string> ACE9600 Programmer’s Manual...
Page 98
Path12 Param Ch1 to Ch4 Mpf Path1 Doppler Ack: Param Ch1 to Ch4 Mpf Path1 Doppler <setting> Path12 Path12 Param Ch1 to Ch4 Mpf Path1 Loss Ack: Param Ch1 to Ch4 Mpf Path1 Loss <setting> Path12 Path12 ACE9600 Programmer’s Manual...
Page 99
File Transfer Beginning Binary Ack: File Transfer Next File Transfer <filename> Ack: File Transfer Ending Abort File Transfer <filename> Ack: File Transfer Aborted Uploading a Binary Dynamic Data File Begin File UpTransfer <filename> Ack: File Transfer Beginning ACE9600 Programmer’s Manual...
Page 100
Abort Capture UpTransfer Ch1 to Ch4 Ack: Capture UpTransfer Aborted Uploading Dynamic File Directory List Begin File DirItem Nak: or File DirItem Next File Directory Ack: File Directory Ending Next File DirItem Nak: or File DirItem Filename ACE9600 Programmer’s Manual...
Need help?
Do you have a question about the ACE9600 and is the answer not in the manual?
Questions and answers