3. Camada Física
3.2. Banda Básica
O protocolo de banda básica atua como um administrador de enlaces síncronos e assíncronos e faz rotinas de conexão para acessar aparelhos dentro de sua área de atuação. Os enlaces são no modo full-duplex usando a técnica time-division duplex (TDD). Assim o mestre transmite em uma unidade de tempo e o escravo transmite na unidade seguinte.
3.2.1- Piconets e Scatternets – Canal Físico
Quando dispositivos Bluetooth se conectam eles formam uma piconet. Cada piconet possui obrigatoriamente um mestre e pode ter de um até sete escravos (mais escravos podem se conectar num estado parked em que eles não ficam ativos, mas continuam sincronizados). Um dispositivo só pode ser mestre em uma piconet para que não existam duas piconets com a mesma seqüência de saltos de freqüência juntas, mas pode ser escravo em quantas quiser.
Piconets interligadas formam uma scatternet, um sistema ad-hoc composto de múltiplas redes. As piconets que formam a scatternet não têm a mesma seqüência de saltos de freqüência para não interferirem umas nas outras. À medida que mais piconets são adicionadas, o desempenho cai porque a probabilidade de duas ou mais piconets usarem a mesma freqüência ao mesmo tempo aumenta e por isso o número de colisões aumenta.
3.2.2- Enlace Físico
Existem dois tipos de enlaces: Synchronous connection-oriented link (SCO) e Asynchronous connectionless link (ACL). No primeiro só existe um escravo, a conexão é simétrica, com o mestre reservando slots em janelas regulares de tempo, não há retransmissão de pacotes e a taxa máxima é de 64 Kbps. No segundo o enlace pode ser simétrico ou não, os pacotes são retransmitidos em caso de erro e a taxa de transmissão é variável. O enlace SCO é usado para na maioria das vezes para transporte de voz enquanto o ACL transporta dados. Se o enlace for ACL existe um controle de acesso ao meio utilizando a técnica polling. Nela o mestre pergunta aos escravos se eles querem transmitir algum dado. É possível estabelecer enlaces ACL e SCO ao mesmo tempo.
3.2.3- Pacotes
Os pacotes no modo básico têm três partes: código de acesso (68 ou 72 bits), cabeçalho (54 bits) e carga útil (0 a 2745 bits). O código de acesso é utilizado na sincronização e identificação.

Figura 3.1 - Formato do pacote no Modo Básico
O cabeçalho usa código FEC de 1/3 por isso somente 18 bits são significativos. Os três primeiros endereçam os escravos na piconet (por isso só podem ter sete escravos). Os próximos quatro dizem o tipo de pacote e o tipo de enlace (SCO ou ACL). Em seguida vem o bit de controle de fluxo que indica quando o buffer de recebimento está cheio em enlaces ACL. Após vem um bit de confirmação e um bit de controle de seqüência. Finalmente existem oito bits para checagem de erro.

Figura 3.2 - Formato do Cabeçalho
Os pacotes no modo EDR têm seis partes: código de acesso, cabeçalho, guard period, seqüência de sincronização, carga útil e trailer. O guard period serve para fazer a transição entre o tipo de modulação.

Figura 3.3 - Formato do pacote no Modo EDR
3.2.4- Estados e Sub-Estados de Operação
O dispositivo Bluetooth pode estar em dois estados: espera e conexão. Para criar conexões existem sete sub-estados: pesquisa, escuta de pesquisa, resposta da pesquisa, chamada, escuta de chamada, resposta do escravo e resposta do mestre. O estado de espera é o de menor consumo de energia. Na conexão podem ser enviados pacotes, mas antes um pacote poll é transmitido pelo mestre para ver se o escravo está sincronizado. Se acontecer algum problema com o pacote poll ou o mestre não receber uma resposta, os dois dispositivos vão entrar no sub-estado escuta de chamada.
O estado conexão se divide em três modos: ativo, sniff, hold e park. No modo ativo os escravos recebem e transmitem pacotes e o mestre manda pacotes de sincronização periodicamente. No modo sniff a transmissão do mestre pro escravo só acontece em slots específicos. No modo hold o escravo não transmite nem recebe pacotes por um tempo pré-determinado e depois se sincroniza com o mestre novamente e aguarda instruções. No modo park o escravo não transmite pacotes, mas continua sincronizado e recebendo mensagens sem endereço específico.

Figura 3.4 - Esquema de Estados - Adaptado de www.bluetooth.com