STUDY/Bluetooth

Part 3. Bluetooth Profile

g.s.song 2023. 11. 25. 16:34

1. Overview

Part 1, Part 2 에서 블루투스 및 BLE 프로토콜의 특징에 대해 설명하였습니다. 이번 포스트에서는 블루투스 프로파일(Profile)에 대해 설명하겠습니다. 

 

이전에 설명드렸던 것 처럼 Bluetooth Classic, HS 에서 사용하는 프로파일과 BLE 에서 사용하는 프로파일은 전혀 다르다고 말씀드린 바 있습니다. (Part 1과 Part 2를 읽고 오지 않으신 분들은 한번 읽어보시기 바랍니다.)

 

2. What is Bluetooth Profile?

블루투스 프로파일은 가능한 응용 프로그램를 정의하며, 블루투스 장치가 다른 블루투스 장치와 통신하는데 사용하는 일반적인 특성을 규정합니다. 조금 더 쉽게 이야기 하면 블루투스 프로토콜 내에서 용도 별 사용되는 프로토콜이라고 할 수 있습니다. (ex. 파일 전송, 오디오 비디오 송수신, IVI 핸즈프리, etc...) 

 

장치의 다양한 응용 또는 사용 사례의 종류를 설명하는 다양항 종류의 블루투스 프로파일이 존재하며, 이는 블루투스 Specification Document에 정의되어 있습니다. 해당 규격과 지침을 준수함으로서 개발자는 다른 블루투스 장치와 함께 작동하는 응용 프로그램을 만들 수 있습니다.

 

블루투스 프로파일은 최소한 아래와 같은 내용을 포함합니다. 내용은 다음과 같습니다.

● 다른 프로파일에 대한 종속성

● 제안된 유저 인터페이스 형식

● 프로파일에 의해 사용되는 블루투스 프로토콜 스택 부분.

 

각 프로파일은 스택의 각 레이어에서 특정 옵션 및 매개 변수를 사용하여, 적절하다면 필요한 서비스 레코드를 포함할 수 있습니다.

 

3. Bluetooth BR / EDR Profile

블루투스 BR / EDR 프로파일의 종류는 아래와 같습니다.

 

A2DP (Advanced Audio Distribution Profile)

고화질 스트리밍 오디오를 전송하기 위한 요구사항을 정의하는 사양으로 일반적으로 블루투스 스테레오 헤드폰으로 오디오를 스트리밍하는 블루투스 오디오 소스 장치.

 

AVRCP (Audio/Video Remote Control Profile)

텔레비전, 스테레오 오디오 장비 (Stereo Audio Equipment) 또는 다른 A/V 기기를 제어하기 위한 표준 인터페이스 (Standard Interface)를 제공하기 위해 설계됨. 이 프로파일은 하나의 장치(리모컨 등)를 통해 사용자가 엑세스 가능한 모든 A/V 기기를 제어할 수 있도록 함.

 

BIP (Basic Imaging Profile)

장치 간 이미지 전송을 위해 설계되었으며, 수신 장치에 적합하도록 이미지 크기를 변환하는 기능이 포함되어 있음.

Image Push, Image Pull, Advanced Image Printing, Automatic Archive, Remote Camera, Remote Display 등 지원

 

BPP (Basic Printing Profile)

장치가 인쇄 작업에 따라 프린터에 텍스트, 이메일, V-카드, 이미지 등의 정보를 보낼 수 있도록 함.

 

DI (Device ID Profile)

장치의 블루투스 클래스 (Bluetooth Class)를 넘어서거나 서비스 검색 프로필 (SDP) 레코드 및 응답 모두에 정보를 통합하기 위한 추가적인 정보 제공.

 

DUN (Dial-Up Network Profile)

블루투스 기술을 통해 인터넷 및 다른 전화 서비스를 액세스할 수 있는 기준을 제공.

 

FTP (File Transfer Profile)

다른 시스템에 파일 전송 혹은 조작 등의 기능을 제공.

 

GAVDP (Generic Audio/Video Distribution Profile)

블루투스 기술을 이용하여 비디오 및 오디오 스트림 (Audio Stream)을 배포하도록 설계된 시스템의 기반인 A2DP 및 VDP를 위한 기초 제공.

 

GOEP (Generic Object Profile) : 하나의 장치에서 다른 장치로 객체를 전송하는데 사용.

 

HFP (Hands-Free Profile)

차량 내에서 휴대폰과 통신할 수 있도록 하는데 사용(전화 걸기, 오디오 등)

 

HCRP (Hard Copy Cable Replacement Profile)

드라이버 기반의 인쇄 (Driver-based Printing)가 Bluetooth 를 통해 수행되는 방법을 정의.

 

HDP (Health Device Profile)

헬스케어 및 피트니스 관련.

 

HSP (Headset Profile)

Bluetooth 헤드셋이 Bluetooth 지원 장치와 통신하는 방법을 설명.

 

HID (Human Interface Device Profile)

블루투스 키보드, 마우스, 포인팅 및 게임 장치, 원격 감시 장치 에 의해 사용되는 프로토콜, 절차 (Procedure) 및 기능을 정의.

MAP (Message Access Profile)

장치들 간 메시지를 교환하는 절차와 기능들을 정의.

 

MPS (Multi Profile)

복수 프로필 단일 장치 (Multiple Profiles Single Device) 및 복수 프로필 복수 장치 (Multiple Profiles Multiple Device)들 간 기능과 절차의 집합을 정의.

 

OPP (Object Push Profile)

푸시 서버 (Push Server) 및 푸시 클라이언트 (Push Client)의 역할을 정의.

 

PBAP (Phone Book Access Profile)

장치 간 전화번호부 객체를 교환하기 위한 절차 및 프로토콜을 정의.

 

PAN (Personal Area Networking Profile)

두 개 이상의 블루투스 지원 장치가 애드혹 네트워크 (Ad-Hoc Network)를 형성하는 방법과 동일한 메커니즘이 네트워크 액세스 포인트 (Network Access Point)를 통해 원격 네트워크 (Remote Network)에 액세스하는 방법을 기술.

 

SAP (SIM Access Profile)

블루투스 링크를 통해 GSM SIM 카드, UICC 카드 또는 R-UIM 카드에 액세스하기 위해 사용되는 프로토콜 및 절차를 정의.

 

SDAP (Service Discovery Application Profile)

응용 프로그램이 원격 장치에서 서비스를 검색할 SDP를 사용하는 방법에 대해 설명.

 

SPP (Serial Port Profile)

가상 직렬 포트 (Virtual Serial Port)를 설정하고 두 개의 장치를 연결하는 방법을 정의.

 

SYNC (Synchronization Profile)

블루투스 가능 장치 간 캘린더와 주소 정보 (개인 정보 관리 (PIM) 항목)의 동기화를 가능하게 하기 위해 GOEP와 함께 사용. IrMC서버는 개체 교환 서버 역할을 하는 장치를 의미하며 휴대폰, PDA 등을 예로 들 수 있다. IrMC 클라이언트는 PC를 의미하며, 동기화 엔진을 포함하고 IrMC서버에서 PIM 데이터를 가져오거나 내보내는 장치를 의미한다.

 

VDP (Video Distribution Profile)

장치가 블루투스를 통해 비디오 스트리밍을 할 수 있도록 기능을 정의.

 

4. GATT Profile

BLE는 기존의 BR / EDR 프로파일을 사용하는 것이 아닌 GATT 프로파일을 사용한다고 언급한 바 있습니다. BLE에서 사용하는 GATT 프로파일의 종류는 아래와 같습니다.

 

ANP (Alert Notification Profile), ANS(Alert Notification Service)

알림(Alert) 및 이벤트 정보의 종류 뿐만 아니라 서버 장치에 존재하는 새로운 알림 (Alert) 및 읽지 않은 항목의 수의 정보를 클라이언트 장치가 수신할 수 있게 한다.

 

BAS (Battery Service)

장치 내의 배터리의 상태를 제공한다.

 

BLP (Blood Pressure Profile) , BLS(Blood Pressure Service)

혈압센서 (Blood Pressure Sensor) 연결 및 동작과 관련된 프로파일 및 서비스 제공.

 

HRP(Heart Rate Profile), HRS(Heart Rate Service)

심박 센서 연결 및 동작과 관련된 프로파일 및 서비스 제공.

 

CTS (Current Time Service)

현재 시간을 어떻게 제공할 수 있는지 정의.

 

DIS (Device Information Service)

장치에 대한 제조 회사 정보를 제공.

 

FMP (Find Me Profile)

하나의 장치에서 다른 장치로 알람(Alert) 신호 송신에 대한 정의.

 

HTP (Health Thermometer Profile)

온도 센서 연결 및 동작과 관련된 프로파일.

 

HIDS (HID Service), HOGP(HID Over GATT Profile)

HID(Human Interface Device) 호스트 및 HID 장치를 위한 데이터 및 서비스 제공.

 

IAS (Immediate Alert Service)

장치 간 즉시 알림이 발생하도록 제어점 (Controll Point) 제공.

 

LLS (Link Loss Service)

두 장치 사이에 링크가 손실된 경우 동작을 정의.

 

NDCS (Next DST Change Service)

DST 변경에 대한 정보가 제공될 수 있는 방법을 정의.

 

PASP (Phone Alert Status Profile)

PUID 장치에 연결된 전화기의 경보 상태 알림 정의.

 

PASS (Phone Alert Status Service)

전화 알림 상태 (Phone Alert Status)를 제공.

 

PXP (Proximity Profile)

두 장치 사이에 근접 모니터링 (Proximity Monitoring)을 위한 프로파일.

 

RTUS (Reference Time Update Service)

클라이언트가 시간 서버 (Time Server)로부터 기준 시간 소스로부터 업데이트를 요청할 수 있는 방법을 정의.

 

ScPP (Scan Parameters Profile)

BLE 통신의 스캔 클라이언트 장치 (Scan Client Device)가 스캔 서버 (Scan Server)로의 스캔 동작을 사용하는 방법 및 스캔 서버 (Scan Server)가 스캔 클라이언트 스캔 동작 (Scan Client Scanning Behavior)의 업데이트를 요청할 수 있는 방법을 정의.

 

ScPS (Scan Parameters Service)

전력 소비 (Power Consumption) 및 재 접속 지연 시간 (Reconnection Latency)을 최적화 하는 동작을 조정하기 위해 정보를 이용할 수 있도록 GATT 서버 장치 (GATT Server Device)에서 사용되는 LE 매개 변수를 GATT 클라이언트 (GATT Client)가 저장할 수 있도록 함.

 

TIP (Time Profile)

장치가 날짜, 시간, 시간대 (Time Zone) 및 DST 정보를 얻거나 시간 제어 기능 제공.

 

TPS (Tx Power Service)

연결 시 장치의 현재 전송 전력 레벨을 제공.

5. Reference

1. https://smartits.tistory.com/19

 

블루투스 프로파일 개요 (Bluetooth Profiles Overview)

블루투스 무선 기술을 사용하기 위해서는 장치는 특정 블루투스 프로파일 (Bluetooth Profile)을 해석할 수 있어야한다. 블루투스 프로파일은 가능한 응용 프로그램를 정의하며, 블루투스 장치가 다

smartits.tistory.com