Bluetooth de baixa energia: um guia abrangente para iniciantes

Criar um serviço personalizado e ainda mais um cliente Bluetooth Low Energy é um andar vendado no ancinho. Pelo menos esse era o meu caso há 4 anos, quando comecei a trabalhar com dispositivos BLE. Agora, quase todos os meus projetos prevêem o uso deste protocolo, então em uma época eu tive que entendê-lo por um longo tempo e dolorosamente. 





O livro de Mohammad Afane "Intro to Bluetooth Low Energy" e uma série de posts sobre Novel Bits ajudaram a colocar tudo nas prateleiras . Para mim, pessoalmente, este livro foi uma verdadeira descoberta. Inicialmente, traduzi para o russo para meus colegas que não têm experiência com BLE. Com o consentimento do autor (muito obrigado a ele) decidi publicar meu trabalho aqui. Espero que a tradução seja útil.





Esta é a primeira parte da tradução (haverá 5 deles), que diz o que é BLE, suas capacidades e diferenças em relação ao Bluetooth Classic, e também descreve a arquitetura do protocolo.





Sobre o autor

2006 . , Allegion (Schlage locks), Motorola, Technicolor, Audiovox, Denon & Marantz Group. , : , , ..





2015 , Novel Bits, LLC, web-, , Bluetooth Low Energy.





: mohammad@novelbits.io LinkedIn.





Bluetooth Low Energy

1. Bluetooth Low Energy?

Bluetooth , , , . , Bluetooth . : , , ,   !





Ericsson 1994 . «», 10 . 





Bluetooth: 





  • Bluetooth Classic (BR/EDR), , - ;





  • Bluetooth Low Energy (BLE), .. Bluetooth , Bluetooth 4.0. , ( ) , (, , ).





, . Bluetooth Classic , BLE. , , , ( Dual mode Bluetooth devices), .





Figura 1: Tipos de dispositivos Bluetooth
.1: Bluetooth-

BLE:





  • Bluetooth Bluetooth (Classic BLE), , BLE;





  • BLE 4.0 Bluetooth, 2010 ;





  • BLE Bluetooth Smart, BTLE Bluetooth 4.0, , Bluetooth;





  • Bluetooth Classic BLE – 2.4 , ISM-.





(IoT) , BLE ( Bluetooth Classic) . 2016 Bluetooth Special Interest Group (SIG), , Bluetooth 5.0 ( , Bluetooth 5). , , BLE, Bluetooth Classic.





, Bluetooth − Bluetooth Mesh. Bluetooth Mesh 2017 BLE. BLE (, ), Bluetooth. .





, , BLE :





Fig. 2: história BLE
.2: BLE

BLE

BLE :





  • 2.400 - 2.4835 .





  • 40 2 .





  • ( Bluetooth 5) 2/.





  • , . , , , . : 10-30 .





  • . , . BLE- 15 .





  • BLE . , .





  • , , BLE AES-CCM 128 .





  • BLE . BLE BLE. , , .





  • Bluetooth ( BLE) . . , Bluetooth 5 LE Bluetooth 4.1 LE, , 4.2 , . , , , , Bluetooth.





Bluetooth Classic BLE

, Bluetooth Bluetooth , , . , .





:





1. Bluetooth Classic BLE





Bluetooth Classic





BLE





,





, ,





, ( 3 /, BLE 5 2 /)









79





40





32





3 , Bluetooth Classic





2010 BLE . 2016 Bluetooth 5, , BLE. , 4 8 .





BLE

, BLE . , BLE .





4.1. BLE

BLE , .. , . Bluetooth. Bluetooth 4.2 , 1 /. Bluetooth 5 PHY (Physical Layer, ). 1 / 2 / . 500 125 /. , Bluetooth 5.





:





  • : Bluetooth 150 . .





  • : , . , .





  • : , . , , .





  • : , .





BLE , , , . , BLE:





  • ISM- 2.4 , , , .





  • .





  • , , .





  • , , .





-

, BLE-, BLE, IP-. .





4.2 BLE

BLE IoT.





:





  • ;





, BLE . , .





  • ;





. ( 7500 35000 ). BLE, (4.0, 4.1, 4.2, 5) Bluetooth .





  • ;





  • , – . , BLE ZigBee, Z-Wave Thread.





4.3 BLE

, , , BLE :





  • ;





BLE , , , .





  • ;





, BLE , , .





, WiFi BLE WiFi Direct. , WiFi , . .





  • ;





,, . , , BLE , . .





  • ;





, ( WiFi ), BLE .





  • .





. – , . , . BLE , , BLE « ».





BLE. , , , , BLE , :





  • ;





  • (.: BLE 5.2);





  • , .





BLE

, BLE. – , .





Figura 3: Arquitetura BLE
.3: BLE

, . – GAP (Generic Access Profile), GATT (Generic Attribute Profile) Security Manager – .





/ (GAP) (GATT) – , , , .





, , , BLE- , . , .





-

:





  • (GAP, Generic Access Profile);





  • (GATT, Generic Attribute Profile);





  • (ATT, Attribute Protocol);





  • (SM, Security Manager);





  • (L2CAP, Logical Link Control and Adaptation Protocol);





  • - (HCI, Host Controller Interface), .





:





  • (PHY, Physical Layer);





  • (Link Layer);





  • (DTM, Direct Test Mode);





  • - (HCI, Host Controller Interface), .





BLE

(PHY)

PHY , , , . BLE ISM- (2.4 ), 40 2 , :





Figura 4: Espectro de frequência e canais de rádio em BLE
.4: BLE

, , 37 . “ ”, .





( ). . , . , , , . .





, BLE:





  • (FHSS, Frequency Hopping Spread Spectrum), . .





  • :





: 100 (+20 ) 5 , 10 (+10 ) 4.2 ;





: 0.01 (-20 ).





  • Bluetooth (4.0, 4.1 4.2) – 1 /. (PHY) 1M PHY , Bluetooth 5. Bluetooth 5 PHY:





    • 2 / PHY, Bluetooth.





    • PHY, .





PHY , Bluetooth 5.





( -, ). , BLE. - , , .





, BLE:





  • (Advertising);





  • (Scanning);





  • .





, . , , .





, :





Fig. 5: Estados da camada de link
.5:
  • Standby: , .





  • Advertising: , .





  • Scanning: , , .





  • Initiating: , , advertising.





  • Connected: , . , scanning , . , , .





  .





Bluetooth :





Bluetooth- 48- , MAC-. : .





:





, . IEEE (, MAC- WiFi Ethernet).





:





, ( ), , . . :









    • ;





    • ;





    • .





  • :





    – :





    • , ;





    • .





    – :





    • ;





    • (IRK, Identity Resolving Key) ;





    • ( );





    • ;





    • (, , ) , .





(DTM, Direct Test Mode) . , .





- (HCI)

- – , Bluetooth, . . , Bluetooth-, , 100% , .





, ,   : UART, USB SDIO (Secure Digital Input Output). , , - .





- . .





Figura 6: Exemplo de pacotes de interface de controlador de host
.6: -

: , , , , , .





(L2CAP)

L2CAP , , , . Bluetooth Classic BLE :





  • BLE, .





  • . , BLE, . , .





BLE L2CAP : (ATT, , GATT) (SMP, , ).





(), (GATT), (SM) (GAP) .






Isso conclui o primeiro capítulo do livro. Muito obrigado a quem o leu. A próxima parte se concentrará em classes de dispositivos e publicidade, o método pelo qual os dispositivos comunicam sua presença ao mundo ao seu redor.








All Articles