LINUX.ORG.RU

Bluetooth терминал в Linux


0

1

Добрый вечер. Есть ли в лине такой терминал, как на android, который позволяет отправлять/принимать информацию по синезубу, например от arduino. Вроде бы android - на Linux, а найти не могу.

Ответ на: комментарий от sergej

Гугл больше запутал. Мне нужно следующее: простая программка, которая может отправлять и принимать текст по блюпупу.

promistrio
() автор топика
Ответ на: комментарий от promistrio

Всё зависит от того, кто работает на другой стороне.

rfcomm делает тебе виртуальный последовательный порт, на котором ты можешь использовать любую программу-терминал: picocom, minicom, screen и т.д.

Но это если удаленное устройство предоставляет SPP - serial port profile.

Получить список устройств, доступные профили можно командами hcitool и sdptool, ищи в манах слова inquiry, scan.

sergej ★★★★★
()
Ответ на: комментарий от sergej

Ну для нахождения устройств я всегда использовал hcitool scan. А вот как отправлять/получать оттуда информацию - это уже другой вопрос. Я хочу этим терминалом пообщаться с HC-06 для arduino.

promistrio
() автор топика
Ответ на: комментарий от sergej

Короче я добавил все как положено в /etc/bluetooth/rfcomm.conf, забиндил все это на канал 0. Настроил mimicom на /dev/rfcomm0 открыл, как положено, а ничего не идет. На HC-06 должна загореться лампочка, а она мигает(на мобилке пробовал, все пашет). Никакого сопряжения не делал, ибо не знаю как, да и на телефоне все без него вроде работало. В мане сказано, что при открытии файла rfcomm автоматом создаст подключение. Пока такого не наблюдается. Может нужно какое-то заклинание отправить?

promistrio
() автор топика
Ответ на: комментарий от sergej

Как-то так

HCI sniffer - Bluetooth packet analyzer ver 2.5
device: hci0 snap_len: 1500 filter: 0xffffffffffffffff
< HCI Command: Create Connection (0x01|0x0005) plen 13
    bdaddr 20:14:03:24:37:47 ptype 0xcc18 rswitch 0x01 clkoffset 0x0000
    Packet type: DM1 DM3 DM5 DH1 DH3 DH5 
> HCI Event: Command Status (0x0f) plen 4
    Create Connection (0x01|0x0005) status 0x00 ncmd 1
> HCI Event: Connect Complete (0x03) plen 11
    status 0x00 handle 39 bdaddr 20:14:03:24:37:47 type ACL encrypt 0x00
< HCI Command: Read Remote Supported Features (0x01|0x001b) plen 2
    handle 39
> HCI Event: Command Status (0x0f) plen 4
    Read Remote Supported Features (0x01|0x001b) status 0x00 ncmd 0
> HCI Event: Page Scan Repetition Mode Change (0x20) plen 7
    bdaddr 20:14:03:24:37:47 mode 1
> HCI Event: Max Slots Change (0x1b) plen 3
    handle 39 slots 5
> HCI Event: Command Status (0x0f) plen 4
    Unknown (0x00|0x0000) status 0x00 ncmd 1
> HCI Event: Read Remote Supported Features (0x0b) plen 11
    status 0x00 handle 39
    Features: 0xff 0xff 0x8f 0x78 0x18 0x18 0x00 0x80
< HCI Command: Remote Name Request (0x01|0x0019) plen 10
    bdaddr 20:14:03:24:37:47 mode 2 clkoffset 0x0000
< ACL data: handle 39 flags 0x00 dlen 10
    L2CAP(s): Info req: type 2
> HCI Event: Command Status (0x0f) plen 4
    Remote Name Request (0x01|0x0019) status 0x00 ncmd 1
> HCI Event: Number of Completed Packets (0x13) plen 5
    handle 39 packets 1
> ACL data: handle 39 flags 0x02 dlen 16
    L2CAP(s): Info rsp: type 2 result 0
      Extended feature mask 0x0000
< ACL data: handle 39 flags 0x00 dlen 12
    L2CAP(s): Connect req: psm 3 scid 0x0040
> ACL data: handle 39 flags 0x02 dlen 16
    L2CAP(s): Connect rsp: dcid 0x0040 scid 0x0040 result 1 status 2
      Connection pending - Authorization pending
> HCI Event: Remote Name Req Complete (0x07) plen 255
    status 0x00 bdaddr 20:14:03:24:37:47 name 'HC-06'
> HCI Event: Number of Completed Packets (0x13) plen 5
    handle 39 packets 1
> HCI Event: PIN Code Request (0x16) plen 6
    bdaddr 20:14:03:24:37:47
< HCI Command: PIN Code Request Negative Reply (0x01|0x000e) plen 6
    bdaddr 20:14:03:24:37:47
> HCI Event: Command Complete (0x0e) plen 10
    PIN Code Request Negative Reply (0x01|0x000e) ncmd 1
    status 0x00 bdaddr 20:14:03:24:37:47
> ACL data: handle 39 flags 0x02 dlen 16
    L2CAP(s): Connect rsp: dcid 0x0000 scid 0x0040 result 3 status 0
      Connection refused - security block
> HCI Event: Disconn Complete (0x05) plen 4
    status 0x00 handle 39 reason 0x13
    Reason: Remote User Terminated Connection
«Connection refused - security block» - что это значит? Может пин 1234 отправить? rfcomm ругается на строку pin «1234»; в /etc/bluetooth/rfcomm.conf Опишу то, как я подключаюсь. сначала правил файл rfcomm.conf
rfcomm0 {
bind yes;
device 20:14:03:24:37:47;
channel 1;
comment "HC-06";
}
Потом в консоли
rfcomm bind all
rfcomm connect all
minicom
нифига не получаю. Косяк в том, что после rfcomm connect хватаю Can't connect RFCOMM socket: Connection refused. выхлоп hcidump как раз в данный момент и происходит.

promistrio
() автор топика
Ответ на: комментарий от sergej

Во как, если открыть rfcomm0 через minicom, то получаю бесконечный выхлоп hcidump.

< ACL data: handle 39 flags 0x00 dlen 12
    L2CAP(s): Connect req: psm 3 scid 0x0040
> HCI Event: Number of Completed Packets (0x13) plen 5
    handle 39 packets 1
> ACL data: handle 39 flags 0x02 dlen 16
    L2CAP(s): Connect rsp: dcid 0x19f3 scid 0x0040 result 1 status 2
      Connection pending - Authorization pending
> ACL data: handle 39 flags 0x02 dlen 16
    L2CAP(s): Connect rsp: dcid 0x0000 scid 0x0040 result 3 status 0
      Connection refused - security block

Вывод проходит циклически

promistrio
() автор топика
Ответ на: комментарий от sergej

Что-то я в debian sid не могу найти пакет bluetoothctl

promistrio
() автор топика
Ответ на: комментарий от sergej

bluetooth-control-center тоже не может подключиться. Он просит ввести шестизначный код для HC-06, а это сделать невозможно.

promistrio
() автор топика
Ответ на: комментарий от sergej

Я поставил на второй комп lubuntu и оттуда пашу. Спасибо за помощь.

promistrio
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.