본문으로 바로가기
반응형

블루투스는 이어폰, 노트북, 핸드폰, 프린터등 안쓰이는 곳이 없을 정도로 다양한 기기들에 사용이 됩니다. 오늘은 Bluetooth COD에 대해서 알아보겠습니다. 여기서 COD는 Class Of Device의 약자입니다.



Bluetooth COD(Bluetooth Class Of Device)란?

모든 장치에는 COD 또는 Class Of Device라는 것이 있습니다. 이는 24bit로 표현되며, 6자리의 Hex 값으로 표현 가능합니다. 블루투스를 Remote Device에서 스캔을 하는 경우 제조업체가 설정한 값에 따라서 보이는 형태가 다른데요, 이 설정값에 따라서 스캔 시 어떤 디바이스인지 표시가 됩니다. 즉, 블루투스를 장치를 설명하기 위한 값입니다. 


위에는 제가 갖고 있는 블루투스 스피커를 스캔한 것인데요. Bluetooth Name JBLAB 옆에 보이는 그림을 보면 오디오로 표시가 되어있습니다. 이 그림이 헤드폰의 경우 헤드폰 그림으로 나타나고 컴퓨터의 경우 컴퓨터 그림으로 나타게 되는데 이것이 Bluetooth COD 설정값에 따라서 달라지게 되는 것입니다. 제조업체가 설정한 값에 따라서 보이는 형태가 다르다고 했는데요, Low Level에서 설정이 되기 때문에 Application Level에서는 설정을 할 수가 없습니다.


Bluetooth COD는 주요 서비스 클래스(Major Sevice Class), 주요 장치 클래스(Major Device Class), 부 서비스 클래스(Minor Sevice Class)라는 3가지 클래스로 구성이 됩니다. 

주요 서비스 클래스(Major Sevice Class)

COD를 구성하는 24bit 중에서 23bit에서 13bit에 해당하는 값으로 제품의 특정 기능이나 특성에 해당됩니다.


주요 장치 클래스(Major Device Class)

COD를 구성하는 24bit 중에서 12bit에서 8bit에 해당하는 값으로 블루투스 장치를 정의하기 위한 디바이스의 큰 분류로 보시면 됩니다. 예를 들어 장난감에는 인형, 로봇 등이 있는데 여기서 장난감이 주요 장치 클래스에 해당됩니다.


부 장치 클래스(Minor Device Class)

COD를 구성하는 24bit 중 7bit에서 2bit에 해당하는 값으로 주요 장치 클래스에 따라서 정해지는 6bit의 값입니다. 예를 들어 주요 장치 클래스가 오디오인 경우 부 장치 클래스는 헤드셋, 스피커 등이 될 수 있습니다.



Bluetooth Class Of Device 계산 방법?

우선 Bluetooth Class Of Device를 가장 쉽게 계산하는 법은 아래 URL에서 Bluetooth COD 계산기를 사용하는 것입니다.

http://bluetooth-pentest.narod.ru/software/bluetooth_class_of_device-service_generator.html


들어가 보시면 클래스 별로 세분화가 되어있어서 3가지 클래스가 어디에 해당하는지 쉽게 알 수 있습니다. 직접 계산하려면 주요 서비스 클래스 해당 bit, 주요 장치 클래스 bit, 부 서비스 클래스 bit를 or연산을 해야 되는데 상당히 귀찮습니다. 처음에 URL에 계산기가 의심스럽기도 하고 심심해서 직접 계산을 해봤는데, 별로 재밌지도 않을뿐더러 계산기가 정확한 COD 값을 주더군요. 


각 클래스가 해당하는 값은 구글에서 Bluetooth Class Of Device라고 검색을 하면 쉽게 찾을 수 있습니다. 계산기가 의심되시는 분들은 계산기와 직접 계산을 해보시길 바랍니다. 



2019/08/25 - [프로그래밍/C#] - C# 마우스 제어(클릭, 좌표 이동)

2019/06/09 - [프로그래밍] - 소스 코드 주석 다는 법

2019/06/06 - [프로그래밍] - UTF8 구조 및 유니코드 변환 소스 코드

2019/06/20 - [프로그래밍] - Arabic 프로그래밍 규칙

2019/04/15 - [프로그래밍/C#] - C#을 이용한 시리얼 통신(포트 검색/연결/해제)

반응형