블루투스 기술 현주소 : 주요 오픈소스 SW 스택 소개 및 적용 현황

January 23, 2025 정우탁 조회수 2,521

블루투스 오픈소스 소프트웨어 스택의 종류와 주로 사용되는 기기를 소개하고, 삼성 기기에서는 어떤 스택을 채용하고 있는지 제품 적용 현황을 알아봅니다.

들어가며

블루투스 기술의 활용이 나날이 증가하면서 지난 4년간 블루투스 지원 기기의 수가 200억 대 정도 증가했습니다. 이제는 블루투스 기술이 포함되지 않은 제품을 찾아보기 어려울 정도입니다.

 


<연간 블루투스 기기 출하량(출처: ABI Research)>


삼성의 대표적인 제품인 스마트폰, TV, 가전기기에도 마찬가지로 블루투스 기술이 적용되는데요. 기기별로 칩 제조사가 다를 뿐 아니라 채용하고 있는 소프트웨어 스택도 각양각색입니다. 제품별로 어떤 소프트웨어 스택이 사용되고 있으며 얼마나 다양한 오픈소스 스택이 제공되고 있을까요? 이번 포스팅에서는 블루투스 오픈소스 소프트웨어 스택의 종류와 적용 현황을 알아보겠습니다.

먼저, 블루투스 소프트웨어 스택은 크게 두 가지 카테고리로 나눌 수 있습니다.



  • 일반적인 범용 소프트웨어 구현체: 데스크톱 컴퓨터나 모바일 플랫폼 등에서 풍부한 기능과 유연성 제공
  • 임베디드 시스템 구현체: 블루투스 주변 장치(HID키보드, 마우스, 헤드셋, 스피커 등)와 같이 리소스가 제한된 장치에서 사용하도록 설계됨


그러면 각 오픈소스 스택에 대해 자세히 알아보겠습니다.

BlueZ

BlueZ는 Qualcomm에서 개발한 블루투스 소프트웨어 스택으로, 공식 리눅스 커널 배포판에 포함되어 있습니다. 목표는 리눅스용 블루투스 무선 표준 사양을 구현하는 것입니다. BlueZ 스택은 핵심 블루투스 프로토콜과 계층을 지원하며 리눅스 커널 버전 2.4.6 이상에서 사용할 수 있습니다. 라이선스는 GNU GPL(General Public License)이 부여되었는데 GNU LGPL(Lesser General Public License)로 전환되는 추세입니다.


BlueZ는 안드로이드 플랫폼에서 2012년까지 사용하던 블루투스 스택이기도 한데요. 현재 삼성의 TizenOS 플랫폼에서 사용 중입니다. 타이젠이 리눅스 기반 플랫폼이기 때문에 자연히 BlueZ를 사용하게 된 것이죠. 타이젠 플랫폼이 탑재된 자사 제품에도 BlueZ 블루투스 스택이 포함되어 있습니다.

 


<삼성리서치 권호범 상무가 TizenOS의 신기능을 발표하는 모습>

 


 


BlueDroid/Fluoride

BlueDroid는 Broadcom에서 개발한 블루투스 소프트웨어 스택입니다. 2012년 후반부터 안드로이드 플랫폼(AOSP)에 BlueZ 대신 BlueDroid가 사용되었으며, 2019년에는 BlueDroid에서 Fluoride로 이름이 변경되었습니다. ChromeOS에서도 2021년부터 Floss라는 이름으로 기존 BlueZ 스택을 대체하여 사용되고 있습니다. BlueZ 코드의 50% 이상이 리눅스 커널에 위치하기 때문에 버전 유지 관리 비용이 크다는 문제점이 제기된 것으로 보입니다.


BlueZ 스택에 비해 Fluoride 스택은 다음과 같은 이유로 더 우수하다고 평가받고 있습니다.


  • 대규모 사용자 기반을 확보하여 주변 장치와의 상호 운용성 테스트를 보다 효과적으로 수행할 수 있음
  • 대부분의 기능이 유저 스페이스에서 작동하는 더 간단한 아키텍처를 제공
  • 테스트가 용이하고 보안 개선이 가능(예: 유저 스페이스 격리 및 Rust로의 마이그레이션)