Linux 기반 시스템을 사용하려는 경우 bluez5를 사용할 수 있습니다.
Bluez5는 DBus에서 인터페이스를 노출하므로 bluez와의 상호 작용은 원하는 dbus 바인딩 (C, python, C# Mono ..)으로 수행 할 수 있습니다. dbus-api를 사용하면 스캔, 연결, 쌍 처리, 알림, 읽기/쓰기, 광고 등을 할 수 있습니다.
여기서 bluez가 노출 한 dbus api에 대한 설명을 찾을 수 있습니다. 어댑터-API, 디바이스 API와 GATT-API) : https://git.kernel.org/cgit/bluetooth/bluez.git/tree/doc
코드로 다이빙을하기 전에 당신이 bluetoothctl (당신이 연결 페어링에 사용할 수있는 도구, 서비스의 발견으로 주위를 재생할 수 있습니다, GATT는 등 쓰기 & 읽기 속성). https://git.kernel.org/cgit/bluetooth/bluez.git/tree/client/main.c
bluetoothctl이 입심 GDBus (C에서 입심에 대한 DBUS 바인딩)를 사용하여 지어진 당신이 bluez와 함께 할 싶은 당신은 거의 모두를위한 코드 예제를 찾을 수 있습니다 : 또한 , 여기 bluetoothctl의 소스 코드를 찾을 수 있습니다 .