GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana Menghubungkan Dan Mengirim Data Ke Port Serial Bluetooth Di Linux?

Saya mencoba mengatur port serial virtual melalui adaptor USB-Bluetooth di Linux dan mengirim pesan ke sana melalui perangkat Android. Saya menggunakan kernel 3.6. Saya berhasil memasangkan ke perangkat menggunakan gnome-bluetooth dan juga dapat mengirim file ke perangkat tersebut.

Untuk mengatur port serial, pertama-tama saya menambahkan saluran dengan profil SP ke adaptor saya:

sdptool add --channel=22 SP

Lalu saya panggil 'dengarkan' dengan rfcomm:

rfcomm listen /dev/rfcomm0 22

yang memblokir

Waiting for connection on channel 22

Rupanya rfcomm akan membuat /dev/rfcomm0 setelah koneksi berhasil. Setelah itu terjadi, saya ingin menggunakan sesuatu seperti cutecom untuk mengirim pesan bolak-balik ke perangkat yang terhubung.

Di perangkat Android saya, saya membuka terminal Bluetooth SPP (ada beberapa di luar sana, saya mencoba beberapa yang berbeda) dan mencoba menghubungkan. Semuanya gagal.

Karena saya berhasil memasangkan dan mengirim file tanpa masalah apa pun, saya tahu bahwa pemasangan dan komunikasi bluetooth berfungsi.

Saya tidak terlalu yakin apa lagi yang bisa saya coba. Saya menggunakan 'sdptool browse' di perangkat lokal saya dan perangkat Android untuk memastikan tidak ada konflik saluran RFCOMM.

Jawaban yang Diterima:

Sepertinya saya sudah berhasil melakukannya sekarang. Bluetooth tampaknya agak rewel. Saya merangkum langkah-langkah saya secara penuh untuk berjaga-jaga jika orang lain menganggapnya berguna (meskipun itu cukup seperti yang saya coba pada awalnya). Ini untuk Android JB (4.2.2) pada Nexus 4 dan Arch Linux 3.6.7-1, dengan bluez 4.101 pada Gnome 3.6 (dengan gnome-bluetooth).

(langkah ini mungkin tidak berguna) Matikan Bluetooth di Android dan putuskan sambungan Adaptor USB/Bluetooth Anda dari mesin Linux Anda (atau jika Anda memiliki mesin bawaan, atur ulang menggunakan hcitool devname reset)

Hubungkan/hidupkan adaptor bluetooth Anda di Linux. Pastikan adaptor Anda terlihat (dapat disetel di gnome-bluetooth — Anda akan melihat ikon baki sistem bluetooth).

Nyalakan bluetooth di perangkat Android Anda. Gunakan Android untuk memasangkan ke adaptor (saya tidak dapat memasangkan sebaliknya dari Linux). Sebuah dialog akan muncul meminta Anda untuk kunci. Masukkan PIN apa pun yang Anda inginkan. Gnome akan memunculkan pemberitahuan yang meminta Anda untuk memasukkan kunci; masukkan PIN yang sama dengan yang Anda masukkan sebelumnya. Perangkat Android Anda dan kuncinya harus dipasangkan pada saat ini.

Di Linux, buka terminal dan periksa layanan bluetooth apa yang tersedia dengan mengetik

sdptool browse local

Jika Anda sudah memiliki layanan port serial, catat salurannya. Jika tidak, Anda dapat menambahkan layanan:

sdptool add --channel=22 SP

Sekarang dengarkan di saluran ini menggunakan rfcomm:

sudo rfcomm listen /dev/rfcomm0 22

rfcomm akan memblokir, mendengarkan koneksi dengan pesan seperti

Waiting for connection on channel 22

Kembali di Android, saya menggunakan aplikasi BlueTerm (http://pymasde.es/blueterm/, juga tersedia secara bebas di google play store) meskipun aplikasi serupa seharusnya berfungsi. Buka BlueTerm, buka opsi> Hubungkan Perangkat:pilih adaptor yang dipasangkan.

Terkait:Freebsd – Bagaimana cara memulai FreeBSD dalam mode konsol?

Semoga aplikasinya bisa konek. Anda akan melihat verifikasi tambahan di terminal tempat Anda memblokir mendengarkan dengan pesan seperti:

Waiting for connection on channel 22
Connection from 22:22:22:22:22:22 to /dev/rfcomm0
Press CTRL-C for hangup

Apa pun yang Anda ketikkan ke dalam aplikasi BlueTerm harus masuk ke /dev/rfcomm0. Anda dapat melihat hal-hal muncul saat Anda mengetik dengan membuka terminal baru dan melakukan sesuatu seperti:

cat /dev/rfcomm0

Linux
  1. Bagaimana Cara Mengirim Data Ke Port Serial Dan Melihat Jawabannya?

  2. Linux – Port Serial Raspberrypi?

  3. Sinkronisasi DAEMON – Menyinkronkan Data dari Linux ke Perangkat Android dan iOS

  1. Cara Mengirim Email Dengan Lampiran dan Isi dari Linux

  2. Bagaimana saya bisa memantau data pada port serial di Linux?

  3. Bagaimana cara membuka, membaca, dan menulis dari port serial di C?

  1. Cara Aman Dan Permanen Menghapus Data Anda Di Linux

  2. Linux – Bagaimana Menemukan Proses Menggunakan Port Serial?

  3. Pendengar dan juru bahasa port serial Linux?