SlideShare a Scribd company logo
Bluetooth and Profiles
Session by,
Mr. Keshava G N
and
Mr. Shashaanka T N
Bluetooth
• What is Bluetooth
• History of Bluetooth
• Bluetooth Architecture
• Bluetooth profiles
• Pairing Process
• Bluetooth network configuration
• Security concerns
• Profiles in detail
• Bluetooth-WinCE architecture
• Host Controller
• Catalog items and Sysgen Variables
• Bluetooth vs WiFi
• Advantages and Disadvantages of Bluetooth
Why you are here !
Bluetooth
• Bluetooth is a short-range and low power cable-replacement technology originally developed for
exchanging data over short distances from fixed and mobile devices, creating personal area networks
(PANs).
• The word "Bluetooth" is taken from the 10th century Danish King Harald Blatand, he had been
influential in uniting Scandinavian tribes(Denmark, southern Sweeden and southern Norway) into a
single kingdom.
• The Bluetooth logo is a bind rune merging the Younger Futhark runes Runic letter ior.svg (Hagall) (ᚼ)
and Runic letter berkanan.svg (Bjarkan) (ᚼ), Harald's initials.
• The Bluetooth specification was first developed in 1994 by Sven Mattison and Jaap Haartsen, who were
working for Ericsson Mobile Platforms in Sweden.
• 5 companies (Ericsson, Nokia, IBM, Intel & Toshiba) joined to form the Bluetooth Special Interest Group
(SIG) in 1998(now SIG has more than 25,000 member companies).
• The IEEE standardized Bluetooth as IEEE 802.15.1, but no longer maintains the standard
• Uses the short-wavelength radio waves from 2.4 to 2.485 GHz
• It uses 79 designated Bluetooth channels(each channel has a bandwidth of 1 MHz).
• Bluetooth 4.0 uses 2 MHz spacing, which accommodates 40 channels
Bluetooth v1.0 and v1.0B:
• It had many problems and manufacturers had difficulty making their products interoperable.
• It also included mandatory Bluetooth hardware device address (BD_ADDR) transmission in the
Connecting process, which was a major setback for certain services planned for use in Bluetooth
environments.
Bluetooth v1.1:
• Ratified as IEEE Standard 802.15.1-2001
• Many errors found in the v1.0B specifications were fixed.
• Received Signal Strength Indicator (RSSI).
Bluetooth v1.2:
• Ratified as IEEE Standard 802.15.1–2005
• Improved resistance to radio frequency interference by avoiding the use of crowded frequencies in the
hopping sequence.
• Higher transmission speeds in practice, up to 721 kbit/s.
• Host Controller Interface (HCI) operation with three-wire UART.
• Introduced Flow Control and Retransmission Modes for L2CAP.
Bluetooth Version History
Bluetooth v2.0 + EDR:
• This was released in 2004,for an Enhanced Data Rate (EDR) upto 3 Mbit/s, although the practical data
transfer rate is 2.1 Mbit/s.
• EDR can provide a lower power consumption through a reduced duty cycle.
• Aside from EDR, the v2.0 specification contains other minor improvements.
Bluetooth v2.1 + EDR:
• This was adopted by the Bluetooth SIG on 26 July 2007.
• The headline feature of v2.1 is secure simple pairing (SSP).
• Version 2.1 allows various other improvements, including "Extended inquiry response" (EIR), which
provides more information during the inquiry procedure to allow better filtering of devices before
connection; and sniff subrating, which reduces the power consumption in low-power mode.
Bluetooth v3.0 + HS:
• This was adopted by the Bluetooth SIG on 21 April 2009.
• Bluetooth v3.0 + HS provides theoretical data transfer speeds of up to 24 Mbit/s, though not over the
Bluetooth link itself. Instead, the Bluetooth link is used for negotiation and establishment, and the high
data rate traffic is carried over a colocated 802.11 link.
• The main new feature is AMP (Alternative MAC/PHY), the addition of 802.11 as a high speed transport.
Bluetooth Version History
Bluetooth v4.0:
• This version 4.0 (called Bluetooth Smart) has been adopted on 30 June 2010.
• It includes Classic Bluetooth, Bluetooth high speed and Bluetooth low energy protocols. It provides
more security in data transmission than the earlier version.
Bluetooth v4.1:
• The Bluetooth SIG announced formal adoption of the Bluetooth v4.1 specification on 4 December 2013.
• This specification is an incremental software update to Bluetooth Specification v4.0, and not a hardware
update.
• These include increased co-existence support for LTE, bulk data exchange rates.
Bluetooth v4.2:
• Bluetooth v4.2 was released on December 2, 2014.
• It Introduces some key features for IoT. Some features, such as Data Length Extension, require a
hardware update.
Bluetooth Version History
Bluetooth core system architecture
Bluetooth Architecture
Generic Access Profile(GAP)
• The Generic Access Profile (GAP) block represents the base functionality common to all Bluetooth
devices such as modes and access procedures used by the transports, protocols and application
profiles.
• GAP services include device discovery, connection modes, security, authentication, association models
and service discovery.
Security Manager Protocol(SMP)
• The Security Manager Protocol (SMP) is the peer-to-peer protocol used to generate encryption keys
and identity keys.
• This block is only used in LE systems.
• Similar functionality in the BR/EDR system is contained in the Link Manager block in the Controller.
• The protocol operates over a dedicated fixed L2CAP channel.
• The SMP block also manages storage of the encryption keys and identity keys and is responsible for
generating random addresses.
Attribute Protocol(ATT)
• The Attribute Protocol (ATT) block implements the peer-to-peer protocol between an attribute server
and an attribute client.
• The ATT client communicates with an ATT server on a remote device over a dedicated fixed L2CAP
channel.
Bluetooth Architecture
Service Discovery Protocol(SDP)
• The Service Discovery Protocol allows a device to discover services offered by other devices, and their
associated parameters.
• Each service is identified by a Universally Unique Identifier (UUID), with official services (Bluetooth
profiles) assigned a short form UUID (16 bits rather than the full 128).
Advanced Media Protocol(AMP)
• The AMP manager is a layer that uses L2CAP to communicate with a peer AMP Manager on a remote
device.
• It is responsible for discovering remote AMP(s), determining their availability and information.
• This information is used to set up and manage AMP physical links.
• The AMP manager uses a dedicated L2CAP signaling channel to communicate with remote AMP
manager(s).
Radio Frequency Communication(RFCOMM)
• The Bluetooth protocol RFCOMM is a simple set of transport protocols, made on top of the L2CAP
protocol.
• RFCOMM is sometimes called serial port emulation.
• Enforces the security policy for dial-up networking and other services relying on a serial port.
Bluetooth Architecture
Logical Link Control and Adaptation Protocol(L2CAP)
• Manages the creation and termination of virtual connections called channels with other devices.
• Negotiates and dictates security parameters for channel establishment.
• The Logical Link Control and Adaptation Protocol used to multiplex multiple logical connections
between two devices. Provides segmentation and reassembly of on-air packets.
• In Retransmission and Flow Control modes, L2CAP can be configured either for isochronous data or
reliable data per channel by performing retransmissions and CRC checks.
• There are two modes which effectively deprecate original Retransmission and Flow Control modes:
• Enhanced Retransmission Mode (ERTM): This mode is an improved version of the original
retransmission mode. This mode provides a reliable L2CAP channel.
• Streaming Mode (SM): This is a very simple mode, with no retransmission or flow control. This mode
provides an unreliable L2CAP channel.
Adopted Protocols:
Adopted protocols are defined by other standards-making organizations and incorporated into
Bluetooth’s protocol stack, allowing Bluetooth to code protocols only when necessary.
Point-to-Point Protocol (PPP): Internet standard protocol for transporting IP datagrams over a point-to-
point link.
TCP/IP/UDP: Foundation Protocols for TCP/IP protocol suite.
Object Exchange Protocol (OBEX): Session-layer protocol for the exchange of objects, providing a
model for object and operation representation.
Wireless Application Environment/Wireless Application Protocol (WAE/WAP): WAE specifies an
application framework for wireless devices and WAP is an open standard to provide mobile users access
to telephony and information services.
Bluetooth Architecture
Advanced Audio Distribution Profile (A2DP):
This profile defines how multimedia audio can be streamed from one device to another over a
Bluetooth connection
Audio/Video Remote Control Profile (AVRCP):
This profile is designed to provide a standard interface to control TVs, all of the A/V equipments to
allow a single remote control
Basic Imaging Profile (BIP):
This profile is designed for sending images between devices and includes the ability to resize, and
convert images to make them suitable for the receiving device.
Basic Printing Profile (BPP):
This allows devices to send text, e-mails, vCards, or other items to printers based on print jobs.
Cordless Telephony Profile (CTP):
This is designed for cordless phones to work using Bluetooth.
Device ID Profile (DIP):
It provides identification of the manufacturer, product id, product version, and the version of the
Device
Dial-up Networking Profile (DUN):
This profile provides a standard to access the Internet and other dial-up services over Bluetooth.
Fax Profile (FAX):
This profile is intended to provide a well-defined interface between a mobile phone or fixed-line
phone and a PC with Fax software installed.
File Transfer Profile (FTP):
Provides the capability to browse, manipulate and transfer objects (files and folders) in an object
store (file system) of another system.
Bluetooth Profiles
Generic Audio/Video Distribution Profile (GAVDP):
GAVDP provides the basis for A2DP and VDP, the basis of the systems designed for distributing
video and audio streams using Bluetooth technology.
Generic Access Profile (GAP):
Provides the basis for all other profiles. GAP defines how two Bluetooth units discover and establish
a connection with each other.
Health Device Profile (HDP):
Health Thermometer profile (HTP) and Heart Rate Profile (HRP) fall under this category as well.
Hands-Free Profile (HFP):
This allow car hands-free kits to communicate with mobile phones in the car. It commonly uses
Synchronous Connection Oriented link (SCO).
Human Interface Device Profile (HID):
Provides support for devices such as mice, joysticks, keyboards, as well as sometimes providing
support for simple buttons and indicators on other types of devices.
Headset Profile (HSP):
This is the most commonly used profile, providing support for the popular Bluetooth headsets to be
used with mobile phones.
LAN Access Profile (LAP):
LAN Access profile makes it possible for a Bluetooth device to access LAN, WAN or Internet via
another device that has a physical connection to the network.
Message Access Profile (MAP):
Message Access Profile (MAP) specification allows exchange of messages between devices.
Bluetooth Profiles
Object Push Profile (OPP):
A basic profile for sending "objects" such as pictures, virtual business cards, or appointment details.
It is called push because the transfers are always instigated by the sender (client), not the receiver
(server).
Personal Area Networking Profile (PAN):
This profile is intended to allow the use of Bluetooth Network Encapsulation Protocol on Layer 3
protocols for transport over a Bluetooth link.
Phone Book Access Profile (PBAP, PBA):
Phone Book Access (PBA) or Phone Book Access Profile (PBAP) is a profile that allows exchange
of Phone Book Objects between devices.
Serial Port Profile(SPP):
This profile emulates a serial cable to provide a simple substitute for existing RS-232, including the
familiar control signals.
Bluetooth Profiles
During pairing, the two devices establish a relationship by creating a shared secret known as
a link key. If both devices store the same link key, they are said to be paired or bonded.
Pairing Process
Legacy pairing:
This is available in Bluetooth v2.0 and before. Each device must enter a PIN code;
pairing is only successful if both devices enter the same PIN code. Any 16-byte
UTF-8 string may be used as a PIN code; however, not all devices may be capable
of entering all possible PIN codes.
Secure Simple Pairing (SSP):
This is required by Bluetooth v2.1, although a Bluetooth v2.1 device may only use
legacy pairing to interoperate with a v2.0 or earlier device. Secure Simple Pairing
uses a form of public key cryptography, and some types can help protect against
man in the middle, or MITM attacks.
Pairing Process
Piconets:
• Two or more Bluetooth units sharing the same channel.
• One device acts as a master and the devices connected to it act as slaves.
• Slaves can not directly send data to each other.
• In effect, the master acts as a switch for the piconet and all traffic must pass through the master.
• There can be up to 7 active slaves in a piconet but only one master.
Scatternets:
• A set of two or more interconnected piconets form scatternets
• A Bluetooth unit can be a slave in two or more piconets, but it can be a master in only one.
• Bluetooth units can only transmit and receive data in one piconet at a time.
• Piconets may be identified by the master's identity and clock.
Bluetooth Network Configuration
Bluejacking is the sending of unsolicited messages over Bluetooth to Bluetooth-enabled
devices such as mobile phones, PDAs or laptop computers, sending a vCard which typically
contains a message in the name field to another Bluetooth-enabled device via the OBEX
protocol.
Bluesnarfing is the unauthorized access of information from a wireless device through a
Bluetooth connection.This allows access to a calendar, contact list, emails and text
messages, and on some phones, users can copy pictures and private videos. While
Bluejacking is essentially harmless as it only transmits data to the target device, Bluesnarfing
is the theft of information from the target device.
Bluebugging is a form of Bluetooth attack often caused by a lack of awareness,it allows
hackers to remotely access a user's phone and use its features, including placing calls and
sending text messages, and the user doesn't realize it's happening.
Security Concerns
1. Generic Access Profile (GAP)
Defines the generic requirements for detecting and establishing a connection to a
Bluetooth device. All other profiles are based on GAP.
2. Object Exchange Profile (OBEX)
Defines procedures for the support of the Object Exchange Protocol (OBEX) usage
models.
3. Serial Port Profile (SPP)
Defines procedures required for configuring serial cable connections between peer
Bluetooth devices using RFCOMM.
4. Other profiles:
Dial-up Networking (DUN) Profile, File Transfer Profile (FTP), Hands-Free Profile
(HFP), Headset Profile (HSP), Human Interface Device (HID) Profile, LAN Access
Profile (LAP), Object Push Profile (OPP), Personal Area Networking (PAN) Profile.
Bluetooth Profiles
The Generic Access Profile provides a basic level of functionality that all
Bluetooth devices must implement. It ensures that all Bluetooth devices should
be capable of making baseband connections regardless of what higher-level
functionality they support. The Generic Access Profile defines the following:
1. Generic procedures for discovering Bluetooth devices
2. Link-management aspects of connecting to Bluetooth devices
3. Procedures related to security levels
4. Common formats for user interface-level parameters (naming conventions)
The Service Discovery Application Profile rests directly on the Generic Access
Profile. It defines how an application should use the Bluetooth Service Discovery
Protocol (SDP), to find the capabilities of other devices in its neighborhood.
1. Generic Access Profile (GAP)
Obex is used to transfer an object from one device to another.
A scenario would be using Bluetooth technology to send information like files,
vCards, vCalendars and images between your mobile phone or PDA and a
PC.
Few examples of the types of devices that you might find using the OBEX:

Laptop

PC

Mobile phone
Server and a Client:
Server – This is the device that provides an object exchange server to and from
which data objects can be pushed and pulled, respectively.
Client – This is the device that can push or/and pull data object(s) to and from
the Server.
2. Object Exchange Profile (OBEX)
SPP defines how to set up virtual serial ports and connect two Bluetooth
enabled devices.
A scenario would be using two devices, such as PCs or laptops, as virtual serial
ports and then connecting the two devices via Bluetooth technology.
Types of devices that might be using the SPP:
PC
Laptop
The SPP defines two roles, Device A and Device B.
Device A – This is the device that takes initiative to form a connection to another
device (initiator).
Device B – This is the device that waits for another device to take initiative to
connect (acceptor).
3. Serial Port Profile (SPP)
FTP defines how folders and files on a server device can be browsed by a client
device.
Once a file or location is found by the client, a file can be pulled from the server to
the client, or pushed from the client to the server using OBEX.
A typical scenario would be transferring files wirelessly between two PCs or
laptops, or browsing and retrieving files on a server.
Types of devices that might be using the FTP:
PC/Laptop
Mobile
The FTP defines two roles, that of a Client and a Server:
Client – The Client device initiates the operation, which pushes and pulls objects
to and from the Server.
Server – The Server device is the target remote Bluetooth device that provides an
object exchange server and folder browsing capability using the OBEX Folder
Listing format.
4. File transfer Profile (FTP)
HFP describes how a gateway device can be used to place and receive calls for a
hand-free device.
A common scenario would be a car kit in your vehicle. The car kit would connect to
your mobile phone and be used to place and receive calls. Even more common
would be the use of your wireless headset to place and receive calls when
connected to a mobile phone.
Types of devices that might be using the HFP:
Car Kit, GPS system
Headset, Mobile
The HFP defines two roles,
that of an Audio Gateway (AG) and a Hands-Free unit (HF):
Audio Gateway (AG) – This is the device that is the gateway of the audio, both for
input and output, typically a mobile phone.
Hands-Free Unit (HF) – This is the device acting as the Audio Gateway's remote
audio input and output mechanism. It also provides some remote control means.
5. Hands-Free Profile (HFP)
The HSP describes how a Bluetooth enabled headset should communicate with
a computer or other Bluetooth enabled device such as a mobile phone.
The typical usage scenario is, of course, using a wireless headset to connect
with your mobile phone.
Types of devices that might be using the HSP:
Headset
Mobile
The HSP defines two roles, that of an Audio Gateway (AG) and a Headset (HS):
Audio Gateway (AG) – This is the device that is the gateway of the audio, both
for input and output, typically a mobile phone or PC.
Headset (HS) – This is the device acting as the Audio Gateway's remote audio
input and output mechanism.
6. Headset Profile (HSP)
The HID profile defines the protocols, procedures and features to be used by
Bluetooth HID such as keyboards, pointing devices, gaming devices and remote
monitoring devices.
The most common usage would be your wireless desktop, keyboard, mouse,
etc.
Types of devices that might be using the HID:
PC/Laptop
Keyboard
Mouse
The HID defines two roles, that of a Human Interface Device (HID) and a Host:
Human Interface Device (HID) – The device providing the service of human data
input and output to and from the host.
Host – The device using or requesting the services of a Human Interface
Device.
7. Human Interface Device Profile (HID)
OPP defines the roles of push server and push client. These roles are
analogous to and must interoperate with the server and client device roles that
GOEP defines.
An example scenario would be the exchange of a contact or appointment
between two mobile phones, or a mobile phone and a PC.
Types of devices that might be using the OPP:
PC/Laptop
Mobile
The OPP defines two roles, that of a Push Server and a Push Client:
Push Server – This is the device that provides an object exchange server.
Push Client – This is the device that pushes and pulls objects to and from the
Push Server.
8. Object Push Profile (OPP)
PAN describes how two or more Bluetooth
enabled devices can form an ad-hoc network
and how the same mechanism can be used to
access a remote network through a network
access point.
9. Personal Area Networking Profile (PAN)
DUN provides a standard to access the Internet and other dial-up services over
Bluetooth technology.
The most common scenario is accessing the Internet from a laptop by using
your mobile phone as a wireless dial-up modem.
Types of devices that might be using the DUN:
PC/Laptop/Mobile
The DUN defines two roles, that of a Gateway (GW) and a Data Terminal (DT):
Gateway (GW) – This is the device that provides access to the public network.
Data Terminal (DT) – This is the device that uses the dial-up services of the
gateway.
10. Dial-Up Network Profile (DUN)
Bluetooth architecture in Windows
CE
WinCE Bluetooth Host:
Includes implementations of the core Bluetooth protocols: the Bluetooth stack
and the high-level layers of the Bluetooth architecture, such as APIs and
profiles.
L2CAP:
The Bluetooth logical link control and adaptation protocol (L2CAP) supports
higher-level protocol multiplexing, packet segmentation and reassembly,
and the conveying of quality of service information.
WinCE Registry key :
HKEY_LOCAL_MACHINESoftwareMicrosoftBluetoothl2cap can be
configured for Response Timout eXpired (RTX) timer value, default link
policy, default packet type on the L2CAP connection etc
SDP:
Service discovery protocol allows the devices to discover what services
each other support, and what parameters to use to connect to them.
Each service is identified by a Universally Unique Identifier (UUID), with
official services (Bluetooth profiles) assigned a short form UUID
Bluetooth architecture in Windows
CE
OBEX:
Object exchange (OBEX) is a communications protocol that facilitates the
exchange of binary objects between devices.
OBEX is used for many profiles that require simple data exchange (e.g.,
object push, file transfer, basic imaging, basic printing, phonebook
access, etc.)
RFCOMM:
The Bluetooth protocol RFCOMM is a simple set of transport protocols,
made on top of the L2CAP protocol, providing emulated RS-232 serial
ports.
RFCOMM is sometimes called serial port emulation. The Bluetooth serial
port profile is based on this protocol.
BNEP:
BNEP is used for delivering network packets on top of L2CAP. This protocol
is used by the personal area networking (PAN) profile.
PAN:
PAN describes how two or more Bluetooth enabled devices can form an ad-
hoc network and how the same mechanism can be used to access a
remote network through a network access point.
Bluetooth architecture in Windows
CE
The HCI provides a command interface to the
baseband controller and link manager, and
access to configuration parameters. This
interface provides a uniform method of
accessing the Bluetooth baseband
capabilities.
Using HCI, a BT application can access BT
Hardware without knowledge of the transport
layer or other hardware implementation
details.
In systems where the higher layers are run
on a host device’s processor and lower
layers on a BT device, an interface is
needed between the higher and lower
layers.
The BT standard defines the HCI.
Host Controller Interface (HCI) Architecture
The BT standard for the host controller interface defines the following:
1. Command packets used by the host to control the module
2. Event packets used by the module to inform the host of changes in the lower
layers
3. Data packets to pass voice and data between host and module
HCI Packet Types
The host to control the Bluetooth module and to monitor its status uses HCI
commands. Commands are transferred using HCI command packets
If a command can complete immediately, an HCI_Command_Complete is
returned to indicate that the command has been dealt with.
If a command cannot complete immediately, an HCI_Command_Status event is
returned immediately, and another event is returned later when the command
has completed.
HCI Command packets
The Opcode parameter
is divided into two
fields, called the
OpCode Group Field
(OGF) and OpCode
Command Field (OCF).
The OGF occupies the
upper 6 bits of the
Opcode, while the OCF
occupies the remaining
10 bits.
HCI Command packets
HCI ACL Data Packets
HCI ACL Data Packets are used to exchange data between the Host and Controller.
HCI Synchronous Data Packets
HCI synchronous (SCO and eSCO) Data Packets are used to exchange
synchronous data between the Host and Controller.
HCI Data packets
The HCI Event Packet is used by the Controller to notify the Host when
events occur. The Host must be able to accept HCI Event Packets with up to
255 octets of data excluding the HCI Event Packet header.
HCI Event Packets
HCI Commands - Example
WEC7 Initialization sequence
The first command that is sent from stack to HCI transport layer is 0x0C03
(Reset).
OGF OCF Op-code
It will be followed by following sequence of commands
HCI Command : Read buffer size (0x1005)
HCI Event : Command Status (0x0E)
HCI Command : Read BD address (0x1009)
HCI Event : Command Status (0x0E)
HCI Command : Write local name (0x0C13)
HCI Event : Command Status (0x0E)
HCI Command : Write scan enable (0x0C1A)
HCI Event : Command Status (0x0E)
HCI Command : Write class of device (0x0C24)
HCI Event : Command Status (0x0E)
HCI Command : Read Local Version Information (0x1001)
HCI Event : Command Status (0x0E)
HCI Command : Read Local Supported Commands (0x1003)
HCI Event : Command Status (0x0E)
...
...
HCI Commands - Example
Scanning sequence
HCI Command : Inquiry (0x0401)
HCI Event : Command Status (0x0F)
HCI Event : Inquiry Result (0x02) or Extended Inquiry Result(0x2F)
and/or Inquiry Result with RSSI (0x22)
HCI Event : Inquiry Complete (0x01)
HCI Command : Remote Name Request (0x0419)
HCI Event : Command Status (0x0F)
HCI Event : Remote Name Request Complete (0x07)
HCI Commands - Example
Pairing / Connection sequence
HCI Command : Create Connection (0x0405)
HCI Event : Command Status (0x0F)
HCI Event : Connection Complete (0x03)
HCI Command : Read Clock Offset (0x041F)
HCI Event : Max Slots Change (0x1B)
HCI Event : Read Clock Offset Complete (0x1C)
HCI Command : Write Link Policy Settings (0x080D)
HCI Event : Command Status (0x0F)
HCI Command : Read Remote Extended Features (0x041C)
HCI Event : Command Status (0x0F)
HCI Event : Read Remote Extended Features Complete (0x07)
HCI Command : Authentication Requested (0x0411)
HCI Event : Command Complete (0x0E)
HCI Event : IO Capability Request (0x31)
HCI Command : IO Capability Request Reply (0x042B)
HCI Event : Command Complete (0x0E)
HCI Event : IO Capability Response (0x32)
...
Will be followed by ACL/SCO data packets...
HCI Commands - Example
This is the only layer in WEC7 which can be modified.
WEC7 provides the HCI transport layer driver for generic bluetooth devices,
(CSR BT dongle) though USB and UART.
For SDIO interface, the driver needs to be ported from WinCE6.0 to WEC7.
For non-generic modules such as Redpine 9113 BT module, HCI transport
layer should be modified according to the module datasheet/Linux driver.
HCI Transport layer driver in WEC7
[HKEY_LOCAL_MACHINESoftwareMicrosoftBluetoothTransportsPnP{<GUID>}]
"flags"=dword:80000000
"driver"="bthusb.dll"
"resetdelay"=dword:0
"PacketSize"=dword:200
"BlockSize"=dword:5
[HKEY_LOCAL_MACHINESoftwareMicrosoftBluetoothsys]
"Power"=dword:1 ; Radio on by default
"ScanMode"=dword:3 ; Radio is discoverable
"DisableAutoSuspend"=dword:1 ; Allow suspend when connected
[HKEY_LOCAL_MACHINEDriversUSBLoadClients5656_37139DefaultDefaultBluetooth_USB_Driver]
"DLL"="bthusb.dll"
[HKEY_LOCAL_MACHINEDriversSDCARDClientDriversCustomMANF-041B-CARDID-9330-FUNC-1]
"Dll"="bthsdio.dll"
HCI Transport layer driver - Registry
Bluetooth Stack with Universal Loadable Driver SYSGEN_BTH
Bluetooth Settings SYSGEN_BTH_SETTINGS
Bluetooth HID – Keyboard SYSGEN_BTH_HID_KEYBOARD
Bluetooth HID – Mouse SYSGEN_BTH_HID_MOUSE
Bluetooth HS/HF and Audio Gateway Service SYSGEN_BTH_AG
Bluetooth PAN SYSGEN_BTH_PAN
Bluetooth Profile Management APIs SYSGEN_BTH_BTHUTIL
Bluetooth services SYSGEN_BTH_BTHSSVC
OBEX Client SYSGEN_OBEX_CLIENT
OBEX Server SYSGEN_OBEX_SERVER
OBEX File Browser SYSGEN_OBEX_FILEBROWSER
OBEX Inbox SYSGEN_OBEX_INBOX
Bluetooth utilities SYSGEN_BTH_UTILS
Bluetooth audio SYSGEN_BTH_AUDIO
Bluetooth modem SYSGEN_BTH_MODEM
WEC7 Catalog items and SYSGEN variables
•Bluetooth works at 2.4GHz frequency while Wi-Fi based networks work at 2.4, 3.6 and 5 GHz .
•Wi-Fi is intended as a replacement for high speed cabling for general local area network access in work
areas(wireless local area networks (WLAN)).
•Bluetooth was intended for portable equipment and its applications(wireless personal area network
(WPAN)).
•Wi-Fi is usually access point-centered, with an asymmetrical client-server connection with all traffic
routed through the access point, while Bluetooth is usually symmetrical, between two Bluetooth devices.
•Wi-Fi Direct was recently developed to add a more Bluetooth-like ad-hoc functionality to Wi-Fi.
Bluetooth vs. Wi-Fi:
The Advantages of Bluetooth:
• Widely Used: Companies are taking the benefit by using this in their new and future products to make
life much easier for everyone.
• Feature Simplicity: You do not need to know much about technology in order to run Bluetooth. Anyone
that doesn't have no knowledge about the new technology can still be able to use the Bluetooth feature
due to its simplicity and the ease of use.
• Go Wireless!: It allows you to stay cord free and do not have to worry about finding the correct place to
connect that extra long cord.
The Disadvantages of Bluetooth:
• Though the transfer speeds are impressive at around 25 Mbps, certain other technologies like Wi-Fi
Direct can offer speeds up to 250 Mbps.
• Even though the security is good, it is even better on Wi-Fi Direct.
• The battery usage during a single transfer is negligible, but if the device is switched on for long, it will
drain the battery.
• Shorter range when compared to WiFi
Advantages and Disadvantages
Bluetooth and profiles on WEC7

More Related Content

What's hot

bluetooth technology
 bluetooth technology bluetooth technology
bluetooth technology
deepak kumar
 
Bluetooth
BluetoothBluetooth
Bluetooth
Anamika Garg
 
Bluetooth Technology By Volkan Sevindik
Bluetooth Technology By Volkan SevindikBluetooth Technology By Volkan Sevindik
Bluetooth Technology By Volkan Sevindik
vsevindik
 
Bluetooth
BluetoothBluetooth
Bluetooth
Fahim Faysal
 
Bluetooth
BluetoothBluetooth
Bluetooth
Priyanka Anni
 
An Introduction to BLUETOOTH TECHNOLOGY
An Introduction to BLUETOOTH TECHNOLOGYAn Introduction to BLUETOOTH TECHNOLOGY
An Introduction to BLUETOOTH TECHNOLOGY
Vikas Jagtap
 
Bluetooth.ppt
Bluetooth.pptBluetooth.ppt
Bluetooth.ppt
Hina Saxena
 
Protocols in Bluetooth
Protocols in BluetoothProtocols in Bluetooth
Protocols in BluetoothSonali Parab
 
Blue Tooth Technoloty
Blue Tooth TechnolotyBlue Tooth Technoloty
Blue Tooth Technoloty
RICMS, Berhampur Orissa
 
Bluetooth Technology and its uses by Prince Rohan
Bluetooth Technology and its uses by Prince RohanBluetooth Technology and its uses by Prince Rohan
Bluetooth Technology and its uses by Prince Rohan
Rohan Das
 
Bluetooth Technology
Bluetooth TechnologyBluetooth Technology
Bluetooth Technology
dima gurov
 
Bluetooth
BluetoothBluetooth
Bluetooth
Samraiz Tejani
 
Bluetooth, RFID and WiMAX Technologies
Bluetooth, RFID and WiMAX TechnologiesBluetooth, RFID and WiMAX Technologies
Bluetooth, RFID and WiMAX Technologies
Mukesh Chinta
 
Bluetooth
BluetoothBluetooth
Bluetooth
Raju Kunde
 
Bluetooth Technology
Bluetooth TechnologyBluetooth Technology
Bluetooth TechnologyManish Sharma
 
Bluetooth
BluetoothBluetooth
Bluetooth
mpriyanka259
 

What's hot (20)

bluetooth technology
 bluetooth technology bluetooth technology
bluetooth technology
 
Bluetooth
BluetoothBluetooth
Bluetooth
 
Bluetooth Technology By Volkan Sevindik
Bluetooth Technology By Volkan SevindikBluetooth Technology By Volkan Sevindik
Bluetooth Technology By Volkan Sevindik
 
Bluetooth
BluetoothBluetooth
Bluetooth
 
Bluetooth
BluetoothBluetooth
Bluetooth
 
An Introduction to BLUETOOTH TECHNOLOGY
An Introduction to BLUETOOTH TECHNOLOGYAn Introduction to BLUETOOTH TECHNOLOGY
An Introduction to BLUETOOTH TECHNOLOGY
 
Bluetooth.ppt
Bluetooth.pptBluetooth.ppt
Bluetooth.ppt
 
Protocols in Bluetooth
Protocols in BluetoothProtocols in Bluetooth
Protocols in Bluetooth
 
Bluetooth - Overview
Bluetooth - OverviewBluetooth - Overview
Bluetooth - Overview
 
Bluetooth
BluetoothBluetooth
Bluetooth
 
Bluetooth presentation
Bluetooth presentationBluetooth presentation
Bluetooth presentation
 
Blue Tooth Technoloty
Blue Tooth TechnolotyBlue Tooth Technoloty
Blue Tooth Technoloty
 
Bluetooth Technology and its uses by Prince Rohan
Bluetooth Technology and its uses by Prince RohanBluetooth Technology and its uses by Prince Rohan
Bluetooth Technology and its uses by Prince Rohan
 
Bluetooth
BluetoothBluetooth
Bluetooth
 
Bluetooth Technology
Bluetooth TechnologyBluetooth Technology
Bluetooth Technology
 
Bluetooth
BluetoothBluetooth
Bluetooth
 
Bluetooth, RFID and WiMAX Technologies
Bluetooth, RFID and WiMAX TechnologiesBluetooth, RFID and WiMAX Technologies
Bluetooth, RFID and WiMAX Technologies
 
Bluetooth
BluetoothBluetooth
Bluetooth
 
Bluetooth Technology
Bluetooth TechnologyBluetooth Technology
Bluetooth Technology
 
Bluetooth
BluetoothBluetooth
Bluetooth
 

Viewers also liked

Carwhisperer Bluetooth Attack
Carwhisperer Bluetooth AttackCarwhisperer Bluetooth Attack
Carwhisperer Bluetooth Attack
n|u - The Open Security Community
 
Bluetooth- A wireless technology
Bluetooth- A wireless technologyBluetooth- A wireless technology
Bluetooth- A wireless technology
Neha Jella
 
Hijacking bluetooth headsets
Hijacking bluetooth headsetsHijacking bluetooth headsets
Hijacking bluetooth headsets
n|u - The Open Security Community
 
About BLE server profile
About BLE server profile About BLE server profile
About BLE server profile
Lin Steven
 
Ble overview and_implementation
Ble overview and_implementationBle overview and_implementation
Ble overview and_implementation
Stanley Chang
 
Attacking and Crashing IoT Devices via Bluetooth LE protocol
Attacking and Crashing IoT Devices via Bluetooth LE protocolAttacking and Crashing IoT Devices via Bluetooth LE protocol
Attacking and Crashing IoT Devices via Bluetooth LE protocol
Cysinfo Cyber Security Community
 
Bluetooth Secure Simple Pairing Using NFC Part 1
Bluetooth Secure Simple Pairing Using NFC Part 1 Bluetooth Secure Simple Pairing Using NFC Part 1
Bluetooth Secure Simple Pairing Using NFC Part 1
NFC Forum
 
PCIe and PCIe driver in WEC7 (Windows Embedded compact 7)
PCIe and PCIe driver in WEC7 (Windows Embedded compact 7)PCIe and PCIe driver in WEC7 (Windows Embedded compact 7)
PCIe and PCIe driver in WEC7 (Windows Embedded compact 7)
gnkeshava
 
Bluetooth Low Energy - A Case Study
Bluetooth Low Energy - A Case StudyBluetooth Low Energy - A Case Study
Bluetooth Low Energy - A Case Study
FReeze FRancis
 
Bluejacking
BluejackingBluejacking
Bluejacking
Jyoti Chintadi
 
bluejacking.ppt
bluejacking.pptbluejacking.ppt
bluejacking.pptAeman Khan
 
Bluetooth Secure Simple Pairing Using NFC Part 2
Bluetooth Secure Simple Pairing Using NFC Part 2Bluetooth Secure Simple Pairing Using NFC Part 2
Bluetooth Secure Simple Pairing Using NFC Part 2
NFC Forum
 
Bluetooth technology presentation
Bluetooth technology presentationBluetooth technology presentation
Bluetooth technology presentation
Krishna Kumari
 

Viewers also liked (13)

Carwhisperer Bluetooth Attack
Carwhisperer Bluetooth AttackCarwhisperer Bluetooth Attack
Carwhisperer Bluetooth Attack
 
Bluetooth- A wireless technology
Bluetooth- A wireless technologyBluetooth- A wireless technology
Bluetooth- A wireless technology
 
Hijacking bluetooth headsets
Hijacking bluetooth headsetsHijacking bluetooth headsets
Hijacking bluetooth headsets
 
About BLE server profile
About BLE server profile About BLE server profile
About BLE server profile
 
Ble overview and_implementation
Ble overview and_implementationBle overview and_implementation
Ble overview and_implementation
 
Attacking and Crashing IoT Devices via Bluetooth LE protocol
Attacking and Crashing IoT Devices via Bluetooth LE protocolAttacking and Crashing IoT Devices via Bluetooth LE protocol
Attacking and Crashing IoT Devices via Bluetooth LE protocol
 
Bluetooth Secure Simple Pairing Using NFC Part 1
Bluetooth Secure Simple Pairing Using NFC Part 1 Bluetooth Secure Simple Pairing Using NFC Part 1
Bluetooth Secure Simple Pairing Using NFC Part 1
 
PCIe and PCIe driver in WEC7 (Windows Embedded compact 7)
PCIe and PCIe driver in WEC7 (Windows Embedded compact 7)PCIe and PCIe driver in WEC7 (Windows Embedded compact 7)
PCIe and PCIe driver in WEC7 (Windows Embedded compact 7)
 
Bluetooth Low Energy - A Case Study
Bluetooth Low Energy - A Case StudyBluetooth Low Energy - A Case Study
Bluetooth Low Energy - A Case Study
 
Bluejacking
BluejackingBluejacking
Bluejacking
 
bluejacking.ppt
bluejacking.pptbluejacking.ppt
bluejacking.ppt
 
Bluetooth Secure Simple Pairing Using NFC Part 2
Bluetooth Secure Simple Pairing Using NFC Part 2Bluetooth Secure Simple Pairing Using NFC Part 2
Bluetooth Secure Simple Pairing Using NFC Part 2
 
Bluetooth technology presentation
Bluetooth technology presentationBluetooth technology presentation
Bluetooth technology presentation
 

Similar to Bluetooth and profiles on WEC7

Data Communication and Network World of Bluetooth
Data Communication and Network World of BluetoothData Communication and Network World of Bluetooth
Data Communication and Network World of Bluetooth
Chandrakant Divate
 
Bluetooth.pptx
Bluetooth.pptxBluetooth.pptx
Bluetooth.pptx
georgejustymirobi1
 
Overview of Bluetooth technology
Overview of Bluetooth technologyOverview of Bluetooth technology
Overview of Bluetooth technology
Suman Bhattacharyya
 
Wireless & Mobile Lecture # 20
Wireless & Mobile Lecture # 20Wireless & Mobile Lecture # 20
Wireless & Mobile Lecture # 20Bit Hacker
 
Bluethooth Protocol stack/layers
Bluethooth Protocol stack/layersBluethooth Protocol stack/layers
Bluethooth Protocol stack/layers
Jay Nagar
 
Introduction to bluetooth
Introduction to bluetoothIntroduction to bluetooth
Introduction to bluetooth
vish0110
 
Bluetooth
BluetoothBluetooth
Bluetooth
Kashyap Shah
 
Protols used in bluetooth
Protols used in bluetoothProtols used in bluetooth
Protols used in bluetooth
Sonali Parab
 
R K 2 Bluetooth Technologies
R K 2  Bluetooth  TechnologiesR K 2  Bluetooth  Technologies
R K 2 Bluetooth TechnologiesSaurav Kumar
 
Bluetooth Intro
Bluetooth IntroBluetooth Intro
Bluetooth Introamit_monty
 
MC Module 4.docx
MC Module 4.docxMC Module 4.docx
MC Module 4.docx
Aneesh782511
 
Bluetooth Details.ppt
Bluetooth Details.pptBluetooth Details.ppt
Bluetooth Details.ppt
Vignesh kumar
 
Bluetooth Technology -- detailed explanation
Bluetooth Technology -- detailed explanation Bluetooth Technology -- detailed explanation
Bluetooth Technology -- detailed explanation Siva Pradeep Bolisetti
 
Unit 2 bluetooth-iot_complete notes
Unit 2 bluetooth-iot_complete notesUnit 2 bluetooth-iot_complete notes
Unit 2 bluetooth-iot_complete notes
tathagatanaha3
 
Bluetooth
BluetoothBluetooth
C C N A Day5
C C N A  Day5C C N A  Day5
C C N A Day5
darulquthni
 
Blue star seminar report dated 18 march
Blue star seminar report dated 18 marchBlue star seminar report dated 18 march
Blue star seminar report dated 18 march
bhadreshagm
 
Bluetooth - Comprehensive Presentation
Bluetooth - Comprehensive PresentationBluetooth - Comprehensive Presentation
Bluetooth - Comprehensive Presentation
Muhammed Afsal Villan
 
SYBSC(CS)_WCIOT_Sem-II-Unit 2 short range .pdf
SYBSC(CS)_WCIOT_Sem-II-Unit 2 short range .pdfSYBSC(CS)_WCIOT_Sem-II-Unit 2 short range .pdf
SYBSC(CS)_WCIOT_Sem-II-Unit 2 short range .pdf
shubhangisonawane6
 

Similar to Bluetooth and profiles on WEC7 (20)

Data Communication and Network World of Bluetooth
Data Communication and Network World of BluetoothData Communication and Network World of Bluetooth
Data Communication and Network World of Bluetooth
 
Bluetooth.pptx
Bluetooth.pptxBluetooth.pptx
Bluetooth.pptx
 
Overview of Bluetooth technology
Overview of Bluetooth technologyOverview of Bluetooth technology
Overview of Bluetooth technology
 
Wireless & Mobile Lecture # 20
Wireless & Mobile Lecture # 20Wireless & Mobile Lecture # 20
Wireless & Mobile Lecture # 20
 
Bluethooth Protocol stack/layers
Bluethooth Protocol stack/layersBluethooth Protocol stack/layers
Bluethooth Protocol stack/layers
 
Introduction to bluetooth
Introduction to bluetoothIntroduction to bluetooth
Introduction to bluetooth
 
Bluetooth
BluetoothBluetooth
Bluetooth
 
Protols used in bluetooth
Protols used in bluetoothProtols used in bluetooth
Protols used in bluetooth
 
R K 2 Bluetooth Technologies
R K 2  Bluetooth  TechnologiesR K 2  Bluetooth  Technologies
R K 2 Bluetooth Technologies
 
Wireless personal area networks(PAN)
Wireless personal area networks(PAN)Wireless personal area networks(PAN)
Wireless personal area networks(PAN)
 
Bluetooth Intro
Bluetooth IntroBluetooth Intro
Bluetooth Intro
 
MC Module 4.docx
MC Module 4.docxMC Module 4.docx
MC Module 4.docx
 
Bluetooth Details.ppt
Bluetooth Details.pptBluetooth Details.ppt
Bluetooth Details.ppt
 
Bluetooth Technology -- detailed explanation
Bluetooth Technology -- detailed explanation Bluetooth Technology -- detailed explanation
Bluetooth Technology -- detailed explanation
 
Unit 2 bluetooth-iot_complete notes
Unit 2 bluetooth-iot_complete notesUnit 2 bluetooth-iot_complete notes
Unit 2 bluetooth-iot_complete notes
 
Bluetooth
BluetoothBluetooth
Bluetooth
 
C C N A Day5
C C N A  Day5C C N A  Day5
C C N A Day5
 
Blue star seminar report dated 18 march
Blue star seminar report dated 18 marchBlue star seminar report dated 18 march
Blue star seminar report dated 18 march
 
Bluetooth - Comprehensive Presentation
Bluetooth - Comprehensive PresentationBluetooth - Comprehensive Presentation
Bluetooth - Comprehensive Presentation
 
SYBSC(CS)_WCIOT_Sem-II-Unit 2 short range .pdf
SYBSC(CS)_WCIOT_Sem-II-Unit 2 short range .pdfSYBSC(CS)_WCIOT_Sem-II-Unit 2 short range .pdf
SYBSC(CS)_WCIOT_Sem-II-Unit 2 short range .pdf
 

Recently uploaded

Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Vladimir Iglovikov, Ph.D.
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
Pixlogix Infotech
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 

Recently uploaded (20)

Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 

Bluetooth and profiles on WEC7

  • 1. Bluetooth and Profiles Session by, Mr. Keshava G N and Mr. Shashaanka T N
  • 2. Bluetooth • What is Bluetooth • History of Bluetooth • Bluetooth Architecture • Bluetooth profiles • Pairing Process • Bluetooth network configuration • Security concerns • Profiles in detail • Bluetooth-WinCE architecture • Host Controller • Catalog items and Sysgen Variables • Bluetooth vs WiFi • Advantages and Disadvantages of Bluetooth Why you are here !
  • 3. Bluetooth • Bluetooth is a short-range and low power cable-replacement technology originally developed for exchanging data over short distances from fixed and mobile devices, creating personal area networks (PANs). • The word "Bluetooth" is taken from the 10th century Danish King Harald Blatand, he had been influential in uniting Scandinavian tribes(Denmark, southern Sweeden and southern Norway) into a single kingdom. • The Bluetooth logo is a bind rune merging the Younger Futhark runes Runic letter ior.svg (Hagall) (ᚼ) and Runic letter berkanan.svg (Bjarkan) (ᚼ), Harald's initials. • The Bluetooth specification was first developed in 1994 by Sven Mattison and Jaap Haartsen, who were working for Ericsson Mobile Platforms in Sweden. • 5 companies (Ericsson, Nokia, IBM, Intel & Toshiba) joined to form the Bluetooth Special Interest Group (SIG) in 1998(now SIG has more than 25,000 member companies). • The IEEE standardized Bluetooth as IEEE 802.15.1, but no longer maintains the standard • Uses the short-wavelength radio waves from 2.4 to 2.485 GHz • It uses 79 designated Bluetooth channels(each channel has a bandwidth of 1 MHz). • Bluetooth 4.0 uses 2 MHz spacing, which accommodates 40 channels
  • 4. Bluetooth v1.0 and v1.0B: • It had many problems and manufacturers had difficulty making their products interoperable. • It also included mandatory Bluetooth hardware device address (BD_ADDR) transmission in the Connecting process, which was a major setback for certain services planned for use in Bluetooth environments. Bluetooth v1.1: • Ratified as IEEE Standard 802.15.1-2001 • Many errors found in the v1.0B specifications were fixed. • Received Signal Strength Indicator (RSSI). Bluetooth v1.2: • Ratified as IEEE Standard 802.15.1–2005 • Improved resistance to radio frequency interference by avoiding the use of crowded frequencies in the hopping sequence. • Higher transmission speeds in practice, up to 721 kbit/s. • Host Controller Interface (HCI) operation with three-wire UART. • Introduced Flow Control and Retransmission Modes for L2CAP. Bluetooth Version History
  • 5. Bluetooth v2.0 + EDR: • This was released in 2004,for an Enhanced Data Rate (EDR) upto 3 Mbit/s, although the practical data transfer rate is 2.1 Mbit/s. • EDR can provide a lower power consumption through a reduced duty cycle. • Aside from EDR, the v2.0 specification contains other minor improvements. Bluetooth v2.1 + EDR: • This was adopted by the Bluetooth SIG on 26 July 2007. • The headline feature of v2.1 is secure simple pairing (SSP). • Version 2.1 allows various other improvements, including "Extended inquiry response" (EIR), which provides more information during the inquiry procedure to allow better filtering of devices before connection; and sniff subrating, which reduces the power consumption in low-power mode. Bluetooth v3.0 + HS: • This was adopted by the Bluetooth SIG on 21 April 2009. • Bluetooth v3.0 + HS provides theoretical data transfer speeds of up to 24 Mbit/s, though not over the Bluetooth link itself. Instead, the Bluetooth link is used for negotiation and establishment, and the high data rate traffic is carried over a colocated 802.11 link. • The main new feature is AMP (Alternative MAC/PHY), the addition of 802.11 as a high speed transport. Bluetooth Version History
  • 6. Bluetooth v4.0: • This version 4.0 (called Bluetooth Smart) has been adopted on 30 June 2010. • It includes Classic Bluetooth, Bluetooth high speed and Bluetooth low energy protocols. It provides more security in data transmission than the earlier version. Bluetooth v4.1: • The Bluetooth SIG announced formal adoption of the Bluetooth v4.1 specification on 4 December 2013. • This specification is an incremental software update to Bluetooth Specification v4.0, and not a hardware update. • These include increased co-existence support for LTE, bulk data exchange rates. Bluetooth v4.2: • Bluetooth v4.2 was released on December 2, 2014. • It Introduces some key features for IoT. Some features, such as Data Length Extension, require a hardware update. Bluetooth Version History
  • 7. Bluetooth core system architecture Bluetooth Architecture
  • 8. Generic Access Profile(GAP) • The Generic Access Profile (GAP) block represents the base functionality common to all Bluetooth devices such as modes and access procedures used by the transports, protocols and application profiles. • GAP services include device discovery, connection modes, security, authentication, association models and service discovery. Security Manager Protocol(SMP) • The Security Manager Protocol (SMP) is the peer-to-peer protocol used to generate encryption keys and identity keys. • This block is only used in LE systems. • Similar functionality in the BR/EDR system is contained in the Link Manager block in the Controller. • The protocol operates over a dedicated fixed L2CAP channel. • The SMP block also manages storage of the encryption keys and identity keys and is responsible for generating random addresses. Attribute Protocol(ATT) • The Attribute Protocol (ATT) block implements the peer-to-peer protocol between an attribute server and an attribute client. • The ATT client communicates with an ATT server on a remote device over a dedicated fixed L2CAP channel. Bluetooth Architecture
  • 9. Service Discovery Protocol(SDP) • The Service Discovery Protocol allows a device to discover services offered by other devices, and their associated parameters. • Each service is identified by a Universally Unique Identifier (UUID), with official services (Bluetooth profiles) assigned a short form UUID (16 bits rather than the full 128). Advanced Media Protocol(AMP) • The AMP manager is a layer that uses L2CAP to communicate with a peer AMP Manager on a remote device. • It is responsible for discovering remote AMP(s), determining their availability and information. • This information is used to set up and manage AMP physical links. • The AMP manager uses a dedicated L2CAP signaling channel to communicate with remote AMP manager(s). Radio Frequency Communication(RFCOMM) • The Bluetooth protocol RFCOMM is a simple set of transport protocols, made on top of the L2CAP protocol. • RFCOMM is sometimes called serial port emulation. • Enforces the security policy for dial-up networking and other services relying on a serial port. Bluetooth Architecture
  • 10. Logical Link Control and Adaptation Protocol(L2CAP) • Manages the creation and termination of virtual connections called channels with other devices. • Negotiates and dictates security parameters for channel establishment. • The Logical Link Control and Adaptation Protocol used to multiplex multiple logical connections between two devices. Provides segmentation and reassembly of on-air packets. • In Retransmission and Flow Control modes, L2CAP can be configured either for isochronous data or reliable data per channel by performing retransmissions and CRC checks. • There are two modes which effectively deprecate original Retransmission and Flow Control modes: • Enhanced Retransmission Mode (ERTM): This mode is an improved version of the original retransmission mode. This mode provides a reliable L2CAP channel. • Streaming Mode (SM): This is a very simple mode, with no retransmission or flow control. This mode provides an unreliable L2CAP channel. Adopted Protocols: Adopted protocols are defined by other standards-making organizations and incorporated into Bluetooth’s protocol stack, allowing Bluetooth to code protocols only when necessary. Point-to-Point Protocol (PPP): Internet standard protocol for transporting IP datagrams over a point-to- point link. TCP/IP/UDP: Foundation Protocols for TCP/IP protocol suite. Object Exchange Protocol (OBEX): Session-layer protocol for the exchange of objects, providing a model for object and operation representation. Wireless Application Environment/Wireless Application Protocol (WAE/WAP): WAE specifies an application framework for wireless devices and WAP is an open standard to provide mobile users access to telephony and information services. Bluetooth Architecture
  • 11. Advanced Audio Distribution Profile (A2DP): This profile defines how multimedia audio can be streamed from one device to another over a Bluetooth connection Audio/Video Remote Control Profile (AVRCP): This profile is designed to provide a standard interface to control TVs, all of the A/V equipments to allow a single remote control Basic Imaging Profile (BIP): This profile is designed for sending images between devices and includes the ability to resize, and convert images to make them suitable for the receiving device. Basic Printing Profile (BPP): This allows devices to send text, e-mails, vCards, or other items to printers based on print jobs. Cordless Telephony Profile (CTP): This is designed for cordless phones to work using Bluetooth. Device ID Profile (DIP): It provides identification of the manufacturer, product id, product version, and the version of the Device Dial-up Networking Profile (DUN): This profile provides a standard to access the Internet and other dial-up services over Bluetooth. Fax Profile (FAX): This profile is intended to provide a well-defined interface between a mobile phone or fixed-line phone and a PC with Fax software installed. File Transfer Profile (FTP): Provides the capability to browse, manipulate and transfer objects (files and folders) in an object store (file system) of another system. Bluetooth Profiles
  • 12. Generic Audio/Video Distribution Profile (GAVDP): GAVDP provides the basis for A2DP and VDP, the basis of the systems designed for distributing video and audio streams using Bluetooth technology. Generic Access Profile (GAP): Provides the basis for all other profiles. GAP defines how two Bluetooth units discover and establish a connection with each other. Health Device Profile (HDP): Health Thermometer profile (HTP) and Heart Rate Profile (HRP) fall under this category as well. Hands-Free Profile (HFP): This allow car hands-free kits to communicate with mobile phones in the car. It commonly uses Synchronous Connection Oriented link (SCO). Human Interface Device Profile (HID): Provides support for devices such as mice, joysticks, keyboards, as well as sometimes providing support for simple buttons and indicators on other types of devices. Headset Profile (HSP): This is the most commonly used profile, providing support for the popular Bluetooth headsets to be used with mobile phones. LAN Access Profile (LAP): LAN Access profile makes it possible for a Bluetooth device to access LAN, WAN or Internet via another device that has a physical connection to the network. Message Access Profile (MAP): Message Access Profile (MAP) specification allows exchange of messages between devices. Bluetooth Profiles
  • 13. Object Push Profile (OPP): A basic profile for sending "objects" such as pictures, virtual business cards, or appointment details. It is called push because the transfers are always instigated by the sender (client), not the receiver (server). Personal Area Networking Profile (PAN): This profile is intended to allow the use of Bluetooth Network Encapsulation Protocol on Layer 3 protocols for transport over a Bluetooth link. Phone Book Access Profile (PBAP, PBA): Phone Book Access (PBA) or Phone Book Access Profile (PBAP) is a profile that allows exchange of Phone Book Objects between devices. Serial Port Profile(SPP): This profile emulates a serial cable to provide a simple substitute for existing RS-232, including the familiar control signals. Bluetooth Profiles
  • 14. During pairing, the two devices establish a relationship by creating a shared secret known as a link key. If both devices store the same link key, they are said to be paired or bonded. Pairing Process
  • 15. Legacy pairing: This is available in Bluetooth v2.0 and before. Each device must enter a PIN code; pairing is only successful if both devices enter the same PIN code. Any 16-byte UTF-8 string may be used as a PIN code; however, not all devices may be capable of entering all possible PIN codes. Secure Simple Pairing (SSP): This is required by Bluetooth v2.1, although a Bluetooth v2.1 device may only use legacy pairing to interoperate with a v2.0 or earlier device. Secure Simple Pairing uses a form of public key cryptography, and some types can help protect against man in the middle, or MITM attacks. Pairing Process
  • 16. Piconets: • Two or more Bluetooth units sharing the same channel. • One device acts as a master and the devices connected to it act as slaves. • Slaves can not directly send data to each other. • In effect, the master acts as a switch for the piconet and all traffic must pass through the master. • There can be up to 7 active slaves in a piconet but only one master. Scatternets: • A set of two or more interconnected piconets form scatternets • A Bluetooth unit can be a slave in two or more piconets, but it can be a master in only one. • Bluetooth units can only transmit and receive data in one piconet at a time. • Piconets may be identified by the master's identity and clock. Bluetooth Network Configuration
  • 17. Bluejacking is the sending of unsolicited messages over Bluetooth to Bluetooth-enabled devices such as mobile phones, PDAs or laptop computers, sending a vCard which typically contains a message in the name field to another Bluetooth-enabled device via the OBEX protocol. Bluesnarfing is the unauthorized access of information from a wireless device through a Bluetooth connection.This allows access to a calendar, contact list, emails and text messages, and on some phones, users can copy pictures and private videos. While Bluejacking is essentially harmless as it only transmits data to the target device, Bluesnarfing is the theft of information from the target device. Bluebugging is a form of Bluetooth attack often caused by a lack of awareness,it allows hackers to remotely access a user's phone and use its features, including placing calls and sending text messages, and the user doesn't realize it's happening. Security Concerns
  • 18. 1. Generic Access Profile (GAP) Defines the generic requirements for detecting and establishing a connection to a Bluetooth device. All other profiles are based on GAP. 2. Object Exchange Profile (OBEX) Defines procedures for the support of the Object Exchange Protocol (OBEX) usage models. 3. Serial Port Profile (SPP) Defines procedures required for configuring serial cable connections between peer Bluetooth devices using RFCOMM. 4. Other profiles: Dial-up Networking (DUN) Profile, File Transfer Profile (FTP), Hands-Free Profile (HFP), Headset Profile (HSP), Human Interface Device (HID) Profile, LAN Access Profile (LAP), Object Push Profile (OPP), Personal Area Networking (PAN) Profile. Bluetooth Profiles
  • 19. The Generic Access Profile provides a basic level of functionality that all Bluetooth devices must implement. It ensures that all Bluetooth devices should be capable of making baseband connections regardless of what higher-level functionality they support. The Generic Access Profile defines the following: 1. Generic procedures for discovering Bluetooth devices 2. Link-management aspects of connecting to Bluetooth devices 3. Procedures related to security levels 4. Common formats for user interface-level parameters (naming conventions) The Service Discovery Application Profile rests directly on the Generic Access Profile. It defines how an application should use the Bluetooth Service Discovery Protocol (SDP), to find the capabilities of other devices in its neighborhood. 1. Generic Access Profile (GAP)
  • 20. Obex is used to transfer an object from one device to another. A scenario would be using Bluetooth technology to send information like files, vCards, vCalendars and images between your mobile phone or PDA and a PC. Few examples of the types of devices that you might find using the OBEX:  Laptop  PC  Mobile phone Server and a Client: Server – This is the device that provides an object exchange server to and from which data objects can be pushed and pulled, respectively. Client – This is the device that can push or/and pull data object(s) to and from the Server. 2. Object Exchange Profile (OBEX)
  • 21. SPP defines how to set up virtual serial ports and connect two Bluetooth enabled devices. A scenario would be using two devices, such as PCs or laptops, as virtual serial ports and then connecting the two devices via Bluetooth technology. Types of devices that might be using the SPP: PC Laptop The SPP defines two roles, Device A and Device B. Device A – This is the device that takes initiative to form a connection to another device (initiator). Device B – This is the device that waits for another device to take initiative to connect (acceptor). 3. Serial Port Profile (SPP)
  • 22. FTP defines how folders and files on a server device can be browsed by a client device. Once a file or location is found by the client, a file can be pulled from the server to the client, or pushed from the client to the server using OBEX. A typical scenario would be transferring files wirelessly between two PCs or laptops, or browsing and retrieving files on a server. Types of devices that might be using the FTP: PC/Laptop Mobile The FTP defines two roles, that of a Client and a Server: Client – The Client device initiates the operation, which pushes and pulls objects to and from the Server. Server – The Server device is the target remote Bluetooth device that provides an object exchange server and folder browsing capability using the OBEX Folder Listing format. 4. File transfer Profile (FTP)
  • 23. HFP describes how a gateway device can be used to place and receive calls for a hand-free device. A common scenario would be a car kit in your vehicle. The car kit would connect to your mobile phone and be used to place and receive calls. Even more common would be the use of your wireless headset to place and receive calls when connected to a mobile phone. Types of devices that might be using the HFP: Car Kit, GPS system Headset, Mobile The HFP defines two roles, that of an Audio Gateway (AG) and a Hands-Free unit (HF): Audio Gateway (AG) – This is the device that is the gateway of the audio, both for input and output, typically a mobile phone. Hands-Free Unit (HF) – This is the device acting as the Audio Gateway's remote audio input and output mechanism. It also provides some remote control means. 5. Hands-Free Profile (HFP)
  • 24. The HSP describes how a Bluetooth enabled headset should communicate with a computer or other Bluetooth enabled device such as a mobile phone. The typical usage scenario is, of course, using a wireless headset to connect with your mobile phone. Types of devices that might be using the HSP: Headset Mobile The HSP defines two roles, that of an Audio Gateway (AG) and a Headset (HS): Audio Gateway (AG) – This is the device that is the gateway of the audio, both for input and output, typically a mobile phone or PC. Headset (HS) – This is the device acting as the Audio Gateway's remote audio input and output mechanism. 6. Headset Profile (HSP)
  • 25. The HID profile defines the protocols, procedures and features to be used by Bluetooth HID such as keyboards, pointing devices, gaming devices and remote monitoring devices. The most common usage would be your wireless desktop, keyboard, mouse, etc. Types of devices that might be using the HID: PC/Laptop Keyboard Mouse The HID defines two roles, that of a Human Interface Device (HID) and a Host: Human Interface Device (HID) – The device providing the service of human data input and output to and from the host. Host – The device using or requesting the services of a Human Interface Device. 7. Human Interface Device Profile (HID)
  • 26. OPP defines the roles of push server and push client. These roles are analogous to and must interoperate with the server and client device roles that GOEP defines. An example scenario would be the exchange of a contact or appointment between two mobile phones, or a mobile phone and a PC. Types of devices that might be using the OPP: PC/Laptop Mobile The OPP defines two roles, that of a Push Server and a Push Client: Push Server – This is the device that provides an object exchange server. Push Client – This is the device that pushes and pulls objects to and from the Push Server. 8. Object Push Profile (OPP)
  • 27. PAN describes how two or more Bluetooth enabled devices can form an ad-hoc network and how the same mechanism can be used to access a remote network through a network access point. 9. Personal Area Networking Profile (PAN)
  • 28. DUN provides a standard to access the Internet and other dial-up services over Bluetooth technology. The most common scenario is accessing the Internet from a laptop by using your mobile phone as a wireless dial-up modem. Types of devices that might be using the DUN: PC/Laptop/Mobile The DUN defines two roles, that of a Gateway (GW) and a Data Terminal (DT): Gateway (GW) – This is the device that provides access to the public network. Data Terminal (DT) – This is the device that uses the dial-up services of the gateway. 10. Dial-Up Network Profile (DUN)
  • 30. WinCE Bluetooth Host: Includes implementations of the core Bluetooth protocols: the Bluetooth stack and the high-level layers of the Bluetooth architecture, such as APIs and profiles. L2CAP: The Bluetooth logical link control and adaptation protocol (L2CAP) supports higher-level protocol multiplexing, packet segmentation and reassembly, and the conveying of quality of service information. WinCE Registry key : HKEY_LOCAL_MACHINESoftwareMicrosoftBluetoothl2cap can be configured for Response Timout eXpired (RTX) timer value, default link policy, default packet type on the L2CAP connection etc SDP: Service discovery protocol allows the devices to discover what services each other support, and what parameters to use to connect to them. Each service is identified by a Universally Unique Identifier (UUID), with official services (Bluetooth profiles) assigned a short form UUID Bluetooth architecture in Windows CE
  • 31. OBEX: Object exchange (OBEX) is a communications protocol that facilitates the exchange of binary objects between devices. OBEX is used for many profiles that require simple data exchange (e.g., object push, file transfer, basic imaging, basic printing, phonebook access, etc.) RFCOMM: The Bluetooth protocol RFCOMM is a simple set of transport protocols, made on top of the L2CAP protocol, providing emulated RS-232 serial ports. RFCOMM is sometimes called serial port emulation. The Bluetooth serial port profile is based on this protocol. BNEP: BNEP is used for delivering network packets on top of L2CAP. This protocol is used by the personal area networking (PAN) profile. PAN: PAN describes how two or more Bluetooth enabled devices can form an ad- hoc network and how the same mechanism can be used to access a remote network through a network access point. Bluetooth architecture in Windows CE
  • 32. The HCI provides a command interface to the baseband controller and link manager, and access to configuration parameters. This interface provides a uniform method of accessing the Bluetooth baseband capabilities. Using HCI, a BT application can access BT Hardware without knowledge of the transport layer or other hardware implementation details. In systems where the higher layers are run on a host device’s processor and lower layers on a BT device, an interface is needed between the higher and lower layers. The BT standard defines the HCI. Host Controller Interface (HCI) Architecture
  • 33. The BT standard for the host controller interface defines the following: 1. Command packets used by the host to control the module 2. Event packets used by the module to inform the host of changes in the lower layers 3. Data packets to pass voice and data between host and module HCI Packet Types
  • 34. The host to control the Bluetooth module and to monitor its status uses HCI commands. Commands are transferred using HCI command packets If a command can complete immediately, an HCI_Command_Complete is returned to indicate that the command has been dealt with. If a command cannot complete immediately, an HCI_Command_Status event is returned immediately, and another event is returned later when the command has completed. HCI Command packets
  • 35. The Opcode parameter is divided into two fields, called the OpCode Group Field (OGF) and OpCode Command Field (OCF). The OGF occupies the upper 6 bits of the Opcode, while the OCF occupies the remaining 10 bits. HCI Command packets
  • 36. HCI ACL Data Packets HCI ACL Data Packets are used to exchange data between the Host and Controller. HCI Synchronous Data Packets HCI synchronous (SCO and eSCO) Data Packets are used to exchange synchronous data between the Host and Controller. HCI Data packets
  • 37. The HCI Event Packet is used by the Controller to notify the Host when events occur. The Host must be able to accept HCI Event Packets with up to 255 octets of data excluding the HCI Event Packet header. HCI Event Packets
  • 38. HCI Commands - Example
  • 39. WEC7 Initialization sequence The first command that is sent from stack to HCI transport layer is 0x0C03 (Reset). OGF OCF Op-code It will be followed by following sequence of commands HCI Command : Read buffer size (0x1005) HCI Event : Command Status (0x0E) HCI Command : Read BD address (0x1009) HCI Event : Command Status (0x0E) HCI Command : Write local name (0x0C13) HCI Event : Command Status (0x0E) HCI Command : Write scan enable (0x0C1A) HCI Event : Command Status (0x0E) HCI Command : Write class of device (0x0C24) HCI Event : Command Status (0x0E) HCI Command : Read Local Version Information (0x1001) HCI Event : Command Status (0x0E) HCI Command : Read Local Supported Commands (0x1003) HCI Event : Command Status (0x0E) ... ... HCI Commands - Example
  • 40. Scanning sequence HCI Command : Inquiry (0x0401) HCI Event : Command Status (0x0F) HCI Event : Inquiry Result (0x02) or Extended Inquiry Result(0x2F) and/or Inquiry Result with RSSI (0x22) HCI Event : Inquiry Complete (0x01) HCI Command : Remote Name Request (0x0419) HCI Event : Command Status (0x0F) HCI Event : Remote Name Request Complete (0x07) HCI Commands - Example
  • 41. Pairing / Connection sequence HCI Command : Create Connection (0x0405) HCI Event : Command Status (0x0F) HCI Event : Connection Complete (0x03) HCI Command : Read Clock Offset (0x041F) HCI Event : Max Slots Change (0x1B) HCI Event : Read Clock Offset Complete (0x1C) HCI Command : Write Link Policy Settings (0x080D) HCI Event : Command Status (0x0F) HCI Command : Read Remote Extended Features (0x041C) HCI Event : Command Status (0x0F) HCI Event : Read Remote Extended Features Complete (0x07) HCI Command : Authentication Requested (0x0411) HCI Event : Command Complete (0x0E) HCI Event : IO Capability Request (0x31) HCI Command : IO Capability Request Reply (0x042B) HCI Event : Command Complete (0x0E) HCI Event : IO Capability Response (0x32) ... Will be followed by ACL/SCO data packets... HCI Commands - Example
  • 42. This is the only layer in WEC7 which can be modified. WEC7 provides the HCI transport layer driver for generic bluetooth devices, (CSR BT dongle) though USB and UART. For SDIO interface, the driver needs to be ported from WinCE6.0 to WEC7. For non-generic modules such as Redpine 9113 BT module, HCI transport layer should be modified according to the module datasheet/Linux driver. HCI Transport layer driver in WEC7
  • 43. [HKEY_LOCAL_MACHINESoftwareMicrosoftBluetoothTransportsPnP{<GUID>}] "flags"=dword:80000000 "driver"="bthusb.dll" "resetdelay"=dword:0 "PacketSize"=dword:200 "BlockSize"=dword:5 [HKEY_LOCAL_MACHINESoftwareMicrosoftBluetoothsys] "Power"=dword:1 ; Radio on by default "ScanMode"=dword:3 ; Radio is discoverable "DisableAutoSuspend"=dword:1 ; Allow suspend when connected [HKEY_LOCAL_MACHINEDriversUSBLoadClients5656_37139DefaultDefaultBluetooth_USB_Driver] "DLL"="bthusb.dll" [HKEY_LOCAL_MACHINEDriversSDCARDClientDriversCustomMANF-041B-CARDID-9330-FUNC-1] "Dll"="bthsdio.dll" HCI Transport layer driver - Registry
  • 44. Bluetooth Stack with Universal Loadable Driver SYSGEN_BTH Bluetooth Settings SYSGEN_BTH_SETTINGS Bluetooth HID – Keyboard SYSGEN_BTH_HID_KEYBOARD Bluetooth HID – Mouse SYSGEN_BTH_HID_MOUSE Bluetooth HS/HF and Audio Gateway Service SYSGEN_BTH_AG Bluetooth PAN SYSGEN_BTH_PAN Bluetooth Profile Management APIs SYSGEN_BTH_BTHUTIL Bluetooth services SYSGEN_BTH_BTHSSVC OBEX Client SYSGEN_OBEX_CLIENT OBEX Server SYSGEN_OBEX_SERVER OBEX File Browser SYSGEN_OBEX_FILEBROWSER OBEX Inbox SYSGEN_OBEX_INBOX Bluetooth utilities SYSGEN_BTH_UTILS Bluetooth audio SYSGEN_BTH_AUDIO Bluetooth modem SYSGEN_BTH_MODEM WEC7 Catalog items and SYSGEN variables
  • 45. •Bluetooth works at 2.4GHz frequency while Wi-Fi based networks work at 2.4, 3.6 and 5 GHz . •Wi-Fi is intended as a replacement for high speed cabling for general local area network access in work areas(wireless local area networks (WLAN)). •Bluetooth was intended for portable equipment and its applications(wireless personal area network (WPAN)). •Wi-Fi is usually access point-centered, with an asymmetrical client-server connection with all traffic routed through the access point, while Bluetooth is usually symmetrical, between two Bluetooth devices. •Wi-Fi Direct was recently developed to add a more Bluetooth-like ad-hoc functionality to Wi-Fi. Bluetooth vs. Wi-Fi:
  • 46. The Advantages of Bluetooth: • Widely Used: Companies are taking the benefit by using this in their new and future products to make life much easier for everyone. • Feature Simplicity: You do not need to know much about technology in order to run Bluetooth. Anyone that doesn't have no knowledge about the new technology can still be able to use the Bluetooth feature due to its simplicity and the ease of use. • Go Wireless!: It allows you to stay cord free and do not have to worry about finding the correct place to connect that extra long cord. The Disadvantages of Bluetooth: • Though the transfer speeds are impressive at around 25 Mbps, certain other technologies like Wi-Fi Direct can offer speeds up to 250 Mbps. • Even though the security is good, it is even better on Wi-Fi Direct. • The battery usage during a single transfer is negligible, but if the device is switched on for long, it will drain the battery. • Shorter range when compared to WiFi Advantages and Disadvantages