Title: Bluetooth
1Bluetooth Wireless System
- Joe Decuir
- Microsoft
- Chair, Seattle COM-19
- Jdecuir_at_ieee.org
- Note Bluetooth is a trademark of Ericsson
2Agenda
- 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
3Wireless Overview
- Wireless trends
- Wide Area Networks (WAN)
- Local Area Networks (LAN)
- Personal Area Networks (PAN)
- Scenarios
- Adhoc
- Home
- Small business
- Enterprise, ISP
4Wireless 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
5Wireless 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
6Wide-Area Wireless
Wide Area Wireless
US Summary
Mobitex 8, DataTAC 19.2 Packet
CDPD 19.2 Packet
GSM 9.6 Circuit-Switched
General Deployment
iDEN - Nextel - 9.6 Packet and
Circuit-Switched
Trials Start
General Deployment
Trials
cdmaOne Circuit-Switched
AirTouch
14.4 - IS-95A
GTE, Sprint
Limited Deployment
cdma2000 1XRTT
Trials
Start
153 Kbps - Packet
General Deployment
19.2 Rx/9.6 Tx
57.6 Kbps
Trials
GSM GPRS Technologies
Start
38.4 Rx/9.6 Tx
Limited Deployment
EDGE
Trials Start
384 Kbps Packet
General Deployment
7Local-Area Wireless
Local Area Network
1999
2000
2001
2002
2003
Technology
Q1
Q2
Q3
Q4
Q1
Q2
Q3
Q4
Q1
Q2
Q3
Q4
Q1
Q2
Q3
Q4
Q1
Q2
Q3
Q4
802.11 (FHSS) 2.4 GHz
1 Mbps
Freq. Hopped Spread Spectrum
802.11 (DSSS) 2.4 GHz
1 or 2 Mbps
Direct Sequence Spread Spectrum
Hiperlan
Initial
23.5 Mbps
Shipments
High Performance Radio LAN
P802.11b (DSSS) 2.4 GHz
Initial
11 Mbps
Shipments
Direct Sequence Spread Spectrum
Final
Specification
Initial Mobile
P802.11a 5 GHz
Shipments
Specifications
54 Mbps
Approved
Direct Sequence Spread Spectrum
8Personal Area Wireless
Local Area Network
1999
2000
2001
2002
2003
Technology
Q1
Q2
Q3
Q4
Q1
Q2
Q3
Q4
Q1
Q2
Q3
Q4
Q1
Q2
Q3
Q4
Q1
Q2
Q3
Q4
IrDA
4Mbps
Computer Integrated Products
Initial Shipments
Bluetooth
Integrated Handsets
721 Kbps
PC Card and CF Module
9Ad Hoc Networks
Many diverse devices to be connected
10A Connected Home
1394
STB
IrDA
802.11
Ethernet/1394b
Internet
Bluetooth
PLC
xDSL Cable Satellite POTS, ISDN
Phone
Residential Gateway
11A Connected Small Office
Phone
Small Business Server
802.11
Internet
Bluetooth
T1, T3,
Ethernet
Edge Server
12Enterprise
GPRS
- Information at your fingertips
- At meetings, in the office, on the road
- Reliable, secure, multimedia LAN
GPRS
IrDA
GPRS
Bluetooth
Internet
Web Server
802.11
T1, T3,
Ethernet
Proxy Server
13An ISP Connected Public Space
- Discovery of proximity services (flight schedules
at airport, mall directories, )
Bluetooth
Phone
GPRS
IrDA
Internet
Web Server
802.11
T1, T3,
Ethernet
Proxy Server
14Wireless Architecture Requirements
- Just works
- Always connected
- Unified transport IP
- Mobility
- Unified security model
- Adhoc
- QoS
- Performance
15Windows Wireless Architecture
Networking APIs
TAPI 3.0
Dial-up Networking APIs
RoutingAPIs
Networkstreaming (DirectX)
WinSock 2.0
RSVP
Networking Services
DHCP
802.1X
DNS
Network Location
UPnP
NetBT
TCP/IP
Protocolstacks
IP packetfiltering
IP forwarder
Route table
Packet classifier
Packet scheduler
IGMP
IRDP
NDIS 5.1
NDIS WAN
Ethernet
TR
802.11
Affected by Wireless
PPTP
Async
Bluetooth
RNDIS
802.1D
16Just 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
17What 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
18IrDA 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
19Bluetooth 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
20Bluetooth Overview
- Genesis
- Bluetooth architectural overview
- Bluetooth Program update
21What Does Bluetooth Wireless Technology Do For
You?
Landline
Cable Replacement
Data/Voice Access Points
Personal Ad-hoc Networks
22What does Bluetooth Do?
23Bluetooth 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
24Who is Bluetooth?
- Harald Blaatand Bluetooth II
- King 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 stones inscription (runes) say
- Harald christianized the Danes
- Harald controlled Denmark and Norway
- Harald thinks notebooks and cellular phones
should seamlessly communicate
25What is Bluetooth?
Application Framework and Support
Host Controller Interface
Link Manager and L2CAP
Radio Baseband
Latest Version on Bluetooth Website www.Bluetoot
h.com
- A hardware description
- An application framework
26What is Bluetooth?
- A hardware description
- An application framework
Modules
27Testing to Specification
Application Framework Certification
Basic Layer Certification
- Bluetooth devices will be tested against the
specification - Bluetooth Qualified Test Facilities (BQTF)
28Bluetooth 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
29Bluetooth 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
30Basic Baseband Protocol
One
Slot
Packet
- 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)
31Network 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!
S
P
M
M
sb
P
S
sb
P
S
S
32The 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)
33Functional 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
Unconnected
Standby
Standby
Disconnect
T
typical2s
Connecting
Inquiry
Page
States
T
typical0.6s
Transmit
Connected
Active
data
AMA
States
AMA
T
T
T
typical2 ms
typical2 ms
typical2 ms
Releases
HOLD
PARK
SNIFF
Low Power
AMA
AMA
PMA
AMA
States
Address
34Packet Types/Data Rates
- ASL Packet like behavior
- SCO Circuit like behavior
35Mobile Battery Life
- Low power consumption
- Standby current lt 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
36Error Handling
0-2745b
72b
54b
access code
header
payload
- 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
37Bluetooth Security Model
38Bluetooth Security Features
- Fast Frequency Hopping (79 channels)
- Low Transmit Power (range lt 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
39Application 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
40Bluetooth 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
41Bluetooth 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 dia
17x33mm
36x43mm
42Bluetooth Protocols
vCard/vCal
WAE
Audio
Printing
Still Image
OBEX
WAP
RFCOMM
TCP/UDP
HID
IP
Service Discovery
TCS
L2CAP
Host Controller Interface
- Bluetooth Specific
- Reused Spec
- Modified
43Bluetooth 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
44Bluetooth 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
45Bluetooth 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., IrDAs OBEX, or
WAP for interacting with applications on phones
46Interoperability 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
Applications
Protocols
Profiles
47Bluetooth Profile Specifications
- K1 Generic Access
- K2 Service Discovery
- K3 Cordless Telephony
- K4 Intercom
- K5 Serial Port
- K6 Headset
- K7 Dial Up Networking
- K8 Fax
- K9 LAN Access
- K10 Generic Object Exchange
- K11 Object Push
- K12 File Transfer
- K13 Synchronization
48Bluetooth 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
49The 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)
50Future Directions for Bluetooth
- Bluetooth Second Generation Radio
- Bluetooth Personal Area Networking
- Bluetooth in and around the Car
- Bluetooth Wake-up
- Bluetooth Human Interface Devices (HID)
- Bluetooth Audio/Visual
- Bluetooth ISM interference/Interoperability
- Bluetooth Printing
- Bluetooth Still Image
- Bluetooth Extended Service Discovery Protocols
- Bluetooth Local Positioning
- Bluetooth UDI
51Summary
- 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
52Windows 2000 Bluetooth Stack
- Bluetooth Architecture in Windows
- Goals
- Components of the Stack
- Functionality
- Opportunities for IHVs and ISVs
- Applications
- Services
- Devices
53High 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
54Scenarios
- 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
55Technical 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
56Bluetooth Stack Diagram
TAPI
OBEX.DLL
SDP/Advisor
WinSock2
UNIMODEM.TSP
MODEM.SYS
AFD.SYS
BTHMODEM.SYS
AUDIO
RFCOMM.SYS
HID
BTHPORT.SYS
57Stack 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
58Stack 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
59BthPort
- Support Currently Defined buses
- USB
- Serial (if hardware available)
- UART/16550
- Possible PCI HCI (investigating in committee)
- Plug and Play events
- Bluetooth Request Blocks
60Service 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
61Management 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
62OBEX
- Full OBEX 1.2 implementation
- Put
- Get
- SetPath
- Definable transactions
- COM API
- Extensible to other media and transports
63OBEX
OBEX.DLL
?
OBEXBT.DLL
OBEXIrDA.DLL
OBEXIP.DLL
WINSOCK 2
SDP
64RFCOMM
RFCOMM.SYS
BTHPORT.SYS
File Transfer/OBEX
DUN/Lan Access
65Opportunities 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
66RF 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 API
- Unimodem Universal Modem Driver, a TAPI service
provider
67RF 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
68OBEX 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
69Other 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
70Call 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
71Resources, 1of2
- http//www.bluetooth.com
- Bluetooth home page, main resource
- http//developer.intel.com/technology/itj/q22000/a
rticles/art_1.htm - Intel white paper on Bluetooth
- http//www.microsoft.com/hwdev/bluetooth
- Microsoft Bluetooth developer resources
- http//www.microsoft.com/hwdev/wireless
- Microsoft wireless developer resources
72Resources, 2of2
- http//developer.axis.com/software/bluetooth
- Bluetooth on Linux homepage
- http//mobilix.org/bluetooth_linux.html
- Laptops, Bluetooth and Linux (draft)
- http//www.idgnet.com/crd_linux_223446.html
- IBM Linking Linux to Wireless Devices
- http//www.alphaworks.ibm.com/tech/BlueDrekar
- BlueDrekar a Bluetooth protocol driver from IBM
- http//www.upside.com/Ebiz/397f47ae0.html
- IBM toasts Linux, Bluetooth marriage