BT Classic Overview
This section describes the commands to operate RS9116 WiSeConnect products.
RS9116W Architecture
The following figure depicts the overall architecture of the RS9116-WiSeconnect.
Figure 1 - Architecture Overview For RS9116W
Bluetooth Classic Architecture
Figure 2 - Bluetooth Classic Architecture
Application
The application layer launches the Bluetooth stack and uses commands to access various profiles on remote Bluetooth devices over the network.
Profiles
There are number of Bluetooth profiles defined in the Bluetooth specification. This design currently supports profiles including Serial Port Profile (SPP), which provides a framework to develop new profiles easily. More profiles will be added in the future.
Bluetooth Core
The Bluetooth core contains the following higher layers of the stack:
-
RFCOMM - a transport protocol based on L2CAP, which emulates RS-232 serial ports. The RFCOMM protocol supports up to 60 simultaneous connections between two BT devices. RFCOMM provides data stream interface for higher level applications and profiles.
-
Service Discovery Protocol (SDP) - provides a means for applications to discover which services are available and to determine the characteristics of those available services. SDP uses an existing L2CAP connection. Further connection to Bluetooth devices can be established using information obtained via SDP.
-
Logical Link Control and Adaptation Protocol (L2CAP) - provides connection-oriented and connection-less data services to upper layer protocols with data packet size up to 64 KB in length. L2CAP performs the segmentation and reassemble of I/O packets from the base-band controller.
-
HCI Generic Driver - implements HCI Interface standardized by Bluetooth SIG. It establishes the communication between Stack and HCI firmware in the Bluetooth hardware. It communicates with the Bluetooth controller hardware via the HCI Bus Driver.
-
HCI BUS Driver - The Bluetooth controllers are connected to the host using interface like UART, USB, SDIO, SPI, USB-CDC etc. The HCI Transport Layer Driver provides hardware abstraction to the rest of the Bluetooth stack software. This driver makes it possible to use Bluetooth stack with different hardware interfaces.
Bluetooth Profiles are additional protocols that build upon the basic Bluetooth standard to more clearly define what kind of data a Bluetooth module is transmitting. While Bluetooth specifications define how the technology works , profiles define how it is used .
The profile(s) a Bluetooth device supports determine(s) what application it iss geared towards. A hands-free Bluetooth headset, for example, would use HeadSet Profile (HSP), while a Nintendo Wii Controller would implement the Human Interface Device (HID) profile. For two Bluetooth devices to be compatible, they must support the same profiles.
OS Abstraction Layer
This layer abstracts RTOS services (semaphores, mutexe, and critical sections) that are used by the whole stack and the applications. The stack, which is designed in an RTOS-independent manner, can be used with any RTOS by porting this layer. It is also possible to use the Bluetooth stack standalone without RTOS.
Host-Module Interface
This document is primarily concerned with the host-module interface. The host can interface with RS9116-WiSeConnect using following list of interfaces to configure and send/receive data.
-
SPI
-
UART
-
USB
NOTE:
USB-CDC/UART/USB/SPI are the host interfaces for RS9116 WiSeConnect.