David is currently the Technical Lead for Bluetooth technologies atPalm Inc., and is one of the authors of the original Bluetooth specifica-tion.. Before working on Bluetooth, David work
Trang 11 YEAR UPGRADE
B U Y E R P R O T E C T I O N P L A N
Everything You Need to Write Bluetooth Applications for All
Popular Operating Systems
• Complete Code-by-Examples Written by Leading Bluetooth Developers
• Complete Coverage of Keeping Your Bluetooth Applications Secure
• Hundreds of Developing & Deploying and Debugging Sidebars, Security
Alerts, and Bluetooth FAQs
Trang 2s o l u t i o n s @ s y n g r e s s c o m
With more than 1,500,000 copies of our MCSE, MCSD, CompTIA, and Ciscostudy guides in print, we continue to look for ways we can better serve theinformation needs of our readers One way we do that is by listening
Readers like yourself have been telling us they want an Internet-based vice that would extend and enhance the value of our books Based onreader feedback and our own strategic plan, we have created a Web sitethat we hope will exceed your expectations
ser-Solutions@syngress.com is an interactive treasure trove of useful
infor-mation focusing on our book topics and related technologies The siteoffers the following features:
■ One-year warranty against content obsolescence due to vendorproduct upgrades You can access online updates for any affectedchapters
■ “Ask the Author” customer query forms that enable you to postquestions to our authors and editors
■ Exclusive monthly mailings in which our experts provide answers toreader queries and clear explanations of complex material
■ Regularly updated links to sites specially selected by our editors forreaders desiring additional reliable information on key topics
Best of all, the book you’re now holding is your key to this amazing site
Just go to www.syngress.com/solutions, and keep this book handy when
you register to verify your purchase
Thank you for giving us the opportunity to serve your needs And be sure
to let us know if there’s anything else we can do to help you get the maximum value from your investment We’re listening
www.syngress.com/solutions
Trang 41 YEAR UPGRADE
B U Y E R P R O T E C T I O N P L A N
B l u e t o o t h
David Kammer Gordon McNutt Brian Senese Jennifer Bray Technical Editor
T h e S h o r t R a n g e I n t e r c o n n e c t S o l u t i o n Application Developer’s Guide:
Trang 5Syngress Publishing, Inc., the author(s), and any person or firm involved in the writing, editing, or
production (collectively “Makers”) of this book (“the Work”) do not guarantee or warrant the results to be obtained from the Work.
There is no guarantee of any kind, expressed or implied, regarding the Work or its contents.The Work is sold AS IS and WITHOUT WARRANTY You may have other legal rights, which vary from state to state.
In no event will Makers be liable to you for damages, including any loss of profits, lost savings, or other incidental or consequential damages arising out from the Work or its contents Because some states do not allow the exclusion or limitation of liability for consequential or incidental damages, the above limitation may not apply to you.
You should always use reasonable care, including backup and other appropriate precautions, when working with computers, networks, data, and files.
Syngress Media®, Syngress®,“Career Advancement Through Skill Enhancement®,” and “Ask the Author UPDATE®,” are registered trademarks of Syngress Publishing, Inc “Mission Critical™,”“Hack Proofing™,” and “The Only Way to Stop a Hacker is to Think Like One™” are trademarks of Syngress Publishing, Inc Brands and product names mentioned in this book are trademarks or service marks of their respective companies.
KEY SERIAL NUMBER
Bluetooth Application Developer’s Guide: The Short Range Interconnect Solution
Copyright © 2002 by Syngress Publishing, Inc All rights reserved Printed in the United States of America Except as permitted under the Copyright Act of 1976, no part of this publication may be reproduced or distributed in any form or by any means, or stored in a database or retrieval system, without the prior written permission of the publisher, with the exception that the program listings may be entered, stored, and executed in a computer system, but they may not be reproduced for publication.
Printed in the United States of America
1 2 3 4 5 6 7 8 9 0
ISBN: 1-928994-42-3
Technical Editor: Jennifer Bray Cover Designer: Michael Kavish
Co-Publisher: Richard Kristof Page Layout and Art by: Reuben Kantor
Acquisitions Editor: Catherine B Nolan Copy Editor: Michael McGee
Developmental Editor: Kate Glennon Indexer: Robert Saigh
Distributed by Publishers Group West in the United States and Jaguar Book Group in Canada.
Trang 6Acknowledgments
v
We would like to acknowledge the following people for their kindness and support
in making this book possible
Richard Kristof and Duncan Anderson of Global Knowledge, for their generousaccess to the IT industry’s best courses, instructors, and training facilities
Ralph Troupe, Rhonda St John, and the team at Callisma for their invaluable insightinto the challenges of designing, deploying and supporting world-class enterprisenetworks
Karen Cross, Lance Tilford, Meaghan Cunningham, Kim Wylie, Harry Kirchner,Kevin Votel, Kent Anderson, and Frida Yara of Publishers Group West for sharingtheir incredible marketing experience and expertise
Mary Ging, Caroline Hird, Simon Beale, Caroline Wheeler,Victoria Fuller, JonathanBunkell, and Klaus Beran of Harcourt International for making certain that ourvision remains worldwide in scope
Annabel Dent of Harcourt Australia for all her help
David Buckland,Wendi Wong, Marie Chieng, Lucy Chong, Leslie Lim, Audrey Gan,and Joseph Chan of Transquest Publishers for the enthusiasm with which they receiveour books
Kwon Sung June at Acorn Publishing for his support
Ethan Atkin at Cranbury International for his help in expanding the Syngressprogram
Jackie Gross, Gayle Vocey, Alexia Penny, Anik Robitaille, Craig Siddall, DarleneMorrow, Iolanda Miller, Jane Mackay, and Marie Skelly at Jackie Gross & Associatesfor all their help and enthusiasm representing our product in Canada
Lois Fraser, Connie McMenemy, and the rest of the great folks at Jaguar Book Groupfor their help with distribution of Syngress books in Canada
Trang 8Contributors
David Kammerhas been involved with the handheld industry since
1997 David is currently the Technical Lead for Bluetooth technologies atPalm Inc., and is one of the authors of the original Bluetooth specifica-tion Before working on Bluetooth, David worked on IR technology, and
on the Palm VII In addition to his work at Palm, he also consults for eral companies, including In2M and Microsoft, in the field of wirelesscommunications and PalmOS programming David has spoken at anumber of events, including The Bluetooth Developers Conference,TheBluetooth World Congress, and PalmSource, and has been interviewedabout Bluetooth for the New York Times David holds a B.A fromOberlin College in Computer Science, and currently lives in Seattle.David would like to thank his folks for the education, Meredith Kriebleand Sebastian for a nice space to work in, the excellent folks of the PalmBluetooth Team, and Vanessa Pepoy for her understanding and patience
sev-Tracy Hopkins is an Applications Engineering Manager at CambridgeSilicon Radio (CSR) She and her group offer consultancy applicationservices on all aspects of integrating Bluetooth into customer’s productsfrom initial conception through to production She has a 2:1 BSc degreewith honors in Electronic Engineering and after completing a 6-yearapprenticeship with Phillips Telecommunications has worked in numerousengineering disciplines designing hardware for Satellite communications,production engineering at Studio Audio and Video (SADiE) and managedthe international post-production technical support for broadcast giantSnell and Wilcox She has written and presented many technical papersfor both the communications and broadcast TV industries including theSMPTE technical conference and designs all of CSR’s technical trainingseminars
Brian P Senese has directly participated in the development of state ofthe art wireless communications networks and associated components for
Trang 9viii Contributors
15 years He has worked for Nortel, Uniden, ADC tions, and other aggressive technology companies and has held posi-tions from designer to senior engineering manager Currently, as anApplications Engineer for Extended Systems Inc., he gives seminars, is
Telecommunica-a regulTelecommunica-ar speTelecommunica-aker Telecommunica-at conferences, Telecommunica-and hTelecommunica-as published severTelecommunica-al Telecommunica-articles onBluetooth technology and its practical application in realizing prod-ucts He has spoken extensively on a wide variety of technical topics,
is internationally published, and has another book entitled Successful
High Tech Product Introduction He holds an M.E.Sc and B.E.Sc in
Electrical Engineering from the University of Western Ontario,London, Ontario, Canada
Radina (Jiny) Bradshaw graduated with a first in ComputerScience from Kings College, Cambridge University She received herPh.D in the Laboratory for Communications Engineering, also inCambridge, with Professor Andy Hopper, investigating power efficientrouting in radio peer networks She is currently a Software Engineer
at Cambridge Silicon Radio (CSR)
David McCall graduated from Edinburgh University with an MEng
in Electronics He worked for Visteon, designing circuitry for carstereos, before joining Cambridge Silicon Radio (CSR) in July of
2000 As a Senior Applications Engineer he is responsible for helpingCSR’s customers with all aspects of their Bluetooth product design
RF, hardware and software, from concept through production
Wajih A Elsallal received his B.S degree in Electrical Engineeringfrom the King Fahd University of Petroleum and Minerals in 1998and continued his education at Georgia Institute of Technology where
he received the M.S degree in Electrical and Computer Engineering
in early 2000 Currently, he is pursuing a Ph.D in Electrical andComputer Engineering from Georgia Institute of Technology with aminor in Public Policy His fields of expertise include development ofantenna and phased array antenna design, electromagnetic computa-tional methods, Bluetooth wireless LAN for handheld devices, Inter-Satellite-Link networking, microstrip and packaging technologies and
www.syngress.com
Trang 10Patrick Connolly was educated at Trinity College, Dublin, where hereceived a Bachelors and Masters degree in Computer Science He hasbeen involved with the design and development of leading edge sys-tems for over fifteen years, using such technologies as DCE, CORBA,and J2EE Patrick is the Chief Architect at Rococo Software, where
he plays a leading technical role in setting and driving product tion His chapter in this book was co-authored by Patrick and two ofhis Rococo colleagues: Karl McCabe, Rococo’s CTO, and SeanO’Sullivan, Rococo’s CEO
direc-Gordon McNutt is a Kernel Developer for RidgeRun, Inc, sible for porting Linux to embedded devices containing multiple pro-cessors After receiving his B.S in Computer Science from Boise StateUniversity in 1999, he spent one year at Hewlett Packard developingI/O firmware to support USB, IR, and 1284.4 for LaserJet printers
respon-Bill Munday is one of the founders of blueAid, which started as anorganization to help those companies who could not afford the highconsultancy rates for Bluetooth technology He graduated fromUMIST (Manchester, UK) in 1991 with a double degree ofBSc(Hons) and MEng in Microelectronics Systems Engineering Hewas sponsored by NORTEL and joined them upon graduation as aSystems Designer He worked on first and second generation SDHand SONET transmission systems, then pioneered new time-to-market concepts while working on an innovative next-generationVoice over ATM distributed switching product In 1997 he moved toTality (nee Cadence, Symbionics) to start a career in wireless commu-nications His first project was implementing the HiperLAN 2 stan-dard before moving on to Bluetooth He was the first person in the
Trang 11x Contributors
United Kingdom to have access to Bluetooth technology as he aged and created the Ericsson Bluetooth Development Kit Hequickly became an expert and continued to work on dozens of proto-type Bluetooth products including Tality’s own Bluetooth IP He pre-sented and attended all the Bluetooth seminars and Unplugfestsessions around the world In 2001 he moved on to start blueAid andworking on 3G mobile phones for a start-up company 3GLabs
man-Robin Heydon is a Section Owner of HCI as a member of theBluetooth Special Interest Group (SIG) He obtained his degree inComputer Science and worked for nine years in the computergaming industry on multiplayer flight simulator games Robert beganworking with Bluetooth technology in February 2000, specificallyworking on the baseband, inquiry, sniff, and hold development, andwriting the USB device driver Robin lives in Cambridge, UK
www.syngress.com
Trang 12Technical Editor and Contributor
Jennifer Brayis a consultant at Cambridge Silicon Radio (CSR), thesingle-chip Bluetooth company She is currently working in the groupdeveloping software for their BlueCore family of integrated circuits (ICs).Jennifer currently holds the positions of Associate Councillor and ErrataProgram Manager on the Bluetooth Architectural Review Board
(BARB) She has a bachelor’s degree in Physics with MicrocomputerElectronics, a master’s degree in Satellite Communications Engineering,and a doctorate in the field of wireless communications More recently,she gained a distinction in the Open University’s Management ofTechnology course Her decade of experience in communications productdevelopment includes working on Nortel and 3Com’s first ATM systems,
as well as wireless ATM, the first secure Ethernet repeater, ADSL to ATMgateways, FDDI, CDMA, CDMA, and Bluetooth In addition to her com-munications development experience, she has worked on cutting-edgecontrol and monitoring systems for Formula One and Indy cars, andacted as an ISO 9001 and CMM auditor advising blue-chip companies
on how to improve their development and support processes Jennifer haswritten and delivered technology training courses (naturally includingBluetooth), and is a frequent speaker at conferences She co-authored
with Charles Sturman Bluetooth: Connect without Cables.
Trang 14Every so often, a new technology comes along that, by its very nature, will changethe world.The automobile, the television, and the Internet are obvious examples oftechnologies whose impact upon the entire population has been so far-reaching that
it is truly beyond measure Bluetooth is not one of these technologies Despite themassive amount of media hype that has surrounded it, the effect of Bluetooth on theaverage person will be more like the invention of the automatic transmission than theinvention of the car itself: it will make things easier for the user, but not fundamen-tally change the nature of the way we live and work Simply put, for the averageperson, Bluetooth will probably merit a “Cool!” or a “What will they think of next?”response, but probably won’t leave them stunned or slack-jawed.This is not to saythat Bluetooth will be unimportant I’ve invested several years working on Bluetooth,and I think it will be a valuable technology that millions of people will use, but I alsothink it’s important to be realistic about it
There is, however, a small group of people for whom I think Bluetooth couldfundamentally change the way things are perceived, and if you are reading this intro-duction, in all probability you are one of those people—a software developer
Traditionally, software developers have tended to look at the communication betweentwo devices in terms of big and small, primary or secondary (terminal and mainframe,client and server, apparatus and accessory).While these terms are certainly still relevant
in some situations, Bluetooth definitely presents us with scenarios in which the linesbecome blurry If two people exchange business cards between PDAs, which one isthe client and which one is the server? Traditionally, both a cell phone and a printer
might be considered accessories, but when you use Bluetooth to print an SMS message from your phone, which one is the accessory? We may still use the terms client and
server to refer to certain aspects of an interaction (like who initiates the connection),
but it is easy to see that many of the other ideas and assumptions associated with theseterms are no longer relevant
xxv
Foreword
Trang 15xxvi Foreword
In the world of the Internet, the term peer-to-peer has come to describe
applica-tions that are decentralized—a relaapplica-tionship between equals I believe this is a goodway to think of the relationship between devices using Bluetooth In the Bluetoothpeer-to-peer paradigm, devices are more or less equal, dealing with data in ways thatare appropriate to their nature; sending vCard data to a phone or PDA might causethe device to store the information in its address book, while sending the samevCard to a printer may cause the printer to render the data and then print it
Certainly, not all categories of Bluetooth applications will fall under the peer-to-peerparadigm.There are many good applications out there that will retain a server-clientapproach, but I think the realm of peer-to-peer applications that Bluetooth opens todevelopers will prove to be exciting and extensive
At this point, you are hopefully saying to yourself “Great, so let’s get down to thenitty-gritty; how does it work and how do I get started?”This book will take youthrough the most important aspects of Bluetooth technology, and offer guidance onwriting Bluetooth applications for some of today’s most popular operating systems.Bluetooth is still a very young technology, but the authors of these chapters are amongthose who have helped to see it through its infancy, and the experience they havegained should prove valuable to everyone interested in creating Bluetooth applications
Who Should Read This Book
In general, this book is aimed at software application developers who are interested increating Bluetooth-aware applications Its principle goal is to provide informationand examples that are pertinent to application developers.This does not mean, how-ever, that only application developers will find benefit in reading this book As
someone who worked at integrating a Bluetooth protocol stack into an OS, I knowthat I would have found many of the insights in this book valuable It is importantthat an OS developer understand what the world looks like from an applicationdeveloper’s point of view, and the insights that other OS developers have gainedshould certainly prove useful In addition to developers, anyone who is evaluating aBluetooth application for review, corporate use, or bundling may find the informa-tion in this book valuable in making an informed evaluation For example, I knowthat if I were evaluating an application for enterprise use, I would want to have agood understanding of how security is handled in Bluetooth, so I could decidewhether a given application met my company’s security requirements
www.syngress.com
Trang 16Foreword xxvii
What This Book Will Teach You
Simply put, this book will teach you what Bluetooth technology is all about, andhow to write Bluetooth applications for several popular operating systems.This is atechnical book, and it assumes that the reader has a solid background in applicationdevelopment and has a reasonable understanding of the issues involved in creatingcommunications applications.The book is roughly divided into three sections:
Bluetooth technology in general, Bluetooth applications on various operating tems, and a Bluetooth usage case study.The flow of the book is designed to intro-duce things to you in the most helpful order—first, supplementing your generalknowledge with information about ideas and situations unique to Bluetooth, thenshowing you how these situations are handled in various operating systems, andfinally by stimulating your imagination from looking at several real-world scenarios
sys-in which Bluetooth might be used
It is probably worth noting a few things that this book does not cover It is notdesigned to serve as a detailed investigation of the low-level particulars of theBluetooth specification.The specification itself is publicly available, and there alreadyexist books that do a good job providing a detailed, blow-by-blow, examination ofthe specification specifics Although this is probably already clear, you should beaware that this is not a general applications programming book If you don’t alreadyknow how to write applications for Windows, this book is not going to teach you
refer-■ www.bluetooth.com Home of the Bluetooth specification In general,
I think most people will find reading the specification itself is not terriblyhelpful In a good OS implementation, most of the protocols and proceduresdefined in the specification should be nicely abstracted Still, sometimes youhave to go straight to the source
www.syngress.com
Trang 17xxviii Foreword
■ Bluetooth: Connect Without Cables(by Jennifer Bray and Charles F.Sturman, published by Prentice Hall, 2000) If you choose to look at theBluetooth Specification, I think you will find that this book is an excellentcompanion It goes into detailed explanation, and does a good job
explaining many of the oddities, ambiguities, and occasional paradoxes of theBluetooth specification
■ www.syngress.com The Syngress Publishing Web site Bluetooth nology will unquestionably evolve over time As it does, Syngress will helpyou keep up by releasing updates and new publications
tech-I hope you enjoy the book, and have a great time creating new and excitingapplications
—David Kammer
www.syngress.com
Trang 18xiii
Chapter 1 Introducing Bluetooth Applications 1
Introduction 2
Recognizing Candidate Bluetooth Products 10
Latency 27
Connecting Devices
The page scanning
device’s Bluetooth Device
Address can be obtained
Trang 19Choosing a System Software Architecture 40Constraining Implementation Options
Module 51
Trang 20Contents xv
Chapter 2 Exploring the Foundations of Bluetooth 69
Introduction 70
L2CAP 71RFCOMM 72OBEX 73PPP 73
Finding Information on Services a Device Offers 88Connecting to and Using Bluetooth Services 91Summary 98
Relationship between SP Mode and Mandatory Page Scan Period
Scan Period Mode Tmandatory_pscan
P0 >20 seconds P1 >40 seconds P2 >60 seconds