LINUX byDreamy postedMay 25, 2017

bluetooth on Ubuntu

?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

+ - Up Down Comment Print
power on
  • hciconfig [장치이름] up : hciconfig hci0 up
scan devices
  • hcitool scan
Browse all available services on the device specified by a Bluetooth address as a parameter.
  • sdptool  browse bdaddr : sdptool browse D0:57:85:C1:5E:D6
Retrieve all possible service records.
  • sdptool  records bdaddr : sdptool records D0:57:85:C1:5E:D6



--------------------------------------------------------------------------------------------------------------------------------------------------


Install bluez

mkdir Bluez
cd BlueZ

git clone git://git.kernel.org/pub/scm/bluetooth/bluez.git

mv bluez bluez-5.28

sudo apt-get install libudev-dev libpcre3-dev libtool libglib2.0-dev libdbus-1-dev elfutils libelf-dev libdw-dev libical-dev libsbc-dev libspeexdsp-dev libreadline6 libreadline6-dev automake

 

edit ./bootstrap-configure : add --enable-library \

                                           add --disable-systemd \

                                           delete --enable-android \

./bootstrap-configure
make

sudo make install

GATT 용 rpi

 

GATT 제외한 나머지 profile 용 rpi

git checkout ad410057b17933339774fa7e4a12bfc87bfd545d

 

bluez configuration 수정

/etc/bluetooth/main.conf 수정

  • DiscoverableTimeout = 0 주석해제
  • PairableTimeout = 0 주석해제
  • Class = 0x000100 주석해제

bluetoothd 실행

sudo /usr/libexec/bluetooth/bluetoothd -n -d

SSP mode enable

sungmokshin@sungmokshin-desktop2:~/bt_automation/automation-tests$ hciconfig hci0 sspmode
hci0:   Type: BR/EDR  Bus: USB
    BD Address: 00:49:00:C0:20:00  ACL MTU: 1021:8  SCO MTU: 64:1
    Simple Pairing mode: Disabled
sungmokshin@sungmokshin-desktop2:~/bt_automation/automation-tests$ sudo hciconfig hci0 sspmode 1
[sudo] password for sungmokshin:
sungmokshin@sungmokshin-desktop2:~/bt_automation/automation-tests$ hciconfig hci0 sspmode
hci0:   Type: BR/EDR  Bus: USB
    BD Address: 00:49:00:C0:20:00  ACL MTU: 1021:8  SCO MTU: 64:1
    Simple Pairing mode: Enabled
sungmokshin@sungmokshin-desktop2:~/bt_automation/automation-tests$

 

 

export DISPLAY=:0

 

SPP

SPP-loopback.py를 /home/sungmokshin/BlueZ/bluez-5.28/test로 복사

chmod 755 SPP-loopback.py

현재 rpi에서 rfcomm device node release 시 kernel panic 문제 있음

Can't create RFCOMM TTY: Address already in use

재부팅 하지 않는 이상 rfcomm 접속 불가

laptop에서는 kernel panic 빈도가 rpi보다 적음 (rpi는 2번 rfcomm 접속 시 대부분 kernel panic)

1076.910112] Bluetooth: TIOCGSERIAL is not supported
1089.034997] Bluetooth: TIOCGSERIAL is not supported
1089.037061] Bluetooth: TIOCGSERIAL is not supported
1089.037689] ------------[ cut here ]------------
1089.037739] WARNING: CPU: 1 PID: 1507 at drivers/tty/tty_port.c:143 tty_port_destructor+0x84/0x88()
1089.037756] Modules linked in: rfcomm fuse bnep btusb btrtl btintel btbcm bluetooth joydev rfkill evdev bcm2835_wdt bcm2835_gpiomem uio_pdrv_genirq uio snd_bcm2835 snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_seq_device snd_timer snd ipv6
1089.037945] CPU: 1 PID: 1507 Comm: kworker/1:0 Not tainted 4.4.11-v7+ #888
1089.037958] Hardware name: BCM2709
1089.037986] Workqueue: events release_one_tty
1089.038056] [<80018724>] (unwind_backtrace) from [<80014058>] (show_stack+0x20/0x24)
1089.038092] [<80014058>] (show_stack) from [<803205a4>] (dump_stack+0xd4/0x118)
1089.038134] [<803205a4>] (dump_stack) from [<80025300>] (warn_slowpath_common+0x98/0xc8)
1089.038170] [<80025300>] (warn_slowpath_common) from [<800253ec>] (warn_slowpath_null+0x2c/0x34)
1089.038209] [<800253ec>] (warn_slowpath_null) from [<803794d4>] (tty_port_destructor+0x84/0x88)
1089.038273] [<803794d4>] (tty_port_destructor) from [<80379524>] (tty_port_put+0x4c/0x50)
1089.038363] [<80379524>] (tty_port_put) from [<7f1e4010>] (rfcomm_tty_cleanup+0x5c/0x60 [rfcomm])
1089.038464] [<7f1e4010>] (rfcomm_tty_cleanup [rfcomm]) from [<8036f3e4>] (release_one_tty+0x3c/0xb4)
1089.038522] [<8036f3e4>] (release_one_tty) from [<8003c634>] (process_one_work+0x154/0x458)
1089.038573] [<8003c634>] (process_one_work) from [<8003c98c>] (worker_thread+0x54/0x500)
1089.038604] [<8003c98c>] (worker_thread) from [<80042668>] (kthread+0xec/0x104)
1089.038638] [<80042668>] (kthread) from [<8000fbc8>] (ret_from_fork+0x14/0x2c)
1089.038659] ---[ end trace 2c2c2e5cebcc4d2c ]---

 

 

 

 

PAN

bt-pan을 /home/sungmokshin/BlueZ/bluez-5.28/test로 복사

chmod 755 bt-pan




나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소

Designed by sketchbooks.co.kr / sketchbook5 board skin

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5