Title: BLUETOOTH PROGRAMMING ENVIRONMENT PROJECT
1BLUETOOTH PROGRAMMING ENVIRONMENT PROJECT
- INSTRUCTOR ILAN HAZAN
- STUDENTS
- ERAN PEYSER
- YOAV FRANDZEL
2PROJECT OBJECTIVES
- CREATE USER FRIENDLY API TO THE ERICSSON BT STACK
- CREATE A WINDOWED PROGRAM TO DEMONSTRATE THE NEW
API
3THE ERICSSON BT STACK
- THE STACK IS BUILT AS A COM OBJECT
- THE STACK IS SUPPLIED AS A CLOSED EXE FILE
COMPOSED OF FIVE COMPONENTS , SCM, RFCOMM, SDC,
L2CAP, HCI, THROUGH WHICH CONNECTION TO A BT
DEVICE IS MADE - ERICSSON SUPLY TWO MORE SUPPORT COMPONENTS , VOS
AND EVOS THAT ROUTE MESSAGES TO THE CORRECT
PROCESSES AND THREADS
4THE STRUCTURE OF THE BT STACK
APPLICATION
OUR (FRIENDLY ) INTERFACE
SCM
RFCOMM
SDC
VOS EVOS
L2CAP
HCI DRIVER
SERIAL LINE INTERFACE
5ERICSSONS API
Application
Commands
Sequential program loop Asynchronous State
machines Event Sink
Stack command interface
Virtual Operating System
Bluetooth Stack
Intraprocess communication
Commands
Create COM object
Stored messages
Vos process interface
Cserver events
Extended Virtual Operating System
Advise (Asynchronous connection)
6STRUCTURE OF THE BT INTERFACE
- THE INTERFACE WILL COMPLY WITH THE CLIENT-SERVER
METHODOLOGY - THE FUNCTIONS PROVIDED WILL USE THE STACK VIA ITS
COMPONENTS - CONNECTIONS BETWEEN DEVICES WILL BE THROUGH
SOCKETS - IMPLEMENTATION POSSIBILITIES AS A COM OBJECT OR
AS A LIBRARY FILE
7I am a client socket, I initiate connections
I am a server socket, I accept connections
8 BT INTERFACE CLASS DESIGN
BTSocket (Interface)
BTSocketImpl
BTClientSocket (Interface)
BTServerSocket (Interface)
BTClientSocketImpl
BTServerSocketImpl
9BTSocket METHODS
- Close
- Read
- Write
- getLocalDeviceNumber
- getLocalDeviceName
- getRemoteDeviceNumber
- getRemoteDeviceName
- getBTType
- getSocketStatus
- getLastError
10BTClientSocket METHODS
- BTSocket methods (super class)
- discoverDevices
- open
- init (static)
11BTServerSocket METHODS
- BTSocket methods (super class)
- reveal
- unreveal
- accept
- init (static)
12CONECTION FLOW CHART
CLIENT
SERVER
AIR
SERVER SOCKET
CLIENT SOCKET
reveal
accept
open
Read/write
Read/write
close
close
unreveal
13THE API DEMO
- THE DEMO WILL BE A GUI DEMOSTRATION OF THE
SOCKETS UTILITY, AND SIMPLICITY AS A DEVELOPMENT
TOOL. - SERVICES
- SERVER REGISTRATION
- DEVICE AND SERVICES DISCOVERY TREE
- DISPLAY OF OWN DEVICE IDENTITY
- CONNECTION TO A SELECTED DEVICE
- DEMOSTRATION OF BI-DIRECTIONAL DATA TRANSFER
14THE VISION
Is this Harlem?