With following mechanism, we can check the Bluetooth profiles and services of a remote device, 1) Switch on Bluetooth and make it discoverable ( in my case its Samsung Mobile ) 2) On ubuntu, check mac id using below command, $ hcitool inq Inquiring … 38:EC:E4:50:2C:F7 clock offset: 0x1164 class: 0x5a020c 3) Now to check services and profiles of this samsubg mobile, type command “sdptool records mac_id_from_above_step” $ sdptool records 38:EC:E4:50:2C:F7 Service RecHandle: 0x10000 Service Class ID List: “PnP Information” (0x1200) Service Name: Headset Gateway Service RecHandle: 0x10001 Service Class ID List: “Headset Audio Gateway” (0x1112) “Generic Audio” (0x1203) Protocol Descriptor List: “L2CAP” (0x0100) “RFCOMM” (0x0003) Channel: 2 Profile Descriptor List: “Headset” (0x1108) Version: 0x0102 Service Name: Handsfree Gateway Service RecHandle: 0x10002 Service Class ID List: “Handsfree Audio Gateway” (0x111f) “Generic Audio” (0x1203) Protocol Descriptor List: “L2CAP” (0x0100) “RFCOMM” (0x0003) Channel: 1 Profile Descriptor List: “Handsfree” (0x111e) Version: 0x0105 Service Name: Object Push Service RecHandle: 0x10003 Service Class ID List: “OBEX Object Push” (0x1105) Protocol Descriptor List: “L2CAP” (0x0100) “RFCOMM” (0x0003) Channel: 3 “OBEX” (0x0008) Profile Descriptor List: “OBEX Object Push” (0x1105) Version: 0x0102 Service Name: AV Remote Control Target Service RecHandle: 0x10004 Service Class ID List: “AV Remote Target” (0x110c) Protocol Descriptor List: “L2CAP” (0x0100) PSM: 23 “AVCTP” (0x0017) uint16: 0x100 Profile Descriptor List: “AV Remote” (0x110e) Version: 0x0100 Service Name: BRCM Advanced Audio Service RecHandle: 0x10005 Service Class ID List: “Audio Source” (0x110a) Protocol Descriptor List: “L2CAP” (0x0100) PSM: 25 “AVDTP” (0x0019) uint16: 0x102 Profile Descriptor List: “Advanced Audio” (0x110d) Version: 0x0102 Service Name: OBEX File Transfer Service RecHandle: 0x10006 Service Class ID List: “OBEX File Transfer” (0x1106) Protocol Descriptor List: “L2CAP” (0x0100) “RFCOMM” (0x0003) Channel: 4 “OBEX” (0x0008) Profile Descriptor List: “OBEX File Transfer” (0x1106) Version: 0x0102 Service Name: PBAP Server Service RecHandle: 0x10007 Service Class ID List: “Phonebook Access – PSE” (0x112f) Protocol Descriptor List: “L2CAP” (0x0100) “RFCOMM” (0x0003) Channel: 19 “OBEX” (0x0008) Profile Descriptor List: “Phonebook Access” (0x1130) Version: 0x0101 Service Name: PBAP Server Service RecHandle: 0x10008 Service Class ID List: “Phonebook Access – PSE” (0x112f) Protocol Descriptor List: “L2CAP” (0x0100) “RFCOMM” (0x0003) Channel: 19 “OBEX” (0x0008) Profile Descriptor List: “Phonebook Access” (0x1130) Version: 0x0101
Execution & Command Syntax
make it discoverable ( in my case its Samsung Mobile ) 2) On ubuntu, check mac id using below command, $ hcitool inq Inquiring … 38:EC:E4:50:2C:F7 clock offset: 0x1164 class: 0x5a020c 3) Now to check services and profiles of this samsubg mobile, type command “sdptool records mac_id_from_above_step” $ sdptool records 38:EC:E4:50:2C:F7 Service RecHandle: 0x10000 Service Class ID List: “PnP Information” (0x1200) Service Name: Headset Gateway Service RecHandle: 0x10001 Service Class ID List: “Headset Audio Gateway” (0x1112) “Generic Audio” (0x1203) Protocol Descriptor List: “L2CAP” (0x0100) “RFCOMM” (0x0003) Channel: 2 Profile Descriptor List: “Headset” (0x1108) Version: 0x0102 Service Name: Handsfree Gateway Service RecHandle: 0x10002 Service Class ID List: “Handsfree Audio Gateway” (0x111f) “Generic Audio” (0x1203) Protocol Descriptor List: “L2CAP” (0x0100) “RFCOMM” (0x0003) Channel: 1 Profile Descriptor List: “Handsfree” (0x111e) Version: 0x0105 Service Name: Object Push Service RecHandle: 0x10003 Service Class ID List: “OBEX Object Push” (0x1105) Protocol Descriptor List: “L2CAP” (0x0100) “RFCOMM” (0x0003) Channel: 3 “OBEX” (0x0008) Profile Descriptor List: “OBEX Object Push” (0x1105) Version: 0x0102 Service Name: AV Remote Control Target Service RecHandle: 0x10004 Service Class ID List: “AV Remote Target” (0x110c) Protocol Descriptor List: “L2CAP” (0x0100) PSM: 23 “AVCTP” (0x0017) uint16: 0x100 Profile Descriptor List: “AV Remote” (0x110e) Version: 0x0100 Service Name: BRCM Advanced Audio Service RecHandle: 0x10005 Service Class ID List: “Audio Source” (0x110a) Protocol Descriptor List: “L2CAP” (0x0100) PSM: 25 “AVDTP” (0x0019) uint16: 0x102 Profile Descriptor List: “Advanced Audio” (0x110d) Version: 0x0102 Service Name: OBEX File Transfer Service RecHandle: 0x10006 Service Class ID List: “OBEX File Transfer” (0x1106) Protocol Descriptor List: “L2CAP” (0x0100) “RFCOMM” (0x0003) Channel: 4 “OBEX” (0x0008) Profile Descriptor List: “OBEX File Transfer” (0x1106) Version: 0x0102 Service Name: PBAP Server Service RecHandle: 0x10007 Service Class ID List: “Phonebook Access – PSE” (0x112f) Protocol Descriptor List: “L2CAP” (0x0100) “RFCOMM” (0x0003) Channel: 19 “OBEX” (0x0008) Profile Descriptor List: “Phonebook Access” (0x1130) Version: 0x0101 Service Name: PBAP Server Service RecHandle: 0x10008 Service Class ID List: “Phonebook Access – PSE” (0x112f) Protocol Descriptor List: “L2CAP” (0x0100) “RFCOMM” (0x0003) Channel: 19 “OBEX” (0x0008) Profile Descriptor List: “Phonebook Access” (0x1130) Version: 0x0101Risk level: destructive. Review the command before running it.
Gotchas and Common Issues
Permission Verification - confirm execution permissions and path variables before invoking system binaries.
Version Compatibility - check software version release notes for deprecated flags or syntax changes.
Log Monitoring - inspect system logs (
journalctlor/var/log) to troubleshoot execution failures.
Following these steps ensures clean configuration, proper security boundaries, and reliable execution for check bluetooth services of a remote device.
Comments and corrections