BLE Connection! 조금만 더 깊게 알아볼까?

진정한 개발자·2024년 11월 26일

Bluetooth

목록 보기
5/9
post-thumbnail

🔗 BLE의 연결설정 매개변수 전송: Connection Request (CREQ)

Bluetooth Low Energy (BLE)는 저전력 무선 통신 기술로, 다양한 장치 간의 효율적인 연결을 위한 여러 프로토콜을 가지고 있습니다.
그 중 CREQ(Connection Request)는 BLE에서 연결 설정 과정에서 중요한 역할을 하는 메시지입니다.
이번 블로그에서는 CREQ의 개념, 동작 방식, 그리고 중요한 이유를 Central과 Peripheral 두 장치의 관점에서 살펴보겠습니다. 😊


🛠 CREQ란 무엇인가?

CREQ(Connection Request)는 BLE 연결 설정 중에 Central 장치Peripheral 장치에게 전송하는 메시지로, 연결을 위한 매개변수를 포함하고 있습니다.
이 매개변수는 BLE 장치 간의 통신을 설정하는 데 필수적인 정보를 제공합니다.

  • 목적: Peripheral 장치와의 연결을 확립하기 위해 필요한 정보 전송 (Central->Peripheral)
  • 구성: 다양한 매개변수(예: 연결 간격, 타임아웃 등)가 포함 됨

📡 CREQ의 동작 방식

1. Central의 연결 요청

BLE Central 장치는 Peripheral에게 연결을 요청할 때, CREQ 메시지를 전송합니다.

이때 다음과 같은 매개변수들이 포함됩니다:

  • 최소 연결 간격 (Min Connection Interval): 두 장치 간의 최소 시간 간격.
  • 최대 연결 간격 (Max Connection Interval): 두 장치 간의 최대 시간 간격.
  • 타임아웃 (Supervision Timeout): 연결 끊어짐을 허용하는 최대 시간

2. Peripheral의 암묵적 응답

Peripheral 장치는 CREQ 메시지를 수신한 후, 별도의 응답 메시지를 전송하지 않고 해당 요청을 암묵적으로 수용합니다.

이때 설정된 매개변수에 따라 연결이 자동으로 조정되며, Peripheral의 링크 레이어는 이러한 파라미터를 기반으로 연결을 유지합니다.

3. 연결 설정 완료

Central 장치가 CREQ를 전송하고, Peripheral 장치가 이를 수신하여 자동으로 수용하면, BLE 통신이 설정됩니다.

링크 레이어는 수신된 CREQ의 매개변수를 토대로 연결 상태를 최적화하며, 효율적인 데이터 전송과 안정적인 통신을 가능하게 합니다.

이로 인해 Central과 Peripheral은 서로의 요구에 따라 최적의 연결 성능을 유지하게 됩니다.


🔗 링크 레이어(LL)와 CREQ

CREQ는 BLE의 링크 레이어(LL) 프로토콜에 적용되는 중요한 메시지입니다.
링크 레이어는 BLE 통신에서 데이터 전송, 연결 설정, 및 연결 해제를 포함한 기본적인 작업을 수행합니다.

  • CREQ의 수신 및 처리: Central 장치가 Peripheral 장치에게 CREQ를 전송하면, Peripheral의 링크 레이어는 이를 수신하여 CREQ 정보에 따라 연결 매개변수를 설정합니다.

💡 CREQ의 중요성

  1. 효율적인 연결 설정

    CREQ는 연결 매개변수를 명확하게 정의하여, 장치 간의 통신 효과를 극대화합니다.

    이를 통해 불필요한 데이터 손실이나 지연을 방지할 수 있습니다.

  1. 유연한 매개변수 조정

CREQ를 통해 Central 장치는 Peripheral 장치의 성능에 따라 연결 매개변수를 조정할 수 있으므로, 다양한 환경에서 최적의 연결 상태를 유지할 수 있습니다.


✨ 결론

CREQ(Connection Request)는 BLE에서 연결 설정 과정의 핵심 부분으로, Peripheral 장치와 효율적인 연결을 가능하게 합니다.

이를 통해 BLE 장치들은 불필요한 에너지를 소모하지 않고 안정적으로 데이터 통신을 수행할 수 있습니다. 🌐😊


profile
개발자 진정한 입니다

0개의 댓글