Bluetooth Low Energy (BLE)
3 min readSep 29, 2023
이 글은 올룰로 Confluence에 작성했던 글을 보관용으로 재포스팅 하는 것이다.
BLE?
과거부터 기기들간의 무선 연결은 주로 Bluetooth 기술을 사용해왔는데 문제는 배터리 소모량이 크다는 것.
이 문제를 해결 하기 위한 것이 BLE(Bluetooth Smart라고도 불림)
2010년 표준 Bluetooth 4.0의 대표적인 특징이며, 기존보다 훨씬 적은 전력을 사용해 Classic과 비슷한 수준의 무선 통신을 할 수 있다
통신 방식
BLE를 지원하는 Device들은 기본적으로 Advertise(Broadcast)와 Connection이라는 방법으로 외부와 통신.
Advertise(Broadcast)
특정 Device를 지정하지 않고, 주변 모든 Device에게 signal을 보낸다.
- Advertiser(Broadcaster): Non-Connectable Advertising Packet을 주기적으로 보내는 Device
- Observer: Advertiser가 보내고 있는 Non-Connectable Advertising Packet을 듣기 위해 주기적으로 Scanning하는 Device
Connection
Advertising으로만 전달하기에는 데이터가 너무 많은 경우. 1:1 방식으로 데이터 교환.
Device간 규칙을 정해 놓기 때문에 Advertise보다 안전.
Central(Master)
- 연결을 요청하는 Device, 주기적으로 Connection Advertising Signal을 Scan
- 연결 후 Timing 설정(데이터 교환 주기?)
Peripheral(Slave)
- 연결을 받는 Device, 주기적으로 Connection Advertising Signal를 보냄
- 연결이 되면 Central이 설정한 Timing에 따라 주기적으로 데이터 교환
Timing
Before Connection
Advertising과 Scanning을 주로 함.
Advertising Channel을 통해 데이터를 주고 받지만 기기 마다 interval이 다르기 때문에 엇갈리는 경우도 발생함.
After Connection
Connection이 완료되면 Peripheral이 advertising을 종료함.
연결된 두 기기의 Interval을 일치 시킴(연결이 종료 될 때까지 유지)