Отправка события HCI завершилась неудачно с неверным аргументом
Я пытаюсь отправить необработанное сообщение на мое устройство Bluetooth. Я попытался отправить событие завершения подключения на устройство. Я упаковал данные, связанные с правой ручкой. Однако, когда я отправляю данные, я получаю неверную ошибку аргумента.
raw_sock = bt.hci_open_dev(bt.hci_devid(src_hci)) flt = bt.hci_filter_new() bt.hci_filter_set_ptype(flt, bt.HCI_EVENT_PKT) raw_sock.setsockopt(bt.SOL_HCI, bt.HCI_FILTER, flt) raw_sock.sendall(binascii.unhexlify('04030b004700xxxxxxxxxxxx0100')) raw_sock.close()
*** ошибка: (22, "Недопустимый аргумент") xxxxxxxxxxxx - это адрес ключа Bluetooth
Когда я пытаюсь отправить данные с другим типом пакета, сообщение успешно отправлено. Почему BlueZ не смог отправить это событие? Потому что я не контролирующий?
Обновление - я попытался перейти на мастер, выполнив следующие команды
hciconfig -a hci0 lm master
hciconfig -a hcio lp hold
но это не сработало.