Usiłuję ustawić (transmisję) moc transmisji kluczy sprzętowych Bluetooth zarówno z chipsetami Broadcom, jak i CSR, używając hciconfig
np .:
hciconfig hci0 inqtpl 3
Ale niezależnie od poprawnego parametru, który przekażę, odczyt wartości później zawsze daje 0, tak jak poniżej:
hci0: Type: BR/EDR Bus: USB
BD Address: 00:02:72:D6:6B:25 ACL MTU: 1021:8 SCO MTU: 64:1
Inquiry transmit power level: 0
Gdy przekazuję nieprawidłowe wartości, pojawia się komunikat o błędzie:
Can't set inquiry transmit power level on hci0: Input/output error (5)
Oczywiście parametr jest sprawdzany pod kątem ważności. Jestem prawie pewien, że jest sprawdzany przez chipsety, ponieważ otrzymuję te same wyniki przy ręcznym wysyłaniu odpowiednich poleceń HCI.
Oba chipsety twierdzą również, że obsługują tę funkcję:
# hciconfig hci0 features
hci0: Type: BR/EDR Bus: USB
BD Address: 00:02:72:D6:6B:25 ACL MTU: 1021:8 SCO MTU: 64:1
Features page 0: 0xbf 0xfe 0xcf 0xfe 0xdb 0xff 0x7b 0x87
[...]
<err. data report> <non-flush flag> <LSTO> <inquiry TX power>
[...]
Czy coś się nie zgadza, czy może tylko oba używane przeze mnie chipsety nie obsługują tej funkcji?
Odpowiedzi:
Wystarczy dwukrotnie sprawdzić:
czy możesz uzyskać maksymalną i domyślną wartość za pomocą bccmd psget? dawny:
A kiedy te wartości zostaną odebrane, czy możesz spróbować czegoś pomiędzy tym zakresem, ustawiając na przykład 0x1?
Również iirc, 1 to maksimum sprzętu, a 0,5 to 50% mocy tranzytowej, która może być zależna od sterownika, więc w twoim przypadku mogą to być śmieci.
Byłem prawie pewien, że istnieje procedura sklepu, do której należy zadzwonić po ustawieniu mocy tranzytu, aby urządzenie zaczęło z niej korzystać, aby zapobiec próbom natychmiastowego ustawienia wadliwej mocy tranzytu.
Czy to pomaga cokolwiek:
http://www.spinics.net/lists/linux-bluetooth/msg16546.html
źródło
bccmd
.bccmd psget 0x0017
dajeCan't execute command: No such device or address (6)
mój moduł CSR, podczas gdy0x0001
działa.bccmd pslist
zwraca raczej krótką listę 7 poleceń, która nie zawiera 0x0017. Poza tymbccmd buildname
stwierdzaodj_4hci_rom_vm_bt2.1_23e_0806121029_encr128
. Może oprogramowanie jest po prostu za stare? Czy mogę to zaktualizować?bccmd
obsługę odczytu / ustawiania domyślnych i maksymalnych mocy tx (rozdziały 3.9 i 3.10 w eestud.kku.ac.th/~moo/datasheet/Bluetooth/BlueCore/... ). Byłem w stanie ustawić te wartości na 0 lub 4, nic więcej. Jednak ustawienie tych wartości nie ma praktycznego wpływu na zasięg klucza. Co ciekawe,hciconfig inqtpl
teraz informuje,4
czy ustawiłem wartości4
chociaż ...Próbować:
źródło
działa z moim sprzętem opartym na CSR8510 A10
źródło