저는 Linux를 처음 접했고, 블루투스를 통해 스크립트를 실행하기 위해 beaglebone black(debian)을 사용하려고 합니다. 이 스크립트를 사용하면 몇 가지 간단한 명령을 실행하고 보드에서 몇 가지 작업을 수행할 수 있습니다. 블루투스를 통해 보드에 연결하고 Android 휴대폰이나 Windows 랩탑에서 블루투스 직렬 앱을 사용하여 메시지를 보낼 수 있지만 이는 문자열에 지나지 않습니다. 명령을 실행하려고 하면 putty를 사용하여 SSH를 통해 실행할 때처럼 작동하지 않습니다.
나는 이 책을 사용하고 있는데, 그 외에는 블루투스에 관한 많은 정보가 없습니다.https://www.amazon.com/Exploring-BeagleBone-Techniques-Building-Embedded/dp/1119533163
bluez 버전 5.50을 설치했습니다.
sudo apt install bluetooth bluez
그런 다음 /lib/systemd/system으로 이동하여 명령을 실행합니다.
more bluetooth.service
여기에서 다음 내용으로 줄 끝에 "--compat"를 추가하여 bluetooth.service 파일을 수정했습니다.ExecStart=/usr/lib/블루투스/블루투스d--호환 가능
그런 다음 종료하고 블루투스를 다시 시작했습니다.
sudo systemctl restart bluetooth.service
이제 Bluetooth 직렬 포트를 채널 22로 변경합니다.
sudo sdptool add --channel=22 SP
마지막으로 블루투스 어댑터를 설정하여 음악을 들을 수 있었습니다.
sudo rfcomm listen /dev/rfcomm0 22
그런 다음 현재 putty ssh를 열어두어 블루투스 직렬 앱을 사용하여 연결할 수 있고(블루투스 연결이 있음이 표시됨) 명령을 실행하면 putty를 사용하여 다른 ssh를 열 수 있습니다.
cat /dev/rfcomm0
새 터미널 창에는 직렬 애플리케이션에서 보낸 모든 내용이 표시됩니다. 지금까지 이 프로세스에 대해 내가 이해한 바는 응용 프로그램이 보내는 모든 것이 rfcomm0으로 가서 표시된다는 것입니다. 즉, 명령이 아무 것도 수행하지 않거나 무언가를 실행하기 위해 아무데도 가지 않는다는 의미입니다. 책에는 minicom을 설치할 수 있다고 나와 있지만 나에게는 효과가 없었습니다.
궁극적으로 블루투스를 통해 노트북에서 명령을 실행하고 실행할 수 있는 Python 스크립트를 보드에 갖고 싶습니다. 앱에서 보내는 문자열의 위치를 변경할 수 있는 방법이 있습니까? 아니면 블루투스를 통한 SSH가 실행될 수 있습니까?