Bluetooth Application Developer

Bluetooth Application Developer's Guide

"Bluetooth (enabled devices) will ship in the billions of units once it gains momentum." - Martin Reynolds, Gartner GroupBluetooth is the most exciting development in wireless computing this decade! Bluetooth enabled devices can include everything from network servers, laptop computers and PDAs, to stereos and home security systems. Most Bluetooth products to hit the market in 2001 will be PC cards for laptop computers and access points, which allow up to seven Bluetooth devices to connect to a network. Reports indicate that by the end of 2003 there will be over 2 billion Bluetooth-enabled devices.Bluetooth-enabled devices communicate with each other through embedded software applications. Bluetooth Developer's Guide to Embedded Applications will provide embedded applications developers with advanced tutorials and code listings written to the latest Bluetooth's latest specification, version 1.1. Written by Bluetooth pioneers from market leaders in Bluetooth software development, Extended Systems and Cambridge Silicon Radio, this is the first advanced level Bluetooth developer title on the market.

Paperback, 520 Pages

Published: January 2002

Imprint: Syngress

ISBN: 978-1-928994-42-8

Contents


  • Foreword

    Chapter 1 Introducing Bluetooth Applications

    Introduction

    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?

    Do You Have Time?

    Investigating Product Performance

    Evaluating Connection Times

    Quality of Service in Connections

    Delivering Voice Communications

    Investigating Interference

    Assessing Required Features

    Enabling Security

    Using Low Power Modes

    Providing Channel Quality Driven Data Rate

    Deciding How to Implement

    Choosing a System Software Architecture

    Choosing a Hardware Implementation Option

    Design Bluetooth Directly Onto the PCB

    Using a Prequalified Complete Bluetooth Module

    Considering Battery Limitations

    Summary

    Solutions Fast Track

    Frequently Asked Questions

    Chapter 2 Exploring the Foundations of Bluetooth

    Introduction

    Reviewing the Protocol Stack

    L2CAP

    RFCOMM

    OBEX

    PPP

    TCS Binary

    SDP

    Management Entities

    HCI

    Lower Layers

    Why Unconnected Devices Need to Talk

    Discovering Neighboring Devices

    Inquiring and Inquiry Scanning

    Timing

    When to Stop

    Connecting to a Device

    Paging and Page Scanning

    Timing

    Who Calls Who?

    Finding Information on Services a Device Offers

    Connecting to and Using Bluetooth Services

    Summary

    Solutions Fast Track

    Frequently Asked Questions

    Chapter 3 Power Management

    Introduction

    Using Power Management:When and Why Is It Necessary?

    Investigating Bluetooth Power Modes

    Active Mode

    Hold Mode

    Sniff Mode

    Park Mode

    Evaluating Consumption Levels

    Summary

    Solutions Fast Track

    Frequently Asked Questions

    Chapter 4 Security Management

    Introduction

    Deciding When to Secure

    Outfitting Your Security Toolbox

    Authentication

    Authorization: How and Why?

    Enabling Encryption

    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

    Role of Device Databases

    Working with Protocols and Security Interfaces

    Mode 2 Operation

    Mode 3 Operation

    Exploring Other Routes to Extra Security

    Invisibility

    Application Level Security

    Implementing Security Profiles

    Case Study

    Summary

    Solutions Fast Track

    Frequently Asked Questions

    Chapter 5 Service Discovery

    Introduction

    Introduction to Service Discovery

    Service Discovery Protocols

    Architecture of Bluetooth Service Discovery

    The Structure of Service Records

    The Service Discovery Protocol

    Discovering Services

    Short-Circuiting the Service Discovery Process

    Creating and Advertising a Service

    Discovering Specific Services

    Browsing for Services

    Service Discovery Application Profile

    Service Discovery Non-Application Profiles

    Java, C, and SDP

    Other Service Discovery Protocols

    Salutation

    Service Location Protocol

    Jini

    Universal Plug and Play (UPnP)

    The Future of SDP

    Summary

    Solutions Fast Track

    Frequently Asked Questions

    Chapter 6 Linux Bluetooth Development

    Introduction

    Assessing Linux Bluetooth Protocol Stacks

    Comparing BlueDrekar with OpenBT by Features

    Other Considerations

    Understanding the Linux Bluetooth Driver

    Learning about the Kernel Driver

    Understanding the Bluetooth Driver Interface

    Using Open Source Development Applications

    Investigating the OpenBT Applications

    Establishing a PPP Connection Using the btd Application

    Writing Your Own Minimal Application

    Connecting to a Bluetooth Device

    Initializing the Bluetooth Stack

    Finding Neighboring Devices

    Using Service Discovery

    Connecting to a Bluetooth Service

    Transferring Data

    Disconnecting

    Controlling a Bluetooth Device

    Distinguishing between Control and Data Applications

    Using ioctls to Control the Device

    Covering Basic Scenarios

    Summary

    Solutions Fast Track

    Frequently Asked Questions

    Chapter 7 Embedding Bluetooth Applications

    Introduction

    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

    Connection Manager

    Deploying Applications

    Summary

    Solutions Fast Track

    Frequently Asked Questions

    Chapter 8 Using the Palm OS for Bluetooth Applications

    Introduction

    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

    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

    Using Bluetooth Security on Palm OS

    Writing Persistent Bluetooth Services for Palm OS

    The Future of Palm OS Bluetooth Support

    Summary

    Solutions Fast Track

    Frequently Asked Questions

    Chapter 9 Designing an Audio Application

    Introduction

    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

    Summary

    Solutions Fast Track

    Frequently Asked Questions

    Chapter 10 Personal Information Base Case Study

    Introduction

    Why Choose Bluetooth Technology?

    Requirements for PIB Devices

    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

    Using Bluetooth Protocols to Implement a PIB

    Understanding the Bluetooth Specification Hierarchy

    Initializing the PIB

    Sending and Receiving Information

    Considering the User’s View

    Identifying the System’s Users

    Identifying System Use Cases

    Identifying Barriers to Adoption

    Managing Personal Information Base Performance

    Summary

    Solutions Fast Track

    Frequently Asked Questions

    Appendix: Bluetooth Application Developer’s Guide Fast Track

    Glossary

    Index


Advertisement

advert image