Tektronix BPA100 Series Programmer Manual

Programmer Manual
BPA100 Series Bluetooth Protocol Analyzer Software Version 2.3
Application Programming Interface
071-1129-00
This document supports software version 2.3 and above.
Copyright © Tektronix, Inc. All rights reserved. Licensed software products are owned by Tektronix or its suppliers and are protec ted by United States copyright laws and international treaty provisions.
Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.227-7013, or subparagraphs (c)(1) and (2) of the Commercial Computer Software -- Restricted Rights clause at FAR 52.227-19, as applicable.
Tektronix products are covered by U.S. and foreign patents, issued and pending. Information in this publication supercedes that in all pre viously published material. Specifications and price change privileges reserved.
Tektronix, Inc., P.O. Box 500, Beaverton, OR 97077
TEKTRONIX and TEK are registered trademarks of Tektronix, Inc.
Bluetooth is a trademark of Telefonaktiebolaget L M Ericsson, Sweden

HARDWARE WARRANTY

Tektronix warrants that the products that it manufactures and sells will be free from defects in materials and workmanship for a period of three (3) years from the date of shipment. If a product proves defective during this warranty period, Tektronix, at its option, either will repair the defective product without charge for parts and labor, or will provide a replacement in exchange for the defective product.
In order to obtain service under this warranty, Customer must notify Tektronix of the defect before the expiration of the warranty period and make suitable arrangements for the performance of service. Customer shall be responsible for packaging and shipping the defective product to the service center designated by Tektronix, with shipping charges prepaid. Tektronix shall pay for the return of the product to Customer if the shipment is to a location within the country in which the Tektronix service center is located. Customer shall be responsible for paying all shipping charges, duties, taxes, and any other charges for products returned to any other locations.
This warranty shall not apply to any defect, failure or damage caused by improper use or improper or inadequate maintenance and care. Tektronix shall not be obligated to furnish service under this warranty a) to repair damage resulting from attempts by personnel other than Tektronix representatives to install, repair or service the product; b) to repair damage resulting from improper use or connection to incompatible equipment; c) to repair any damage or malfunction caused by the use of non-Tektronix supplies; or d) to service a product that has been modified or integrated with other products when the effect of such modification or integration increases the time or difficulty of servicing the product.
THIS WARRANTY IS GIVEN BY TEKTRONIX IN LIEU OF ANY OTHER WARRANTIES, EXPRESS OR IMPLIED. TEKTRONIX AND ITS VENDORS DISCLAIM ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. TEKTRONIX’ RESPONSIBILITY TO REPAIR OR REPLACE DEFECTIVE PRODUCTS IS THE SOLE AND EXCLUSIVE REMEDY PROVIDED TO THE CUSTOMER FOR BREACH OF THIS WARRANTY. TEKTRONIX AND ITS VENDORS WILL NOT BE LIABLE FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES IRRESPECTIVE OF WHETHER TEKTRONIX OR THE VENDOR HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES.

SOFTWARE WARRANTY

Tektronix warrants that the media on which this software product is furnished and the encoding of the programs on the media will be free from defects in materials and workmanship for a period of three (3) months from date of shipment. If a medium or encoding proves defective during the warranty period, Tektronix will provide a replacement in exchange for the defective medium. Except as to the media on which this software product is furnished, this software product is provided “as is” without warranty of any kind, either express or implied. Tektronix does not warrant that the functions contained in this software product will meet Customer’s requirements or that the operation of the programs will be uninterrupted or error-free.
In order to obtain service under this warranty, Customer must notify Tektronix of the defect before the expiration of the warranty period. If Tektronix is unable to provide a replacement that is free from defects in materials and workmanship within a reasonable time thereafter, Customer may terminate the license for this software product and return this software product and any associated materials for credit or refund.
THIS WARRANTY IS GIVEN BY TEKTRONIX IN LIEU OF ANY OTHER WARRANTIES, EXPRESS OR IMPLIED. TEKTRONIX AND ITS VENDORS DISCLAIM ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. TEKTRONIXRESPONSIBILITY TO REPLACE DEFECTIVE MEDIA OR REFUND CUSTOMER’SPAYMENTIS THE SOLE AND EXCLUSIVE REMEDY PROVIDED TO THE CUSTOMER FOR BREACH OF THIS WARRANTY. TEKTRONIX AND ITS VENDORS WILL NOT BE LIABLE FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES IRRESPECTIVE OF WHETHER TEKTRONIX OR THE VENDOR HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES.

Table of Contents

Preface ix............................................
Related Manuals ix....................................
Contacting Tektronix x.................................
Getting Started
Introduction 1--1.......................................
General Characteristic 1--2................................
Software Requirements 1--3...............................
Objects and Interfaces 1--5...............................
Overview 1--5..........................................
Setting Up the API
Running a Client Application on the Server Machine 2--2.......
Running a Client Application across the Network 2--3..........
Setting up the API on the Server Machine 2--3................
Setting up the Client Machine on Windows 2000/NT 2--19.......
Setting up a Client Machine on Windows 98 2--37..............
Setting up a Client Machine on Windows 95 2--46..............
Setting up the Client Machine on Other Platforms 2--54..........
Connecting to the Protocol Analyzer Server 2--55...............
Disconnecting from the Protocol Analyzer Server 2--55..........
Programming Examples
Microsoft Visual Basic Client Using Dispatch Interfaces 3--2.....
Microsoft Visual Basic Client Using VTABLE Interfaces 3--3....
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual
i
Table of Contents
Status and Events
Error Handling 4--1......................................
Server Message Boxes 4--2................................
Syntax and Commands
Command Groups 5--1..................................
BPAAplication Commands 5--1............................
BPASystem Commands 5--2...............................
BPASystemEvents Commands 5--4.........................
BPAAnalyzer Commands 5--5.............................
BPAHCISimple Commands 5--6............................
BPAHCISimpleEvents Command 5--6.......................
Command Descriptions 5--7..............................
IBPAApplication::ShowWindow 5--7........................
IBPAApplication::GetVersion 5--9..........................
IBPAApplication::GetBDAddress 5--11.......................
IBPAApplication::GetAnalyzer 5-- 12.........................
IBPAApplication::GetSystem 5--13..........................
IBPAApplication::GetHCISimple 5--14.......................
IBPASystem::Start 5--15...................................
IBPASystem::Stop 5--17...................................
IBPASystem::Pause 5--19..................................
IBPASystem::Resume 5--20................................
IBPASystem::GetDeviceStatus 5--22.........................
IBPASystem::GetSessionInfo 5-- 24..........................
IBPASystem::SetHoppingMode 5--26........................
IBPASystem::GetHoppingMode 5--28........................
IBPASystem::SetCorrelation 5--30...........................
IBPASystem::GetCorrelation 5--31...........................
IBPASystem::SetResync 5--32..............................
IBPASystem::GetResync 5--33..............................
IBPASystem::SetDataWhitening 5--34........................
IBPASystem::GetDataWhitening 5--36.......................
IBPASystem::SetAcquisitionMode 5--37......................
IBPASystem::GetAcquisitionMode 5--39......................
IBPASystem::SetAcquisitionDefault 5--41.....................
IBPASystem::SetLowLevelTrigger 5--42......................
IBPASystem::GetLowLevelTrigger 5--43.....................
ii
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual
Table of Contents
IBPASystem::ActivateLowLevelTrigger 5--44.................
IBPASystem::SetHighLevelTrigger 5--46.....................
IBPASystem::GetHighLevelTrigger 5--47.....................
IBPASystem::ActivateHighLevelTrigger 5--48.................
IBPASystem::SetErrorPacketGeneration 5--49.................
IBPASystem::GetErrorPacketGeneration 5--50.................
IBPASystem::ActivateErrorPacketGeneration 5--51.............
IBPASystem::SetDataFilter 5--53............................
IBPASystem::GetDataFilter 5--55............................
IBPASystem::ActivateDataFilter 5--57........................
IBPASystem::SetDecryptionSettings 5--59.....................
IBPASystem::GetDecryptionSettings 5--62....................
IBPASystem::ActivateDecryption 5--64.......................
IBPASystem::SetDecryptionDefault 5--65.....................
IBPASystem::DoDeviceDiscovery 5--66......................
IBPASystem::GetDeviceDiscoveryStatus 5--67.................
IBPASystem::GetDeviceList 5--69...........................
IBPASystemEvents::OnStateChange 5--71.....................
IBPASystemEvents::OnTriggerIn 5--72.......................
IBPASystemEvents::OnTriggerOut 5--73......................
IBPAAnalyzer::Open 5--74.................................
IBPAAnalyzer::Close 5--76.................................
IBPAAnalyzer::GetPacketCount 5--77........................
IBPAAnalyzer::GetPacket 5--79.............................
IBPAAnalyzer::GetPrevPacketNumber 5--82...................
IBPAAnalyzer::GetNextPacketNumber 5--85..................
IBPAAnalyzer::GetPacketInfo 5--88..........................
IBPAAnalyzer::Export 5--92................................
IBPAAnalyzer::GetAcquisitionReport 5--95...................
IBPAAnalyzer::SetL2CAPConnectionProperties 5--97...........
IBPAAnalyzer::GetL2CAPConnectionProperties 5--99...........
IBPAAnalyzer::SetRFCOMMServerChannel 5--101..............
IBPAAnalyzer::GetRFCOMMServerChannel 5--103..............
IBPAHCISimple::Send 5--105...............................
IBPAHCISimple::Get 5-- 106................................
IBPAHCISimpleEvents::HCIEvent 5--107......................
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual
iii
Table of Contents
Appendices
Appendix A: Other Issues with DCOM A--1.................
Glossary and Index
iv
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual

List of Figures

Figure 1--1: Controlling BPA100 Series
Bluetooth Protocol Analyzer 1--1.......................
Figure 1--2: Object hierarchy 1--6.........................
Table of Contents
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual
v
Table of Contents

List of Tables

Table i: Related manuals xi............................
Table 5--1: BPAAplication commands 5 --1..................
Table 5--2: BPASystem commands 5--2....................
Table 5--3: BPASystemEvents commands 5--4..............
Table 5--4: BPAAnalyzer commands 5--4..................
Table 5--5: BPAHCISimple commands 5--6................
Table 5--6: BPAHCISimpleEvents commands 5--6...........
Table 5 --7: IBPAApplication::ShowWindow Show
values 5--7.........................................
Table 5 --8: IBPAApplication::ShowWindow Returns 5--7.....
Table 5 --9: IBPAApplication::GetVersion Sybsystem
values 5--9.........................................
Table 5 --10: IBPAApplication::GetVersion Returns 5--9......
Table 5--11: IBPAApplication::GetBDAddress Returns 5--11...
Table 5--12: IBPAApplication::GetAnalyzer Returns 5--12.....
Table 5--13: IBPAApplication::GetSystem Returns 5--13......
Table 5 --14: IBPAApplication::GetHCISimple Returns 5--14...
Table 5--15: IBPASystem::Start Returns 5--15...............
Table 5--16: IBPASystem::Stop Returns 5--17................
Table 5--17: IBPASystem::Pause Returns 5--19...............
Table 5--18: IBPASystem::Resume Returns 5--20.............
Table 5--19: IBPASystem::GetDevic eStatus State Values 5--22..
Table 5--20: IBPASystem::GetDevic eStatus Returns 5--22.....
Table 5--21: IBPASystem::GetSessionInfo SessionInf
Type Values 5-- 24.....................................
vi
Table 5--22: IBPASystem::GetSessionInfo Returns 5--24.......
Table 5--23: IBPASystem::SetHoppingMode P attern
Val ue s 5 -- 2 6..........................................
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual
Table of Contents
Table 5--24: IBPASystem::SetHoppingMode P attern
Frequency 5--26......................................
Table 5--25: IBPASystem::SetHoppingMode Returns 5--27.....
Table 5--26: IBPASystem::GetHoppingMode Pattern
Val ue s 5 -- 2 8..........................................
Table 5--27: IBPASystem::GetHoppingMode Pattern
Frequency 5--28......................................
Table 5--28: IBPASystem::GetHoppingMode Returns 5--29....
Table 5--29: IBPASystem::SetCorrelation Re turns 5--30.......
Table 5--30: IBPASystem::GetCorrelati o n Returns 5--31......
Table 5--31: IBPASystem::SetResync Returns 5--32...........
Table 5--32: IBPASystem::GetResync Returns 5--33..........
Table 5--33: IBPASystem::SetDataWhitening Whitening
Val ue s 5 -- 3 4.........................................
Table 5--34: IBPASystem::SetDataWhitening Returns 5--34....
Table 5--35: IBPASystem::GetDataWhitening Whitening
Val ue s 5 -- 3 6.........................................
Table 5--36: IBPASystem::GetDataWhitening Returns 5--36...
Table 5--37: IBPASystem::SetAcquisitionMode Connect
Val ue s 5 -- 3 7.........................................
Table 5--38: IBPASystem::SetAcquisitionMode SyncOption
Val ue s 5 -- 3 7..........................................
Table 5--39: IBPASystem::SetAcquisitionMode Returns 5--38..
Table 5--40: IBPASystem::GetAcquisitionMode Connect
Val ue s 5 -- 3 9.........................................
Table 5--41: IBPASystem::GetAcquisitionMode
SyncOption Values 5--39...............................
Table 5--42: IBPASystem::GetAcquisitionMode Returns 5--40..
Table 5--43: IBPASystem::SetAcquisitionDefault Returns 5--41.
Table 5--44: IBPASystem::SetLowLevelTrigger Returns 5--42..
Table 5--45: IBPASystem::GetLowLevelTrigger Returns 5--43..
Table 5--46: IBPASystem::ActivateLowLevelTrigger
Enable Values 5--44...................................
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual
vii
Table of Contents
Table 5--47: IBPASystem::ActivateLowLevelTrigger
Returns 5--44........................................
Table 5--48: IBPASystem::SetHighLevelTrigger Returns 5--46..
Table 5--49: IBPASystem::SetHighLevelTrigger Returns 5--47..
Table 5--50: IBPASystem::ActivateHi ghLe velTrigger
Enable Values 5--48......................................
Table 5--51: IBPASystem::ActivateHi ghLe velTrigger
Returns 5--48........................................
Table 5--52: IBPASystem::SetErrorPacketGeneration
Returns 5--49........................................
Table 5--53: IBPASystem::GetErrorPacketGeneration
Returns 5--50........................................
Table 5--54: IBPASystem::ActivateErrorPacketGeneration
Enable Values 5--51...................................
Table 5--55: IBPASystem::ActivateErrorPacketGeneration
Returns 5--51........................................
Table 5--56: IBPASystem::SetDataFilter Values 5--53.........
Table 5--57: IBPASystem::SetDataFilter Returns 5--53........
Table 5--58: IBPASystem::SetDataFilter Values 5--55.........
Table 5--59: IBPASystem::SetDataFilter Returns 5--55........
Table 5--60: IBPASystem::ActivateDataFilter Values 5--57.....
Table 5--61: IBPASystem::ActivateDataFilter Returns 5--57....
Table 5--62: IBPASystem::SetDecryptionSettings Type
Val ue s 5 -- 5 9..........................................
Table 5--63: IBPASystem::SetDecryptionSettings Session
Val ue s 5 -- 5 9..........................................
Table 5--64: IBPASystem::SetDecryptionSettings
Returns 5--60........................................
viii
Table 5--65: IBPASystem::GetDecr yptionSetti ngs Type
Val ue s 5 -- 6 2..........................................
Table 5--66: IBPASystem::GetDecr yptionSetti ngs Session
Val ue s 5 -- 6 2..........................................
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual
Table of Contents
Table 5--67: IBPASystem::GetDecr yptionSettings
Returns 5--63........................................
Table 5--68: IBPASystem::ActivateDecryption Enable
Val ue s 5 -- 6 4..........................................
Table 5--69: IBPASystem::ActivateDecryption Returns 5--64...
Table 5--70: IBPASystem::SetDecryptionDefault Returns 5--65.
Table 5--71: IBPASystem::DoDeviceDiscovery Returns 5--66...
Table 5--72: IBPASystem:GetDevic eDiscoveryStatus
Status Values 5--67....................................
Table 5--73: IBPASystem::GetDevic eDiscoveryStatus
Returns 5--67........................................
Table 5--74: IBPASystem::GetDevic eList Returns 5--69.......
Table 5--75: IBPASystemEvents::OnStateChange State
Val ue s 5 -- 7 1..........................................
Table 5--76: IBPASystemEvents::OnStateChange
Returns 5--71........................................
Table 5--77: IBPASystemEvents::OnT riggerIn Returns 5--72...
Table 5--78: IBPASystemEvents::OnT riggerOut Returns 5--73.
Table 5--79: IBPAAnalyzer::O pe n Returns 5--74.............
Table 5--80: IBPAAnalyzer::Close Returns 5--76.............
Table 5 --81: IBPAAnalyzer::GetPacketCount PacketType
Val ue s 5 -- 7 7..........................................
Table 5--82: IBPAAnalyzer::G etPacketCount Returns 5--78....
Table 5 --83: IBPAAnalyzer::GetPacket PacketType
Val ue s 5 -- 7 9..........................................
Table 5--84: IBPAAnalyzer::G etPacket Returns 5--80.........
Table 5 --85: IBPAAnalyzer::GetPrevPacketNumber
PacketType Values 5--82...............................
Table 5--86: IBPAAnalyzer::G etPrevPacketNumber
Returns 5--83........................................
Table 5 --87: IBPAAnalyzer::GetNextPacketNumber
PacketType Values 5--85...............................
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual
ix
Table of Contents
Table 5--88: IBPAAnalyzer::G etNextPacketNumber
Returns 5--86........................................
Table 5 --89: IBPAAnalyzer::GetPacketInfo PacketType
Val ue s 5 -- 8 8..........................................
Table 5--90: IBPAAnalyzer::G etPacketInfo InfoType
Val ue s 5 -- 8 9..........................................
Table 5--91: IBPAAnalyzer::GetPacketInfo Radix Values 5--90.
Table 5--92: IBPAAnalyzer::G etPacketInfo Returns 5--90.....
Table 5--93: IBPAAnalyzer::Export FileType Values 5--92.....
Table 5--94: IBPAAnalyzer::Export ProtocolType Values 5--92.
Table 5--95: IBPAAnalyzer::Export Returns 5--93............
Table 5--96: IBPAAnalyzer::G etAcquisitionReport
Returns 5--95........................................
Table 5--97: IBPAAnalyzer::SetL2CAPConnectionProperties
Type values 5--97.....................................
Table 5--98: IBPAAnalyzer::SetL2CAPConnectionProperties
Returns 5--98........................................
Table 5--99: IBPAAnalyzer::GetL2CAPConnectionProperties
Type values 5--99.....................................
Table 5--100: IBPAAnalyzer::GetL2CAPConnectionProperties
Returns 5--100........................................
Table 5--101: IBPAAnalyzer::SetRFCOMMServerChannel
Type Values 5--101.....................................
Table 5--102: IBPAAnalyzer::SetRFCOMMServerChannel
Returns 5--101........................................
Table 5--103: IBPAAnalyzer::GetRFCOMMServerChannel
Type Values 5--103.....................................
Table 5--104: IBPAAnalyzer::GetRFCOMMServerChannel
Returns 5--103........................................
Table 5--105: IBPAHCISimple::Send Returns 5--105...........
Table 5--106: IBPAHCISimple::Get Returns 5--106............
Table 5--107: IBPAHCISimpleEvents::HCIEvent
Returns 5--107........................................
x
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual

Preface

This is the Programmer Manual for the BPA100 Series Bluetooth Protocol Analyzer. This manual provides information about the application programming interface of the BPA100 Series Bluetooth Protocol Analyzer.

Related Manuals

Table i: Related manuals
Language Type Part number
English Chinese Japanese
English BPA100 Series Bluetooth Proto-
English BPA100 Series Bluetooth Proto-
BPA100 Series Bluetooth Proto­col Analyzer Installation Manual
col Analyzer Software Version
2.3 User Manual
col Analyzer Software Version
2.3 Application Programming Interfacer Manual
071-1121-00
071-1128-00
071-1129-00
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual
xi
Preface

Contacting Tektronix

Phone 1-800-833-9200*
Address Tektronix, Inc.
Department or name (if known) 14200 SW Karl Braun Drive P.O. Box 500 Beaverton, OR 97077 USA
Web site www.tektronix.com
Sales support
Service sup­port
Technical support
* This phone number is toll free in North America. After office
hours, please leave a voice m ail message. Outside North America, contact a Tektronix sales office or distributor; see the Tektronix web site for a list of offices.
1-800-833-9200, select option 1*
1-800-833-9200, select option 2*
Email: techsupport@tektronix.com
1-800-833-9200, select option 3*
6:00 a.m. -- 5:00 p.m. Pacific time
xii
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual
Getting Started

Introduction

The Application Programming Interface (API) of the BPA100 Series Bluetooth Protocol Analyzer is based on the Microsoft Component Object Model (COM). The API allows you to control the protocol analyzer with a user program on the Server or Remote Client. Figure 1--1 depicts various ways the protocol analyzer can be controlled.
Figure 1- 1: Controlling BPA100 Series Bluetooth Protocol Analyzer
Protocol analyzer Server: Computer where Tektronix Bluetooth Protocol Analyzer device is connected and Tektronix Bluetooth Protocol Analyzer application is installed.
Remote Clients: Computer that tries to connect to the Tektronix Bluetooth Protocol Analyzer device connected to the Protocol analyzer Server.
The Protocol analyzer application is called the server and the user program is called the client.
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual
1- 1
Introduction
The following three cases are shown in Figure 1--1:
H Case 1 shows the user program running on the server and
H Case 2 shows the user program running on another computer and
H Case 3 shows the user program running on a UNIX workstation
The user program can be written in any language or programming environment that supports the Microsoft Component Obje ct Model (COM). Some examples are Visual C++, Visual Basic, and LabView.
communicating with the Protocol analyzer application using Microsoft COM.
communicating with the Protocol analyzer using Microsoft DCOM (Distributed COM).
and communicating with the Protocol analyzer application using DCOM provided by a third party vendor.

General Characteristic

The following is a list of the general characteristics of the API:
H API is consistent with programming interfaces exported by othe r
Windows applications.
H All interfaces exported by the server are dual interfaces, which
supports static and dynamic binding.
H The Protocol analyzer application must be initialized before a
client tries to connect. This includes dismissing any errors that occur at startup time.
NOTE. If a client attempts to connect before the appl ication is initialized, an error message appears indicating access is denied.
H A client either launches a session automatically or connects to an
existing session of the server, if there is one.
H You must launch the serve r before t he remote client can connect
because Microsoft Windows 98 does not allow a client running on a remote host to launch a session on the serve r automatically.
1- 2
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual
Introduction
H Clients hide the server’s window using the programming
interface. If the window is displayed, you can directly interact with the server and the stat us bar of the main window displays the connection status.
H The Protocol analyzer server continues to run after a client has
disconnected. The serve r window is always visible even when clients are not connected.
H API operates within the main thread of the application.
H API supports multiple clients. Ensure that the clients do not
interfere with one another.
H There is no provision for an API client to block other clients.

Software Requirements

API is supported by Tektronix Bluetooth Protocol Analyzer V2.2.1 or higher. If you have an older version of the Tektronix Bluetooth Protocol Analyzer application, you must upgrade to a recent version. You can download the new version of t he Tektronix Bluetooth Protocol Analyzer application from the Tektronix Web site: http://www.tektronix.com/bpa_support.
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual
1- 3
Introduction
1- 4
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual

Objects and Interfaces

Overview

The application programming interface for the Protocol analyzer consists of the following objects:
H BPAApplication. You can create a BPAApplication object to
connect to the application and obtain a reference to additional objects. The BPAApplication object exports a single interface called IBPAApplication.
H BPASystem. The BPASystem object provides methods for
controlling most of the functionality in the Tektronix Bluetooth­Protocol Analyzer GUI. The BPASystem object exports a single interface called IBPASystem.
H BPASystemEvents. The BPASystemEvents object provides
methods for capturing events fired by the BPA application. The BPASystemEvents object exports a single interface called IBPASystemEvents.
H BPAAnalyzer. The BPAAnalyzer object provides methods for
analyzing the log file provided by the Protocol analyzer Analyzer. The BPAAnalyzer object exports a single interface called IBPAAnalyzer.
H BPAHCISimple. The BPAHCISimple object provides methods
for sending or receiving HCI command. The BPAHCISimple object exports a single interface called IBPAHCISimple.
H BPAHCISimpleEvents. The BPAHCISimpleEvents object
provides methods for capturing events fired by the Protocol analyzer hardware. The BPAHCISimpleEvents object exports a single interface called IBPAHCISimpleEvents.
By default, all methods are synchronous and return the values after completing an operation.
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual
1- 5
Objects and Interfaces
The object hierarchy is depicted by Figure 1--2.
Figure 1- 2: Object hierarchy
1- 6
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual
Setting up the API

Setting Up the API

In the following procedures, <install directory> refers to the directory where the API client application has been installed on your client machine. The install directory is C:\Program Files\Tektronix Bluetooth Protocol Analyzer by default.
The type library to be used with the API is BPA100.tlb. After you finish the following setup procedure, this file is located in C:\Pro-
gram Files\ Tektronix Bluetooth Protocol Analyzer\System\API
and in the <install directory>\System\API on your API client.
You have two methods of using the API with your client application:
H You can run the cli ent application locally on the server where
your Protocol Analyzer application is running. No special setup is required once the Protocol Analyzer application is installed. The following section, Running a client appl ication on the server machine, shows how you c an run a client application on the server.
H You can run your client application rem otely across the
network. In this case, both the server and the remote client require special setup procedures. Refer to the section, Running a Client Application across the Network, on page 2--3.
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual
2- 1
Setting Up the API

Running a Client Application on the Server Machine

If you are running a client application on the Server, no special set up is required if the Tektronix Bluetooth Protocol Analyzer applicati on has already been installed. You can just run the client application that you have created.
To verify that a client application can conne ct to the Protocol Analyzer Server, do the following steps:
1. Start the Protocol Analyzer application on the computer where
the Protocol Analyzer device is connected.
2. Run testclient.exe from <install directory>\Samples\API
Samples\VC++\test client.
2- 2
3. Click the connect button to check whether the client appli cation
connects to the Protocol Analyzer Server.
4. Click Exit.
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual
Setting Up the API

Running a Client Application across the Network

If you want to run the client application remotely across the network, you must set up the API on the server machine and the client machine. Use the following procedures as appropriate:
H Setting up the API on the Server Machine page 2--3
H Setting up the Client Machine on Windows 2000/NT page 2--20
H Setting up the Client Machine on Windows 98 page 2--37
H Setting up the Client Machine on Windows 95 page 2--46
H Setting up the Client Application on Other
Platforms page 2--54

Setting up the API on the Server Machine

Follow these steps to set up the API on the server:
1. Install and configure TCP/IP.
NOTE. If you have difficulty in configuring the network setup, contact your system administrator.
2. Select the appropriate access type. You may choose share-level
access (page 2 --4) or user-level access (page 2--12) to the server as provided by Microsoft Windows.
NOTE. For the API to work with share-level access, authentication is turned off and any COM client application can call in to a COM server running on the server.
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual
2- 3
Setting Up the API
Share-Level Access
Follow these steps to set up the server to be shared among different users on a network:
1. Click Start> Run. The Run dialog box appears.
2. Type dcomcnfg in the Open field and click OK. The Distributed
COM configuration properties box appears.
2- 4
BPA100 Series Bluetooth Protocol Anal yzer Programmer Manual
Loading...
+ 186 hidden pages