MicroController Pros Home Page My Account  Cart Contents  Checkout  
  Store » ELV9781928994428 My Account  |  Cart Contents  |  Checkout   
Quick Find
Enter keywords to find the product you are looking for in the Quick Find field above

or use
Advanced Search
Accessory Boards->
ADI Blackfin
Atmel AVR->
Cypress PSoC
Microchip PIC->
Silicon Labs
ST Microelectronics->
Texas Instruments->
Embedded Ethernet->
Embedded Software->
I/O Modules->
Parts & Components->
Pick & Place Tools
Programmable Logic (PLD)
Prototype PCBs->
ROM/Flash Emulators
Test & Measurement->
Tutorial Software
Universal Programmers->
Intro to Embedded Tools
Embedded News Digest
Useful Resources
Shipping & Returns
Warranty & Liability
Privacy Notice
Conditions of Use
Contact Us
Bluetooth Application Developer's Guide US$51.95

Bluetooth Application Developer\'s Guide

This book will teach you what Bluetooth technology is all about and show you how to write Bluetooth applications for several popular operating systems. This is a technical book, and it assumes that the reader has a solid background in application development and a reasonable understanding of the issues involved in creating communications applications.

Topics covered include:

  • Analyzing your application to determine whether Bluetooth adds end-user value
  • Learning how to quantify connection times, Quality of Service, and interference issues
  • Assessing security features
  • Learning how to discover and connect to another Bluetooth device
  • Connecting to and using Bluetooth services
  • Determining how and when to use power management
  • Mastering Service Discovery to make a zero-configuration network
  • Implementing Bluetooth in Java, C, and SDP
  • Embedding Bluetooth applications

Table of Contents


Introducing Bluetooth Applications


Why Throw Away Wires?

Adding Usability to Products

Allowing for Interference

Considering Connection Times

Coping with Limited Bandwidth

Considering Power and Range

Deciding on Acceptable Range

Recognizing Candidate Bluetooth Products

Considering Product Design

Are You Adding End User Value?

  • Investigating Convenience
  • Enhancing Functionality

Do You Have Time?

Investigating Product Performance

Evaluating Connection Times

  • Discovering Devices
  • Connecting Devices
  • Quantifying Connection Times
  • Performing Service Discovery

Quality of Service in Connections

  • Data Rate
  • Latency

Delivering Voice Communications

Investigating Interference

  • Interfering with Other Technologies
  • Coexisting Piconets
  • Using Power Control
  • Aircraft Safety

Assessing Required Features

Enabling Security

Using Low Power Modes

  • Hold Mode
  • Sniff Mode
  • Park Mode
  • Unparking
  • Which Devices Need Low Power Modes?

Providing Channel Quality Driven Data Rate

Deciding How to Implement

Choosing a System Software Architecture

  • Constraining Implementation Options with Profiles

Choosing a Hardware Implementation Option

Design Bluetooth Directly Onto the PCB

  • Design Verification
  • Manufacturing

Using a Prequalified Complete Bluetooth Module

  • Firmware Versions
  • Dependant for Functionality

Considering Battery Limitations

  • Adding Batteries
  • Using Power Saving Modes to Extend Battery Life
  • Assessing Battery Life


Solutions Fast Track

Frequently Asked Questions

Exploring the Foundations of Bluetooth


Reviewing the Protocol Stack





TCS Binary


Management Entities


Lower Layers

Why Unconnected Devices Need to Talk

Discovering Neighboring Devices

Inquiring and Inquiry Scanning


When to Stop

Connecting to a Device

Paging and Page Scanning


Who Calls Who?

Finding Information on Services a Device Offers

Connecting to and Using Bluetooth Services


Solutions Fast Track

Frequently Asked Questions

Power Management


Using Power Management: When and Why Is It Necessary?

Investigating Bluetooth Power Modes

Active Mode

Hold Mode

Sniff Mode

Park Mode

Evaluating Consumption Levels


Solutions Fast Track

Frequently Asked Questions

Security Management


Deciding When to Secure

Outfitting Your Security Toolbox


  • Pairing
  • Link Keys
  • Bonding
  • Application Involvement

Authorization: How and Why?

  • Using the Trust Attribute

Enabling Encryption

  • Point-to-Point Encryption
  • Broadcasting
  • Application Involvement

Understanding Security Architecture

The Role of the Security Manager

Mode 1 Role

Mode 2 Role

Mode 3 Role

Mode Unknown

The Role of Security Databases

  • Service Database Content
  • Service Database Operations

Role of Device Databases

  • Device Database Content
  • Device Database Operations
  • Managing the Device Database for Your Applications

Working with Protocols and Security Interfaces

Mode 2 Operation

Mode 3 Operation

  • Application---API Structure

Exploring Other Routes to Extra Security


Application Level Security

Implementing Security Profiles

  • SDP
  • Cordless Telephony and Intercom
  • Serial Port Profile
  • Headset Profile
  • Dial-Up Network and FAX
  • LAN Access
  • OBEX

Case Study


Solutions Fast Track

Frequently Asked Questions

Service Discovery


Introduction to Service Discovery

Service Discovery Protocols

  • Bluetooth SDP

Architecture of Bluetooth Service Discovery

The Structure of Service Records

The Service Discovery Protocol

  • Developing an Abstract C API for SDP

Discovering Services

Short-Circuiting the Service Discovery Process

Creating and Advertising a Service

Discovering Specific Services

  • Using Service Attributes

Browsing for Services

Service Discovery Application Profile

Service Discovery Non-Application Profile

Java, C, and SDP

Other Service Discovery Protocols


Service Location Protocol


Universal Plug and Play (UPnP)

The Future of SDP


Solutions Fast Track

Frequently Asked Questions

Linux Bluetooth Development


Assessing Linux Bluetooth Protocol Stacks

Comparing BlueDrekar with OpenBT by Features

  • Kernel Versions
  • Hardware Platforms
  • Bluetooth Protocols
  • SDP Support
  • API
  • License Terms

Other Considerations

  • Fair Warning

Understanding the Linux Bluetooth Driver

Learning about the Kernel Driver

  • Investigating the Kernel Module
  • What Exactly Is a TTY?
  • So What's an Idisc?
  • Building Driver Stacks in the Linux Kernel

Understanding the Bluetooth Driver Interface

  • Investigating the Bluetooth Device Files
  • Using the RFCOMM TTY Drivers
  • Using the Control Driver

Using Open Source Development Applications

Ivestigating the OpenBT Applications

  • Understanding the btd and btduser Applications
  • Understanding the sdp_Server Application
  • Understanding the BluetoothPN Application

Establishing a PPP Connection Using the btd Application

Writing Your Own Minimal Application

Connecting to a Bluetooth Device

Initializing the Bluetooth Stack

  • Preparing the Serial Driver
  • Stacking the Drivers
  • Starting Communication between the PC and the Card
  • Switching to a Higher Baud Rate

Finding Neighboring Devices

  • Letting Other Bluetooth Devices Discover Us
  • Sending an HCI Inquiry

Using Service Discovery

  • Connecting to a Remote SDP Server
  • Sending an SDP Request
  • Processing an SDP Response
  • Adding a Service to the Local Database
  • Querying the Local Database

Connecting to a Bluetooth Service

  • Using a Data Device
  • Creating a Connection
  • Accepting a Connection

Transferring Data


Controlling a Bluetooth Device

Distinguishing between Control and Data Applications

Using ioctls to Control the Device

Covering Basic Scenarios

  • Example: Startup
  • Example: Link Loss
  • Example: User-Initiated and Automated Shutdown
  • Example: Idle Operation


Solutions Fast Track

Frequently Asked Questions

Embedding Bluetooth Applications


Understanding Embedded Systems

Understanding Tasks, Timers, and Schedulers

Understanding Messaging and Queues

Using Interrupts

Getting Started

Installing the Tool Set

Building a Sample Application

Running an Application under the Debugger

Using Plug-Ins

Debugging under BlueLab

Running an Application on BlueCore

Debugging Using VM Spy

  • Using VM Packets
  • Packing Format in Messages

Using the BlueLab Libraries

Basic Libraries

CSR Library

Application Libraries

Using Tasks and Messages

  • Tasks and Message Queues
  • Creating and Destroying Messages
  • Using the MAKE_MSG Macro

Connection Manager

  • Initializing and Opening the Connection Manager
  • Inquiry
  • Pairing
  • Connecting
  • Sending Data
  • Using Other Messages and Events

Deploying Applications


Solutions Fast Track

Frequently Asked Questions

Using the Palm OS for Bluetooth Applications


What You Need to Get Started

Understanding Palm OS Profiles

Choosing Services through the Service Discovery Protocol

Updating Palm OS Applications Using the Bluetooth Virtual Serial Driver

Creating a VDRV Client-Only Application

Creating a VDRV Server-Only Application

Using Bluetooth Technology with Exchange Manager

Creating Bluetooth-Aware Palm OS Applications

Using Basic ACL Links

Creating L2CAP and RFCOMM Connections

Using the Service Discovery Protocol

  • Advertising a Basic Service Record for an RFCOMM or L2CAP Listener Socket
  • Retrieving Connection Information about L2CAP and RFCOMM Listeners on a Remote Device

Using Bluetooth Security on Palm OS

Writing Persistent Bluetooth Services for Palm OS

The Future of Palm OS Bluetooth Support


Solutions Fast Track

Frequently Asked Questions

Designing an Audio Application


Choosing a Codec

Pulse Code Modulation

Continuous Variable Slope Delta Modulation

Configuring Voice Links

Choosing an HV Packet Type

Sending Data and Voice Simultaneously

Using ACL Links for High-Quality Audio

Choosing an Audio Interface

Selecting an Audio Profile

Applications Not Covered by Profiles

New Audio Profiles

Writing Audio Applications

Discovering Devices

Using Service Discovery

Connecting to a Service

Using Power Saving with Audio Connections

Differentiating Your Audio Application

Physical Design

Designing the User Interface

Enabling Upgrades

Improving the Audio Path


Solutions Fast Track

Frequently Asked Questions

Personal Information Base Case Study


Why Choose Bluetooth Technology?

Requirements for PIB Devices

  • Implementing Optional Extra Features

Choosing a Wireless Technology for the PIB Device

Considering the Cost of the PIB

Exploring the Safety and Security Concerns of a Personal Information Base

  • Enabling Data Duplication
  • Ensuring Data Integrity
  • Providing Security
  • Meeting Medical Requirements

Using Bluetooth Protocols to Implement a PIB

Understanding the Bluetooth Specification Hierarchy

Initializing the PIB

  • Understanding User Interactions

Sending and Receiving Information

  • Selecting a Device
  • Using the Service Discovery Application Profile
  • Using the Serial Port Profile
  • Using the Generic Object Exchange Profile
  • Using the Object Push Profile
  • Using the File Transfer Profile

Considering the User's View

Identifying the System's Users

Identifying System Use Cases

Identifying Barriers to Adoption

Managing Personal Information Base Performance


Solutions Fast Track

Frequently Asked Questions

Appendix: Bluetooth Application Developer's Guide Fast Track



Paperback; 556 pages

This product was added to our catalog on Thursday 13 January, 2005.


Customers who bought this product also purchased
USB 2.0 Cable, 6ft., A-Male / B-MaleUSB 2.0 Cable, 6ft., A-Male / B-MaleUS$6.00

USB Complete: The Developer's Guide, 4th EditionUSB Complete: The Developer's Guide, 4th EditionUS$54.95

Power Supply 3-12V DC, US/UK/Euro/AU Plugs, 100-240VACPower Supply 3-12V DC, US/UK/Euro/AU Plugs, 100-240VACUS$13.00

NXP LPC2378 (ARM) Development Board, RS232NXP LPC2378 (ARM) Development Board, RS232US$112.33

Bluetooth 1.1: Connect Without Cables, 2nd Ed.Bluetooth 1.1: Connect Without Cables, 2nd Ed.US$53.99

Bluetooth Profiles: The Definitive GuideBluetooth Profiles: The Definitive GuideUS$59.99

Shopping Cart more
0 items
What's New? more
Flowcode 7 for PIC, AVR, Arduino, ARM - Pro 2 User
Flowcode 7 for PIC, AVR, Arduino, ARM - Pro 2 User
Specials more
USB to RS232 Adapter Cable, 10cm
USB to RS232 Adapter Cable, 10cm
Tell A Friend

Tell someone you know about this product.
Notifications more
NotificationsNotify me of updates to Bluetooth Application Developer's Guide
Reviews more
Write ReviewWrite a review on this product!
  Wednesday 21 March, 2018   List of all our Products

Copyright © 2003-2017 MicroController Pros LLC
Powered by osCommerce