Bluetooth™ Wireless System Joe Decuir Microsoft Chair, Seattle COM-19 [email protected] Note:...
-
date post
20-Dec-2015 -
Category
Documents
-
view
215 -
download
1
Transcript of Bluetooth™ Wireless System Joe Decuir Microsoft Chair, Seattle COM-19 [email protected] Note:...
Bluetooth™ Wireless System
Joe Decuir
Microsoft
Chair, Seattle COM-19
Note: Bluetooth™ is a trademark of Ericsson
Agenda
• Wireless Overview – http://www/microsoft.com/hwdev/wireless
• Bluetooth System Overview – http://www.microsoft.com/winhec
• Windows Bluetooth Stack– http://www.microsoft.com/hwdev/bluetooth
Wireless Overview• Wireless trends
– Wide Area Networks (WAN)– Local Area Networks (LAN)– Personal Area Networks (PAN)
• Scenarios– Adhoc– Home– Small business – Enterprise, ISP
Wireless Trends• IP networks
• Always connected (packet vs circuit mode)
• Increased bandwidth
• Convenience
• Moving from vertical market to horizontal markets
• Moving from proprietary to standards based
• Proliferation of smart devices
• New scenarios enabled
• Outsourcing
• Adhoc networks
Wireless Media• Infrared: short range and directional• Personal Area Networks: short range radio
– Bluetooth, IEEE 802.15.1
• Local Area Networks: medium range radio– IEEE 802.11(a,b), HyperLAN, HomeRF, etc
• Wide Area Networks: long range radio– Cellular systems: GSM, TDMA, CDMA, “3G”
• Broadband: high speed fixed radio– IEEE 802.16
Wide-Area WirelessWide Area WirelessWide Area Wireless
US SummaryUS SummaryMobitex 8, DataTAC 19.2 PacketMobitex 8, DataTAC 19.2 Packet
CDPD 19.2 PacketCDPD 19.2 PacketGSM 9.6 Circuit-SwitchedGSM 9.6 Circuit-Switched
iDEN - Nextel - 9.6 Packet and iDEN - Nextel - 9.6 Packet and Circuit-SwitchedCircuit-Switched
cdmaOne Circuit-SwitchedcdmaOne Circuit-Switched14.4 - IS-95A14.4 - IS-95A
cdma2000 1XRTTcdma2000 1XRTT153 Kbps - Packet153 Kbps - Packet
GSM GPRS TechnologiesGSM GPRS Technologies
EDGEEDGE384 Kbps Packet384 Kbps Packet
Trials StartTrials Start
General DeploymentGeneral Deployment
TrialsTrialsAirTouchAirTouch
GTE, SprintGTE, Sprint
General DeploymentGeneral Deployment
Trials Trials Start Start
Limited DeploymentLimited Deployment
General DeploymentGeneral Deployment
Trials Trials Start Start
19.2 Rx/9.6 Tx19.2 Rx/9.6 Tx
38.4 Rx/9.6 Tx38.4 Rx/9.6 Tx
57.6 Kbps57.6 Kbps
Trials Start Trials Start Limited DeploymentLimited Deployment
General DeploymentGeneral Deployment
19991999 20002000 20012001 20022002 20032003Q1Q1 Q2Q2 Q3Q3 Q4Q4 Q1Q1 Q2Q2 Q3Q3 Q4Q4 Q1Q1 Q2Q2 Q3Q3 Q4Q4 Q1Q1 Q2Q2 Q3Q3 Q4Q4 Q1Q1 Q2Q2 Q3Q3 Q4Q4
Local-Area WirelessLocal Area NetworkLocal Area Network
TechnologyTechnology
802.11 (FHSS) 2.4 GHz802.11 (FHSS) 2.4 GHz
1 Mbps1 MbpsFreq. Hopped Spread SpectrumFreq. Hopped Spread Spectrum
802.11 (DSSS) 2.4 GHz802.11 (DSSS) 2.4 GHz
1 or 2 Mbps1 or 2 Mbps
Direct Sequence Spread Spectrum Direct Sequence Spread Spectrum
HiperlanHiperlan23.5 Mbps23.5 Mbps
High Performance Radio LANHigh Performance Radio LAN
P802.11b (DSSS) 2.4 GHzP802.11b (DSSS) 2.4 GHz
11 Mbps11 Mbps
Direct Sequence Spread SpectrumDirect Sequence Spread Spectrum
P802.11a 5 GHzP802.11a 5 GHz
InitialInitialShipmentsShipments
InitialInitialShipmentsShipments
FinalFinalSpecificationSpecification
SpecificationsSpecificationsApprovedApproved
Initial MobileInitial MobileShipmentsShipments
19991999 20002000 20012001 20022002 20032003Q1Q1 Q2Q2 Q3Q3 Q4Q4 Q1Q1 Q2Q2 Q3Q3 Q4Q4 Q1Q1 Q2Q2 Q3Q3 Q4Q4 Q1Q1 Q2Q2 Q3Q3 Q4Q4 Q1Q1 Q2Q2 Q3Q3 Q4Q4
54 Mbps54 MbpsDirect Sequence Spread SpectrumDirect Sequence Spread Spectrum
Personal Area WirelessLocal Area NetworkLocal Area NetworkTechnologyTechnology
BluetoothBluetooth721 Kbps721 Kbps
Initial ShipmentsInitial ShipmentsIntegrated HandsetsIntegrated HandsetsPC Card and CF ModulePC Card and CF Module
Computer Integrated ProductsComputer Integrated Products
19991999 20002000 20012001 20022002 20032003Q1Q1 Q2Q2 Q3Q3 Q4Q4 Q1Q1 Q2Q2 Q3Q3 Q4Q4 Q1Q1 Q2Q2 Q3Q3 Q4Q4 Q1Q1 Q2Q2 Q3Q3 Q4Q4 Q1Q1 Q2Q2 Q3Q3 Q4Q4
IrDAIrDA
4Mbps4Mbps
Ad Hoc Networks
Desktops, Desktops, NotebooksNotebooks
TVs, TVs, games games
Phones, PagersPhones, PagersPC companionsPC companions
Books, tablets, Books, tablets, handheld PCshandheld PCs
Many diverse Many diverse devices to be devices to be connectedconnected
A Connected Home
xDSLxDSLCableCable
SatelliteSatellitePOTS, ISDNPOTS, ISDN ResidentialResidential
GatewayGateway
13941394
STBSTB
PhonePhone
Ethernet/1394bEthernet/1394b
PLCPLC
802.11802.11
IrDAIrDA
BluetoothBluetoothInternetInternet
A Connected Small Office
T1, T3, …T1, T3, …
Edge ServerEdge Server
PhonePhone
SmallSmallBusinessBusiness
ServerServer
EthernetEthernet
InternetInternet BluetoothBluetooth802.11802.11
Enterprise• Information at
your fingertips – At meetings, in the office, on the
road– Reliable, secure, multimedia
LAN
T1, T3, …T1, T3, …
Proxy ServerProxy Server
802.11802.11
IrDAIrDAGPRSGPRS
Web ServerWeb Server
EthernetEthernet
GPRSGPRS
BluetoothBluetooth
GPRSGPRS
InternetInternet
An ISP Connected Public Space
• Discovery of proximity services (flight schedules at airport, mall directories, …)
T1, T3, …T1, T3, …
Proxy ServerProxy Server
802.11802.11
PhonePhone
BluetoothBluetooth
IrDIrDAA
GPRSGPRS
Web ServerWeb Server
EthernetEthernet
InternetInternet
Wireless Architecture Requirements
• “Just works”• Always connected• Unified transport: IP• Mobility• Unified security model• Adhoc• QoS• Performance
Windows Wireless Architecture
NDIS 5.1NDIS 5.1
NetworkingNetworking APIs APIs
NDIS WANNDIS WAN
PPTPPPTP AsyncAsync BluetoothBluetooth
EthernetEthernet TRTR 802.11802.11
TCP/IPTCP/IP ProtocolProtocolstacksstacks
WinSock 2.0WinSock 2.0
RSVPRSVP
Packet schedulerPacket scheduler
Packet classifierPacket classifier
TAPI 3.0 TAPI 3.0 Dial-upDial-up
Networking Networking APIsAPIs
IP packetIP packetfilteringfiltering
IPIP forwarder forwarder
RoutingRoutingAPIsAPIs
NetworkNetworkstreamingstreaming
(DirectX)(DirectX)
RNDISRNDIS
DHCPDHCP
IGMPIGMP
802.1X802.1X DNSDNS
IRDPIRDP
NetworkingNetworking Services Services
Affected byAffected byWirelessWireless
Route tableRoute table
Network Network LocationLocation
802.1D802.1D
NetBTNetBT
UPnPUPnP
Just Works• No configuration
– Especially when roaming
• CDPD– Configure Network Equipment Identifier
• 802.11– Configure network name and security keys
• Per location
• Bluetooth– Configure PIN numbers
• Per device
What is an adhoc network?• No network infrastructure at all
– E.g. back to back Ethernet– Automatic IP addressing when no DHCP server available– NetBT broadcast for adhoc name resolution
• Interconnections not managed– Multiple interconnections to destinations
– Loops in the network
• Home network– ICS contains DNS proxy and DDNS support for the adhoc home
network
• Service Discovery Protocols– SSDP protocol enables UPnP discovery– SDP protocol enables Bluetooth wireless technology discovery– IrLAP protocol enables IrDA discovery
IrDA Applications• File transfer
– Integrated into shell
• Image exchange from camera
• Dial-up networking via cellphone
• Printing
• Synchronization– E.g. PDA or cell phone to PC
Bluetooth Applications
• Subset of IrDA• File transfer
– Integrated into IrDA ftp transfer
• Dial-up Networking via cellphone• Synchronization• IrDA and Bluetooth applications are tied to
particular media– Do not inter-operate
Bluetooth Overview
• Genesis
• Bluetooth architectural overview
• Bluetooth Program update
Personal Ad-hoc Personal Ad-hoc NetworksNetworks
Cable Cable ReplacementReplacement
Landline
Data/Voice Data/Voice Access PointsAccess Points
What Does Bluetooth Wireless Technology Do For You?
What does Bluetooth Do?
• Cable Replacement
Bluetooth Genesis• Ericsson was a participant in GSM 7.07, a
standard for connecting PCs and mobile devices through cell phones offering circuit mode data and fax services.
• This called for adding serial cables to cell phones: cumbersome, easy to loose, too many connections.
• Ericsson, a radio company, decided to replace short cables with short range radios
Who is Bluetooth?Harald Blaatand “Bluetooth” IIKing of Denmark 940-981
Son of Gorm the Old (1st King of Denmark) and Thyra Danebod (daughter of King Ethelred of England)
This is one of two Runic stones erected in his capitol city of Jelling (central Jutland) This is the front of the stone depicting the
chivalry of Harald. The stone’s inscription (“runes”) say:
Harald christianized the DanesHarald controlled Denmark and NorwayHarald thinks notebooks and cellular phones
should seamlessly communicate
What is Bluetooth?
• A hardware description• An application framework
Application Framework and Support
Link Manager and L2CAP
Radio & Baseband
Host Controller Interface
RF
Baseband
AudioLink Manager LMP
L2CAP
TCP/IP HID RFCOMM
Applications
Data
Control
Latest Version on Bluetooth Website:www.Bluetooth.com
What is Bluetooth?
• A hardware description• An application framework
Modules
Software
RF
Baseband
AudioLink Manager LMP
L2CAP
TCP/IP HID RFCOMM
Applications
Data
Control
Testing to Specification
• Bluetooth devices will be tested against the specification
• Bluetooth Qualified Test Facilities (BQTF)
Basic Layer Certification
Application Framework Certification
RF
Baseband
AudioLink Manager LMP
L2CAP
TCP/IP HID RFCOMM
Applications
DataControl
Bluetooth Core Specifications
• A: Radio• B: Baseband• C: Link Manager• D: Logical Link Control• E: Service Discovery• F: RFCOMM, IrDA, Telephony, WAP• H: Host Controllers, USB, Serial, UART• I: Compliance: Test modes, Test control interfaces
Bluetooth RF Specifications
Specified for low cost, single chip implementation– Noise floor margin for substrate noise and low current Low
Noise Amplifier (LNA)– Linearity set by near-far problem– In-band image allows low-cost low IF– VCO phase noise enables integrated VCO– TX-RX turn around time enables single synthesizer– 2.4 ISM band chosen for global use and process capabilities
Sensitivity traded for low cost integration of transceiver and baseband
Basic Baseband Protocol
• Spread spectrum frequency hopping radio– 79 or 23* one MHz channels (*country dependent)
– Hops every packet• Packets are 1, 3, or 5 slots long
– Frame consists of two packets• Transmit followed by receive
– Nominally hops at 1600 times a second (1 slot packets)
OneOneSlotSlot
PacketPacket
Three Slot PacketThree Slot Packet
FrameFrame
MasterMaster
SlavSlavee
625 us625 usOne SlotOne Slot
ffkk ffk+1k+1
OneOneSlotSlot
PacketPacket
FrameFrame
MasterMaster
SlaveSlave
625 us625 usOne SlotOne Slot
ffkk ffk+1k+1
OneOneSlotSlot
PacketPacket
MMMM
SS
SS SS
SS
PP
sbsb
sbsb
PP
PP
Network Topology• Radio Designation
– Connected radios can be master or slave– Radios are symmetric (same radio can be master or slave)
• Piconet– Master can connect to 7 simultaneous or 200+ active slaves per piconet– Each piconet has maximum capacity (1 MSPS)
• Unique hopping pattern/ID
• Scatternet– High capacity system
• Minimal impact with up to 10 piconets within range
– Radios can share piconets!
A
D
C
B
E
IDb
IDc
IDa
IDd
IDe
The Piconet
• All devices in a piconet hop together– In forming a piconet, master gives slaves its clock and device ID
• Hopping pattern determined by device ID (48-bit)• Phase in hopping pattern determined by Clock
• Non-piconet devices are in standby• Piconet Addressing
– Active Member Address (AMA, 3-bits)– Parked Member Address (PMA, 8-bits)
IDa
P
M Sor
sb
M
P
S
S
sb
IDa
IDc
IDd
IDa
IDa
IDa
IDe
IDb
Functional Overview• Standby
– Waiting to join a piconet
• Inquire– Ask about radios to connect
to
• Page– Connect to a
specific radio
• Connected– Actively on a piconet
(master or slave)
• Park/Hold/Sniff– Low Power
connected states
InquiryInquiry PagePage
ConnectedConnectedAMAAMA
TransmitTransmitdatadataAMAAMA
TTtypical=0.6stypical=0.6s
TTtypical=2stypical=2s
HOLDHOLDAMAAMA
PARKPARKPMAPMA
TTtypical=2 mstypical=2 ms
ReleasesReleasesAMAAMA
AddressAddress
Low PowerLow PowerStatesStates
ActiveActiveStatesStates
StandbyStandby
ConnectingConnectingStatesStates
UnconnectedUnconnectedStandbyStandby
Dis
conn
ect
Dis
conn
ect
SNIFFSNIFFAMAAMA
TTtypical=2 mstypical=2 ms TTtypical=2 mstypical=2 ms
Packet Types/Data Rates
• ASL –Packet like behavior• SCO – Circuit like behavior
00000000000100010010001000110011
NULLNULLPOLLPOLLFHSFHSDM1DM1
NULLNULLPOLLPOLLFHSFHSDM1DM1
11
01000100010101010110011001110111
HV1HV1HV2HV2HV3HV3
DH1DH1
22
DVDV1000100010011001
101010101011101111001100
DM3DM3DH3DH3
33
11011101
1110111011111111
DM5DM5DH5DH5
44
TYPETYPESEGMENTSEGMENT ACL linkACL linkSCO linkSCO link
AUX1AUX1
DM1DM1
DH1DH1
DM3DM3
DH3DH3
DM5DM5
DH5DH5
108.8108.8
172.8172.8
256.0256.0
384.0384.0
286.7286.7
432.6432.6
108.8108.8
172.8172.8
384.0384.0
576.0576.0
477.8477.8
721.0721.0
108.8108.8
172.8172.8
54.454.4
86.486.4
36.336.3
57.657.6
TYPETYPE symmetricsymmetric asymmetricasymmetric
Data Rates (Kbps)Data Rates (Kbps)Packet TypesPacket Types
Mobile = Battery Life• Low power consumption*
– Standby current < 0.3 mA • Þ 3 months
– Voice mode 8-30 mA• Þ 75 hours
– Data mode average 5 mA – (0.3-30mA, 20 kbit/s, 25%)
• Þ 120 hours
• Low Power Architecture– Programmable data length (else radio sleeps)– Hold and Park modes 60 µA
• Devices connected but not participating• Hold retains AMA address, Park releases AMA, gets PMA address• Device can participate within 2 ms
– *Estimates calculated with 600 mAh battery and internal amplifier, power will vary with implementation
Error Handling
• Forward-error correction (FEC)– headers are protected with 1/3 rate FEC and HEC
– payloads may be FEC protected• 1/3 rate: simple bit repetition (SCO packets only)
• 2/3 rate: (10,15) shortened Hamming code
• 3/3 rate: no FEC
• ARQ (ACL packets only)– 16-bit CRC (CRC-CCITT) & 1-bit ACK/NACK
– 1-bit sequence number
access code header payload
72b 54b 0-2745b
®®
Bluetooth Security Model
Bluetooth Security Features• Fast Frequency Hopping (79 channels)• Low Transmit Power (range <= 10m)• Authentication of remote device
– Based on link key (128 Bit)– May be performed in both directions
• Encryption of payload data– Stream cipher algorithm ( 128 Bit)– Affects all traffic on a link
• Initialization– PIN entry by user
Application Level Security• Builds on-top of link-level security
– Creates trusted device groups
• Security levels for services– Authorization required– Authentication required– Encryption required
• Different or higher security requirements could be added:– Personal authentication– Higher security level– Public key
Bluetooth Is Global• One version for the world
– Architecture compliant with global emission rules (2.4 GHz ISM band)• Working through FCC, EC,
MPT for spectrum, and power harmonization
– Architecture compliant and safe for use on airlines• Working with FAA, JAA, FCC, airplane
manufacturers, and airlines
– Reviewing security architecture with affected countries
Bluetooth Radio Modules• Complete radio on a module
– Designed to meet “Limited Module Compliance” (LMA) requirements• Pre-certified to meet global regulatory requirements • Allows devices assembled with modules to be “self-certified”
– USB Interface– Solder-ball connections– External Antennae
25 mm dia25 mm dia 17x33mm17x33mm 36x43mm36x43mm
CompactCompactFLASHFLASH
CardCard
Bluetooth Protocols
PrintingPrinting
vCard/vCalvCard/vCalWAEWAE
Still ImageStill Image
AudioAudio
TCP/UDPTCP/UDP RFCOMMRFCOMM
TCS TCS
HIDHID
IPIPService DiscoveryService Discovery
- Bluetooth Specific- Bluetooth Specific - Reused Spec- Reused Spec - Modified- Modified
L2CAPL2CAP
Host Controller InterfaceHost Controller Interface
OBEXOBEXWAPWAP
Bluetooth protocols• Host Controller Interface (HCI)
– provides a common interface between the Bluetooth host and a Bluetooth module
• Interfaces in spec 1.0: USB; UART; RS-232
• Link Layer Control & Adaptation (L2CAP)– A simple data link protocol over baseband
• connection-oriented & connectionless
• protocol multiplexing
• segmentation & reassembly
• QoS flow specification per connection (channel)
• group abstraction
Bluetooth protocols
• Service Discovery Protocol (SDP)– Defines a service record format
• Information about services provided by attributes
• Attributes composed of an ID (name) and a value
• IDs may be universally unique identifiers (UUIDs)
– Defines a inquire/response protocol for discovering services
• Searching for and browsing services
Bluetooth protocols• RFCOMM (based on GSM TS 07.10)
– emulates a serial-port to support a large base of legacy (serial-port-based) applications
– allows multiple “ports” over a single physical channel between two devices
• Telephony Control Protocol Spec (TCS)– call control (setup & release)
– group management for gateway serving multiple devices
• Legacy protocol reuse– Re-use existing protocols, e.g., IrDA’s OBEX, or WAP for
interacting with applications on phones
Interoperability And Profiles• Represents default solution
for usage model• Vertical slice through
the protocol stack• Basis for
interoperability and logo requirements
• Each Bluetooth device supports one or more profiles
ProfilesProfilesP
roto
cols
Pro
toco
ls
ApplicationsApplications
Bluetooth Profile Specifications
• K:1 Generic Access• K:2 Service Discovery• K:3 Cordless
Telephony• K:4 Intercom• K:5 Serial Port• K:6 Headset• K:7 Dial Up
Networking
• K:8 Fax• K:9 LAN Access• K:10 Generic Object
Exchange• K:11 Object Push• K:12 File Transfer• K:13 Synchronization
Bluetooth Program Update• 1.0 specifications published in July of 1999
– Core technology specs and Profile requirements
– Currently at 1.1
• Bluetooth membership exceeds 2,000 companies!– Full list of member companies on www.bluetooth.com Web site
• Bluetooth program on track for products available in 2000– Products available this year and early 2001
– Next big step is qualification program, to ensure interoperability
• Bluetooth qualification program started
• Bluetooth wireless technology is the basis for the IEEE 802.15.1 standard work
• Bluetooth SIG has expanded– New contracts and membership types
The SIG Formally Known As Bluetooth ; )
• New Contracts– Adopter/Early Adopter = Early Adopter
• Early Adopter Contract
– Early Adopter in working group = Associate• Early Adopter Contract, Associate Amendment
• Open IP license to Bluetooth wireless technology– Original “Foundation Specifications”
– New technology in and around the 12 specification working groups
• Only need to sign 1 contract to use any Bluetooth wireless technology (the new one)
Future Directions for Bluetooth
1. Bluetooth Second Generation Radio 2. Bluetooth Personal Area Networking3. Bluetooth in and around the Car4. Bluetooth “Wake-up”5. Bluetooth Human Interface Devices (HID)6. Bluetooth Audio/Visual7. Bluetooth ISM interference/Interoperability8. Bluetooth Printing9. Bluetooth Still Image10. Bluetooth Extended Service Discovery Protocols11. Bluetooth Local Positioning12. Bluetooth UDI
Summary• Bluetooth is a global, RF-based (ISM: 2.4GHz band),
short-range, connectivity technology and solution for portable, personal devices– It is not just a radio– Create piconets on-the-fly (approximately 1Mbps)
• Piconets may overlap in time and space for high aggregate bandwidth
• The Bluetooth spec comprises– A hardware and software protocol specification– Usage case scenario profiles and
interoperability requirements
• To learn more: http://www.bluetooth.com
Windows 2000 Bluetooth Stack
• Bluetooth Architecture in Windows – Goals– Components of the Stack– Functionality
• Opportunities for IHVs and ISVs– Applications– Services– Devices
High Level Goals• PC work with all devices
– Bluetooth Devices as PC peripherals– Bluetooth Devices as PC companions– Bluetooth Devices bridge to network
resources through a PC
• Easy to configure and operate
• Extensible architecture– Platform for third parties to add value
Scenarios• Device configuration:
– Discovery– Bonding
• Syncing and transfer through OBEX– Files– Pictures– Vcards
• Dial up Networking– Cell as modem– Null Modem for Peer to peer
• Generic RFComm applications– Non-OBEX synchronization– Other serial-type applications
Technical Requirements• Bluetooth 1.0 Type II device classification supported• Required profiles• Bus Management Infrastructure
– Device and radio configuration– Control panels– System Trays
• Extensible framework for value adds– Devices– Profiles– Bus mgmt software– RFComm applications– Object Exchange and special object handling– RAS and TAPI over Unimodem
Bluetooth Stack Diagram
BTHPORT.SYSBTHPORT.SYS
RFCOMM.SYSRFCOMM.SYS
BTHMODEM.SYSBTHMODEM.SYS
HIDHID
AFD.SYSAFD.SYS
MODEM.SYSMODEM.SYS
UNIMODEM.TSPUNIMODEM.TSP
TAPITAPI
WinSock2WinSock2
OBEX.DLLOBEX.DLL
AUDIOAUDIO
SD
P/A
dviso
rS
DP
/Ad
visor
Stack Components• BthPort
– L2Cap / HCI– Hardware abstraction: Serial, USB…– Enumeration of Found Bound Services
• SDP/Management UI– Bus management:
• User notification of newly discovered devices• User assisted Configuration and Bonding• Configuration of radio
– Local Service Exposure and Publication
Stack Components• RFCOMM
– RFComm Profile– TDI interface for WinSock (AFD)– Bus enumeration for Dial Up Networks
• BthModem (a WDM modem)• OBEX.DLL
– Object Exchange 1.2– Bus Agnostic
BthPort
• Support Currently Defined buses: – USB– Serial (if hardware available)– UART/16550 – Possible PCI HCI (investigating in committee)
• Plug and Play events
• Bluetooth Request Blocks
Service Discovery Protocol• Provide a “builder” interface to easily create a service
record• Kernel mode
– Client drivers can submit a list of UUIDs to search for on all newly discovered devices or initiate a SDP search outside of device discovery
– BThPort will search for all the services in the browse group hierarchy
• User mode– Initiate searches– Browse service records
Management UI• Present user with devices in range and bound devices
• Allows the user to easily change the relationship with remote devices
• Provide unobtrusive PIN and authorization notifications
• UI is accessible from third-party applications for a standard user experience
• Advanced features– Filter devices based on COD or address
– Local radio settings
– Manage power policies
OBEX• Full OBEX 1.2 implementation:
– Put– Get– SetPath– Definable transactions
• COM API• Extensible to other media
and transports
OBEX
OBEX.DLLOBEX.DLL
OBEXBT.DLLOBEXBT.DLL OBEXIrDA.DLLOBEXIrDA.DLL OBEXIP.DLLOBEXIP.DLL
WINSOCK 2WINSOCK 2SDPSDP
??
RFCOMM
RFCOMM.SYSRFCOMM.SYS
BTHPORT.SYSBTHPORT.SYSPDOPDO
FDOFDO PDOPDO
BTHSER.SYSBTHSER.SYS
Modem.SYSModem.SYS
PDOPDO
FDOFDO
OBEXOBEX
WINSOCK/AFD/TDIWINSOCK/AFD/TDI
SocketSocket
DUN/Lan AccessDUN/Lan Access File Transfer/OBEXFile Transfer/OBEX
Opportunities To Add Valuein Windows 2000 environment
• RF comm applications
• OBEX applications/extensions
• Bluetooth management application
• New device types and/or class drivers
• Radios on new hardware buses
RF Comm Applications• Applications looking for virtual serial ports not
supported• Legacy TAPI/Unimodem applications see peer
devices as NULL Modems• Applications enumerate Modem/Serial Devices
through Unimodem
TAPI = Telephony APIUnimodem = Universal Modem Driver, a TAPI service
provider
RF Comm Applications• Winsock allows for dynamic discovery and
communication– Talk to the device, not to the conduit (“My
Laserjet” versus “LPT2” or “COM23”)– Once bonded device is in range the application
can find and use it– Allows for multiple remote connection to same
service– Not necessary to manage multiple virtual
COMx ports
OBEX Applications• Examples
– Photos– Vcards (not “in the box”)– Simple databases
• Server– Registration– New Obex Commands and types– Application can register as handler for custom commands
• Client– Discovery – Navigate directory structure (enumerate objects)– Push Pull objects
Other OS support• Microsoft is only planning to support Windows
2000 and its successors for general purpose PCs.• Intel and many other third parties are producing
stacks for older Windows versions (e.g. Windows 98, which had USB support).
• Intel, IBM and some other parties are producing stacks for use on Linux and other Unix versions
• Several embedded OS vendors will support Bluetooth
• Microsoft is providing support for Windows CE
Call To Action• Join the SIG if you haven't already
– Help advance Bluetooth functionality by supporting the working groups committees
– Got a new usage model? Submit a request
• Learn how Bluetooth wireless technology works NOW! – See Microsoft's presentation on Bluetooth wireless technology – Bluetooth Developers Conference, December 4th , San Jose CA– Bluetooth Developers Seminar, December 8th, San Jose, CA– More information: http://www.Bluetooth.com
• Implement Bluetooth software and hardware in your products and systems– Insure interoperability via Un-plugfests
• Help support native operating system development– Provide test hardware to Microsoft
Resources, 1of2• http://www.bluetooth.com
Bluetooth home page, main resource
• http://developer.intel.com/technology/itj/q22000/articles/art_1.htmIntel white paper on Bluetooth
• http://www.microsoft.com/hwdev/bluetoothMicrosoft Bluetooth™ developer resources
• http://www.microsoft.com/hwdev/wirelessMicrosoft wireless developer resources
Resources, 2of2• http://developer.axis.com/software/bluetooth
Bluetooth on Linux homepage
• http://mobilix.org/bluetooth_linux.htmlLaptops, Bluetooth™ and Linux (draft)
• http://www.idgnet.com/crd_linux_223446.htmlIBM Linking Linux to Wireless Devices
• http://www.alphaworks.ibm.com/tech/BlueDrekarBlueDrekar – a Bluetooth protocol driver from IBM
• http://www.upside.com/Ebiz/397f47ae0.htmlIBM toasts Linux, Bluetooth marriage