Jestem właścicielem firmy Logitech M555b myszki do użytku z moim HP EliteBook 8570w laptopa z systemem Kubuntu 12.04. Działa dobrze zaraz po połączeniu za pomocą modułu sterującego KDE Bluetooth.
Jednak po pewnym czasie (pozornie losowym) zaczyna się opóźniać. Ruchy są opóźnione o około 500 ms na krótki okres czasu. Zwykle też odzyskuje po pewnym czasie, ale może to zająć minuty. Wszystkie działania są opóźnione: ruchy, klikanie, przewijanie. Ponadto ruchy mogą być w tym czasie niepewne.
Obejściem, które zawsze działa przez ten sam krótki czas, jest rozłączenie myszy ponownie. Można to zrobić za pomocą tego samego modułu sterującego KDE Bluetooth.
Czego już próbowałem?
Uruchamianie w czasie uruchamiania:
echo on > `readlink -f /sys/class/bluetooth/hci0`/../../../power/level
Aby wyłączyć wszelkie funkcje oszczędzania energii w
hci0
urządzeniu Bluetooth .Sprawdź baterie myszy (to tylko tydzień, inne nowe baterie: ten sam wynik)
- Sprawdzanie dzienników i komunikatów jądra na temat wpisów związanych z Bluetooth: brak oprócz oczekiwanych komunikatów w czasie połączenia.
- Używam jądra
3.5.0-13-generic
zgodnie z PPA-edgerami . Uruchamianie zwykłego jądra 3.2 Precise powoduje takie samo zachowanie.
Niektóre inne informacje, które mogą pomóc:
- Dzieje się tak, gdy żadne inne połączenia Bluetooth nie są aktywne w urządzeniu.
- Podobne objawy występują również na moim stereofonicznym zestawie słuchawkowym Bluetooth (A2DP), ale wtedy jest to opóźnianie i pomijanie dźwięku. Zamiana profili Bluetooth zgodnie z opisem tutaj pomaga. Wniosek: to nie mysz jest wadliwa.
- Zestaw słuchawkowy zawsze działał dobrze, używając mojego martwego Thinkpad T61p z wbudowanym Bluetooth.
Moduł bluetooth w moim laptopie jest podłączony przez USB i pokazuje się jako
0a5c:21e1 Broadcom Corp.
Wyłączenie wbudowanego adaptera Bluetooth i korzystanie z innego działa dobrze, bez opóźnień.
0a5c:2046 Broadcom Corp. Bluetooth Device
Jestem mobilny i kilka osób wokół mnie korzysta z Bluetooth w pracy (głównie A2DP). Dzieje się tak również w domu, gdzie moi sąsiedzi prawdopodobnie również używają Bluetooth. To mógł być tylko zakłócenia, ale myślę, że połączenia Bluetooth należy po prostu wskoczyć na inny kanał. Co więcej, po ponownym połączeniu działa on poprawnie natychmiast.
Dlatego uważam, że jest to problem ze sterownikiem oprogramowania i chciałbym go debugować. Czy jest jakiś sposób, aby uzyskać bardziej szczegółowe logowanie do modułów Bluetooth (-hid)?
źródło
0a5c:21e1 Broadcom Corp.
problemem w systemie Linux.Odpowiedzi:
Możesz spróbować użyć
hcidump
narzędzia z pakietubluez-hcidump
do monitorowania urządzeń Bluetooth i uzyskać szczegółowe informacje:W opisie opakowania zaznaczono, że:
Za pomocą tego narzędzia można zarejestrować dane wyjściowe z urządzenia na ekranie lub w pliku; gdzie
hciX
jest twoje własne urządzenie bluetooth (hci0 jest domyślne i używane, jeśli nic nie określisz za pomocą-i
), możesz uruchomić:Możesz zapisać zrzut do pliku, dołączając do polecenia
-w ~/output
, a jeśli chcesz wiedzieć o danych audio, możesz użyć-A
przełącznika, a tym samym wyodrębnić dane audio SCO, chociaż w tym przypadku zawsze musisz określić plik wyjściowy:Możesz wyświetlić zapisany plik zrzutu za pomocą
Istnieje o wiele bardziej szczegółowe opcje, które możesz chcieć zbadać; jeśli chcesz, możesz filtrować według typu pakietu, ponieważ domyślnie wszystkie pakiety są zrzucane. Więcej informacji można znaleźć
man hcidump
na stronach internetowych Ubuntu .Jedyną inną opcją jest instalacja
wireshark
i sprawdzenie, czy może wykryć twoje urządzenia; jeśli to możliwe, będzie mógł analizować ruch USB i Bluetooth, jak wspomniano tutaj , alehcidump
powinien dać lepsze wyniki.źródło
hcidump
problemu nie pojawia się. Również w momencie, gdy zacznę go uruchamiać, problem znika natychmiast. Ta sonda debugująca wydaje się być niemożliwa do odtworzenia.Miałem trochę szczęścia w używaniu śledzenia USB do rozwiązywania dziwnych problemów z dźwiękiem. Czasami możesz określić coś na podstawie zawartości lub czasu pakietów. W moim przypadku była to sporadyczna zmiana długości pakietu odpowiadająca słyszanemu hałasowi.
Oto strona z Wireshark, która zawiera pewne informacje.
Możesz uzyskać ślad, wykonując następujące czynności:
Oto informacje z projektu linux na ten temat, w tym jak zawęzić to, co śledzisz.
Wydaje się, że druga kolumna zawiera czas, dlatego należy uważnie obserwować, jak się zwiększa. Jeśli rozpocznie się płynnie, a później zacznie się skakać, problem może znajdować się w sekcji Bluetooth.
Jeśli ślad pokazuje nieregularne pakiety, gdy występuje problem, którym może być USB lub Bluetooth, ale kierunek nieregularnych pakietów może wskazywać, czy jest to jądro czy sterownik, a nie coś po drugiej stronie magistrali USB.
źródło