어쩌라구..?? ㅡㅡa..

Posted
Filed under Linux/utility
RPI4에서 했는데, rpi3나 usb bt등 하여간 general하게 bt가 사용 가능하다면 동작할것으로 생각한다.

우선 linux에서 bt serial port 설정이 필요하다. 아래 사이트 보고 serial port 설정한다.
Setting Up Bluetooth Serial Port Profile on Raspberry Pi using sdptool

serial port 설정이 되었다면 linux에 gps가 동작하도록 설정한다.
다음 패키지를 설치한다 : gpsd gpsd-tools gpsd-clients
패키지 설치 후 usb gps 모듈을 연결하고 cgps 명령을 실행하여 gps 동작 상태를 확인한다.
gpsd 자체는 별다른 설정을 하지 않아도 잘 동작했고, gps 모듈을 인식하기만 하면 좌표를 잡지 못했더라도 상관은 없다. gpsd가 gps모듈에서 데이터를 잘 읽어오는것을 확인하기만 하면 된다.

이제 gps와 bt를 묶어서, bt serial port 연결시 gps데이터를 보내주도록 한다.
/etc/rc.local 파일을 root 권한으로 열어서 맨 마지막 부근, exit 명령 전에 아래 코드를 추가한다.
sudo rfcomm watch hci0 0 gpspipe --nmea --output {} &
위 코드는 bt serial 연결을 기다리다가, 접속시에 gpspipe 명령을 통해 gpsd로부터 nmea텍스트를 BT rfcomm 파일로 출력하는 명령이다.
직접 동작하는것을 보고 싶다면 부팅시 시작한 프로세스를 죽이고 shell에서 직접 실행해 보면 된다.

이렇게 하면 usb gps를 꽂고 rpi를 켜면 bt gps를 사용할 수 있게 된다.
2022/10/19 01:33 2022/10/19 01:33

Steven over blog

Steven over blog

Steven over blog

Steven over blog

Steven over blog

Posted
Filed under Linux/system
lubuntu 16.04 에서 -

블루투스 헤드셋 페어링하려고 할때 아래 에러가 발생하면
headset Connection Failed: blueman.bluez.errors.DBusFailedError: Protocol not available
아래 명령을 실행하여 패키지를 설치한다.
sudo apt-get install pulseaudio-module-bluetooth
pactl load-module module-bluetooth-discover
출처 : https://askubuntu.com/questions/801404/bluetooth-connection-failed-blueman-bluez-errors-dbusfailederror-protocol-no


내 경우는 audio output이 기본으로 전환되지 않는다. 오디오 출력을 BT로 돌려야 한다.
확인해보니 mixer GUI가 없다.
아래 링크 참조하여 pauvcontrol을 선택하고 출력을 BT headset으로 돌리면 소리가 난다.

https://askubuntu.com/questions/80384/where-are-the-lxde-sound-preferences


hot key 설정으로 세팅한 lubuntu 핫키로 볼륨조절이 되지 않는다.
pauvcontrol 창을 띄우고 아래 아이콘을 누르면 DEFAULT_SINK가 변경되어 핫키로 BT를 조정하게 된다.



블루투스 연결되었을때 자동으로 BT로 전환하는 방법

/etc/pulse/default.pa에 아래 부분을 찾아 한줄을 추가한다.
.ifexists module-bluetooth-discover.so
load-module module-bluetooth-discover
load-module module-switch-on-connect #추가
.endif

아래 명령도 실행한다.
pactl load-module module-switch-on-connect

참조 : Auto switch to A2DP bluetooth device when connected in Ubuntu

2018/01/15 15:59 2018/01/15 15:59
Posted
Filed under Linux/system
참조 링크 : http://wiki.bluez.org/wiki/HOWTO/AudioDevices

내가 사용중인 블루투스 동글은 웨이브시스텍 BT-2000S 모델이고
헤드셋은 Jabra BT620S를 사용중이다.
혹시나 리눅스에서 동작하는 동글 찾는사람 있을까봐 미리 적는다.

환경은 우분투 7.10 gutsy 에서 설정한 내용이다.
다른 배포판이라도 bluez-util 라이브러리 버전이
3.16이상이면 모두 동일하게 설정할 수 있다고 한다.
설정법도 매우 간단하다.

일단 블루투스 장치를 활성화 시키고 블루투스 장치를 인식했다는 메세지를 확인한다.
그리고 홈 디렉토리에 .asoundrc 파일을 만든다. 기본으로 파일이 없다.
pcm.bluetooth {
  type bluetooth
  device 00:13:17:72:4E:13  # User's headset address
}

pcm.!default {
  type plug
  slave.pcm "bluetooth"
}

#pcm.!default {
#  type route
#    slave.pcm "bluetooth"
#    ttable {
#      0.1 = 1
#      1.0 = 1
#    }
#}

파일 내용을 좀 들여다 보면,
pcm.bluetooth 항목에서 device 번호를 사용자에 맞도록 설정해 주어야 한다.
헤드셋을 페어링 상태로 두고 쉘에서 hcitool scan 명령을 실행시켜 검색해보면
헤드셋의 주소를 알 수 있고, 그 값을 적어주면 된다.

나머지 두 항목은 디폴트 출력 장치를 설정하는 부분인데,
주석(#)으로 묶여있는 항목은 헤드셋의 좌.우를 바꾸는 설정이다.
어떤 모듈인지는 모르겠으나, 블루투스로 들으면 좌.우가 바뀌어 나오는 경우가 있다고 한다.
이런 현상이 있으면 주석을 이용해서 바꿔 주면 해결된다.

그리고 디폴트 항목을 둘 다 주석처리하면
원래 사운드 장치로 출력을 되돌릴수 있다.

설정을 마쳤으면 alsa 시스템을 재시작시킨다.
$ sudo /etc/init.d/alsa-utils restart
그리고 헤드셋을 페어링 모드로 바꾸고 음악을 재생하면
페어링 키 값을 넣으라는 메세지가 뜬다.
키 값을 넣고 정상적으로 연결되면 음악이 잘 나오는걸 확인할 수 있을것이다.
2007/12/13 06:38 2007/12/13 06:38