Я не очень хорошо разбираюсь в Linux, но это похоже на проблему новичка, которую я не могу решить.
У меня есть контроллер (контроллер BLE с образцом Zephyr hci_usb), и он работает только с парой служб Bluetooth, но не с некоторыми другими.
Вот результаты, которые я получаю, когда пытаюсь его найти, и могу ли я его сканировать:
hciconfig (без адреса BD)
$hciconfig
hci0: Тип: Первичная шина: USB
Адрес BD: 00:00:00:00:00:00 ACL MTU: 27:7 SCO MTU: 0:0
РАБОТАЕТ
Байты RX: 1593 acl: 0 sco: 0 события: 88 ошибки: 0
Байты TX: 285 acl: 0 sco: 0 команды: 51 ошибки: 0
bluetoothctl (имеет адрес BD)
Скан работает
$ судо bluetoothctl
Агент зарегистрирован
[Bluetooth] # список
Контроллер EB:XX:XX:XX:XX:XX BlueZ 5.50 [по умолчанию]
бтмгмт (находит контроллер)
Скан работает
$ sudo btmgmt --index 0
[hci0]# автоматическое включение
Найден контроллер с индексом 0
[hci0]# найти -l
hcitool (не находит контроллер)
Скан не работает
$ hcitool сканирование
Сканирование...
Ошибка запроса: операция не поддерживается
бтмон
$ судо бтмон
Bluetooth-монитор версии 5.50
= Примечание: версия Linux 5.10.60+ (armv6l) 0.605127
= Примечание: версия подсистемы Bluetooth 2.22 0.605143
= Новый индекс: 00:00:00:00:00:00 (основной, USB, hci0) [hci0] 0,605152
= Открытый индекс: 00:00:00:00:00:00 [hci0] 0,605156
= Информация об индексе: 00:00:00:00:00:00 (не назначено) [hci0] 0,605163
@ MGMT Открыто: bluetoothd (привилегированная) версия 1.18 {0x0001} 0.605171
@ MGMT Open: btmon (привилегированный) версии 1.18
лучшая кепка (не могу даже использовать его, но моя самая важная потребность в данный момент, пожалуйста, помогите )
>> ble.recon вкл.
паника: ошибка выполнения: границы среза выходят за пределы диапазона [:1] с емкостью 0
горутина 1 [работает]:
github.com/bettercap/gatt/linux/cmd.(*Cmd).SendAndCheckResp(0x1c637c0, 0xa0c760, 0x1c64fe8, 0x1c6501c, 0x1, 0x1, 0x0, 0x0)
/home/pi/go/pkg/mod/github.com/bettercap/[email protected]/linux/cmd/cmd.go:98 +0x1b4
github.com/bettercap/gatt/linux.(*HCI).resetDevice(0x18ac0a0, 0x93dc10, 0x18ac0a0)
/home/pi/go/pkg/mod/github.com/bettercap/[email protected]/linux/hci.go:273 +0x2f0
github.com/bettercap/gatt/linux.NewHCI(0xffffffff, 0x184fd01, 0xff, 0x2, 0x0, 0x0)
/home/pi/go/pkg/mod/github.com/bettercap/[email protected]/linux/hci.go:90 +0x4c0
github.com/bettercap/gatt.NewDevice(0x184fd1c, 0x2, 0x2, 0x3c, 0x184fd24, 0x1, 0x1)
/home/pi/go/pkg/mod/github.com/bettercap/[email protected]/device_linux.go:57 +0x114
github.com/bettercap/bettercap/modules/ble.(*BLERecon).Configure(0x18a2780, 0x0, 0x4)
/home/pi/go/pkg/mod/github.com/bettercap/[email protected]+incompatible/modules/ble/ble_recon.go:165 +0x1cc
github.com/bettercap/bettercap/modules/ble.(*BLERecon).Start(0x18a2780, 0x1, 0x1b2c001)
/home/pi/go/pkg/mod/github.com/bettercap/[email protected]+incompatible/modules/ble/ble_recon.go:183 +0x1c
github.com/bettercap/bettercap/modules/ble.NewBLERecon.func1(0x0, 0x0, 0x0, 0x84f358, 0xc)
/home/pi/go/pkg/mod/github.com/bettercap/[email protected]+incompatible/modules/ble/ble_recon.go:56 +0x1c
github.com/bettercap/bettercap/session.(*ModuleHandler).Exec(0x1b2c0c0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/pi/go/pkg/mod/github.com/bettercap/[email protected]+несовместимый/session/module_handler.go:74 +0x80
github.com/bettercap/bettercap/session.(*Session).Run(0x18fb2c0, 0x1c64e30, 0xc, 0x1, 0x1)
/home/pi/go/pkg/mod/github.com/bettercap/[email protected]+несовместимый/session/session.go:416 +0x284
основной.главный()
/home/pi/go/pkg/mod/github.com/bettercap/[email protected]+несовместимый/main.go:94 +0x8c8
В этот момент я не знаю, что делать.
Спасибо большое за твою помощь.