라즈베리파이 블루투스 연결 자동화
밑 sh 스크립트를 /etc/rc.local 폴더에 추가해놓으면 자동화
sudo bluetoothctl <<EOF
power on
discoverable on
pairable on
EOF
sudo hciconfig hci0 sspmode 0
sudo bt-agent -c NoInputNoOutput -p /root/bluetooth.cfg &
blueman이 충돌일으켜서 안되면 blueman 제거
sudo apt remove blueman
또 참고했던거
https://www.raspberrypi.org/forums/viewtopic.php?p=947185#p947185
sudo systemctl daemon-reload
sudo systemctl restart bluetooth.service
Pi에 SP 프로필을 추가해야합니다. 이 파일을 편집하십시오.
코드 : 모두 선택
sudo nano /etc/systemd/system/dbus-org.bluez.service
'ExecStart ='줄 끝에 호환성 플래그 '-C'를 추가합니다. 그 뒤에 새 줄을 추가하여 SP 프로필을 추가합니다. 두 줄은 다음과 같아야합니다.
코드 : 모두 선택
ExecStart=/usr/lib/bluetooth/bluetoothd -C
ExecStartPost=/usr/bin/sdptool add SP
파일을 저장하고 재부팅하십시오. Pi와 전화를 bluetoothctl과 페어링하고 신뢰하십시오.
이제 Pi의 터미널에 다음을 입력하십시오.
코드 : 모두 선택
sudo rfcomm watch hci0
이제 앱에서 연결하여 텍스트 또는 매크로를 보낼 수 있습니다. minicom을 사용하는 Pi에서, PySerial을 사용하는 Python 또는 선호하는 직렬 통신 소프트웨어에서 읽을 수 있습니다.
sudo nano /etc/dbus-1/system.d/bluetooth.conf
여기서
<policy user="blePeripheral">
<allow own="org.bluez"/>
<allow send_destination="org.bluez"/>
<allow send_interface="org.bluez.GattCharacteristic1"/>
<allow send_interface="org.bluez.GattDescriptor1"/>
<allow send_interface="org.freedesktop.DBus.ObjectManager"/>
<allow send_interface="org.freedesktop.DBus.Properties"/>
</policy>
추가해줌