Problemy z Bluetooth po uśpieniu w OS X Yosemite (10.10)

53

Wydaje mi się, że mam stałe problemy z łącznością Bluetooth, szczególnie po przebudzeniu mojego Macbooka Pro z długiego snu.

Mam głośnik, który wyłącza się automatycznie po pewnym okresie bezczynności, a moim przypadkiem użycia jest zazwyczaj otwarcie laptopa, włączenie głośnika, a gdy sterownik Bluetooth działa normalnie, automatycznie się ponownie połączą.

Jednak wydaje się, że problem polega na tym, że moje urządzenia peryferyjne Bluetooth nie łączą się ponownie, jeśli mój Macbook został właśnie obudzony z długiego snu.

Po przeszukaniu znalazłem ten skrypt, aby ponownie uruchomić rozszerzenia jądra Bluetooth , ale nie działało to na Yosemite.

Oto, co sudo tail -f /var/log/system.logdał mi po zrobieniu kextloada kextunload(nazwa hosta i nazwa użytkownika zostały zredagowane):

Nov 17 07:50:11 {redacted} sudo[8118]: username: TTY=ttys000 ; PWD=/Users/username; USER=root ; COMMAND=/sbin/kextload -b com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport
Nov 17 07:50:11 {redacted} kernel[0]: IOBluetoothUSBDFU::probe
Nov 17 07:50:11 {redacted} kernel[0]: IOBluetoothUSBDFU::probe ProductID - 0x821D FirmwareVersion - 0x0147
Nov 17 07:50:11 {redacted} kernel[0]: **** [IOBluetoothHostControllerUSBTransport][start] -- completed -- result = TRUE -- 0x0800 ****
Nov 17 07:50:11 {redacted} kernel[0]: **** [BroadcomBluetoothHostControllerUSBTransport][start] -- Completed -- 0x0800 ****
Nov 17 07:50:11 {redacted} kernel[0]: [IOBluetoothHCIController][staticBluetoothTransportShowsUp] -- Received Bluetooth Controller register service notification -- 0x0800 
Nov 17 07:50:12 {redacted} kernel[0]: **** [IOBluetoothHostControllerUSBTransport][initHardwareWL] -- failed -- calling DoDeviceReset (kBluetoothControllerResetHub) -- 0x0800 ****
Nov 17 07:50:12 {redacted} kernel[0]: **** [IOBluetoothHostControllerUSBTransport][DoDeviceReset] -- thread_call_enter1 (mReEnumerateOrResetThread) -- reEnumerateOrReset (0xffffff8213ac3ae0) = 2 --  returned FALSE -- 0x0800 ****
Nov 17 07:50:12 {redacted} kernel[0]: **** [IOBluetoothHCIController][ProcessBluetoothTransportShowsUpActionWL] -- Error!! -- Something went wrong in the setup process. Could not communicate with Bluetooth Transport successfully -- 0x0800 -- 0x0800 ****
Nov 17 07:50:12 {redacted} kernel[0]: **** [IOBluetoothHostControllerUSBTransport][ReEnumerateOrResetThreadEntry] -- entering -- param0 = 0xffffff806a870800, param1 = 0x2 -- 0x0800
Nov 17 07:50:12 {redacted} kernel[0]: **** [IOBluetoothHostControllerUSBTransport][ReEnumerateOrReset] -- entering -- reEnumerateOrResetIn = 2 -- this = 0x0800 ****
Nov 17 07:50:12 {redacted} kernel[0]: **** [IOBluetoothHostControllerUSBTransport][ReEnumerateOrReset] -- in our workloop -- 0x0800 ****
Nov 17 07:50:12 {redacted} kernel[0]: **** [IOBluetoothHostControllerUSBTransport][ReEnumerateOrReset] -- parameter is valid -- 0x0800 ****
Nov 17 07:50:12 {redacted} kernel[0]: **** [IOBluetoothHostControllerUSBTransport][ReEnumerateOrReset] -- reEnumerateOrReset = 2 -- 0x0800 ****
Nov 17 07:50:12 {redacted} kernel[0]: [IOBluetoothHostControllerUSBTransport][ReEnumerateOrReset] -- calling myHub->ReEnumerateDevice() -- gEnumerateCounter = 1 
Nov 17 07:50:12 {redacted} kernel[0]: [IOBluetoothHostControllerUSBTransport][ReEnumerateOrReset] -- exit; error = 0x0000 (kIOReturnSuccess)
Nov 17 07:50:12 {redacted} kernel[0]: **** [IOBluetoothHostControllerUSBTransport][ReEnumerateOrResetThreadEntry] -- exiting -- 0x0800
Nov 17 07:50:12 {redacted} kernel[0]: IOBluetoothUSBDFU::probe
Nov 17 07:50:12 {redacted} kernel[0]: IOBluetoothUSBDFU::probe ProductID - 0x821D FirmwareVersion - 0x0147
Nov 17 07:50:12 {redacted} kernel[0]: **** [IOBluetoothHostControllerUSBTransport][start] -- completed -- result = TRUE -- 0x0800 ****
Nov 17 07:50:12 {redacted} kernel[0]: **** [BroadcomBluetoothHostControllerUSBTransport][start] -- Completed -- 0x0800 ****
Nov 17 07:50:12 {redacted} kernel[0]: [IOBluetoothHCIController][staticBluetoothTransportShowsUp] -- Received Bluetooth Controller register service notification -- 0x0800 
Nov 17 07:50:12 {redacted} kernel[0]: [IOBluetoothHCIController::setConfigState] calling registerService
Nov 17 07:50:12 {redacted} kernel[0]: **** [IOBluetoothHCIController][ProcessBluetoothTransportShowsUpActionWL] -- Connected to the transport successfully -- 0xe300 -- 0x0800 -- 0x0800 ****
Nov 17 07:50:12 {redacted} sharingd[367]: 07:50:12.595 : SDStatusMonitor::kStatusBluetoothPowerChanged
Nov 17 07:50:12 {redacted} sharingd[367]: 07:50:12.617 : SDStatusMonitor::kStatusBluetoothPowerChanged
Nov 17 07:50:12 {redacted} sharingd[367]: 07:50:12.637 : SDStatusMonitor::kStatusBluetoothPowerChanged
Nov 17 07:50:12 {redacted} sharingd[367]: 07:50:12.657 : SDStatusMonitor::kStatusBluetoothPowerChanged
Nov 17 07:50:12 {redacted} sharingd[367]: 07:50:12.659 : BTLE scanner Powered Off
Nov 17 07:50:12 --- last message repeated 2 times ---
Nov 17 07:50:12 {redacted} coreaudiod[360]: 2014-11-17 07:50:12.663673 AM [AirPlay] BTLE client stopping to browse for AirPlay Solo Target Presence.
Nov 17 07:50:12 {redacted} blued[62]: hciControllerOnline; HID devices? 0
Nov 17 07:50:12 {redacted} coreaudiod[360]: 2014-11-17 07:50:12.663868 AM [AirPlay] BTLE client starting to browse for AirPlay Solo Target Presence.
Nov 17 07:50:12 {redacted} sharingd[367]: 07:50:12.664 : Starting Handoff scanning
Nov 17 07:50:12 {redacted} coreaudiod[360]: 2014-11-17 07:50:12.664336 AM [AirPlay] BTLE client stopped to browse for AirPlay Solo Target Presence.
Nov 17 07:50:12 {redacted} coreaudiod[360]: 2014-11-17 07:50:12.664753 AM [AirPlay] BTLE client started to browse for AirPlay Solo Target Presence.
Nov 17 07:50:12 {redacted} sharingd[367]: 07:50:12.664 : Stopping Handoff advertising
Nov 17 07:50:12 {redacted} sharingd[367]: 07:50:12.665 : BTLE scanner Powered On
Nov 17 07:50:12 {redacted} blued[62]: hostControllerOnline - Number of Paired devices = 2, List of Paired devices = (
      "00-0c-8a-dd-fd-88",
      "84-38-35-ec-1c-ea"
  )
Nov 17 07:50:13 {redacted} kernel[0]: AppleUSBMultitouchDriver::message - kIOUSBMessagePortHasBeenReset.
Nov 17 07:50:13 {redacted} kernel[0]: AppleUSBMultitouchDriver::checkStatus - received Status Packet, Payload 2: device was reinitialized
Nov 17 07:50:13 {redacted} hidd[74]: MultitouchHID: device bootloaded
Nov 17 07:50:13 {redacted} kernel[0]: AppleUSBMultitouchDriver::_deviceGetReport - DeviceRequest for reportID 0xc8 returned with result 0xe000404f - retrying

uname -a wyjście (zredagowana nazwa hosta):

$ uname -a
Darwin {redacted} 14.0.0 Darwin Kernel Version 14.0.0: Fri Sep 19 00:26:44 PDT 2014; root:xnu-2782.1.97~2/RELEASE_X86_64 x86_64

Czy ktokolwiek z was widział wcześniej ten problem? Każda pomoc będzie mile widziana.

Ivan Gozali
źródło
1
Spróbuj przytrzymać przycisk myszy przez 2 sekundy po przebudzeniu komputera Mac. My MagicMouse łączy się po tym. Może być efektem ubocznym zamierzonego projektu, aby oszczędzać baterię w stanie bezczynności lub coś takiego.
Yaroslav Admin
Czasami mi się to zdarza. Innym objawem jest to, że nic się nie stanie, jeśli spróbuję wyłączyć Bluetooth. Rozwiązanie @webaholik naprawiło mój Bluetooth.
Bennett McElwee
nadal mam ten problem, 5 lat później. Żadna z odpowiedzi nie wydaje się naprawdę pomóc w pierwotnej przyczynie.
Alex H

Odpowiedzi:

53

Mam problemy z ponownym podłączeniem klawiatury i gładzika Bluetooth od czasu aktualizacji do Yosimite.

Najpierw spróbuj tego: otwórz terminal i uruchom 2 polecenia:

sudo kextunload -b com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport

sudo kextload -b com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport

Tylko raz musiałem biec wyżej. Jeśli później Bluetooth ponownie zepsuje 2 opcje, po prostu uruchom ponownie powyżej lub możesz utworzyć rozwiązanie jednym kliknięciem za pomocą prostej aplikacji za pomocą Automatora:

  1. Wyszukaj (Wyszukiwanie Spotlight) i uruchom Automator
  2. Kliknij „Nowy dokument” u dołu
  3. Wybierz „Aplikacja” dla nowego typu pliku
  4. Kliknij „Narzędzia” z listy
  5. Kliknij dwukrotnie „Uruchom AppleScript”
  6. Zamień (* Twój skrypt idzie tutaj *) na:

    do shell script "kextunload -b com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport; 
    kextload -b com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport" with administrator privileges
    
  7. Naciśnij play, aby przetestować (poprosi o hasło)
  8. Plik-> Zapisz na pulpicie lub w dowolnym miejscu

Uruchom aplikację Automator, ilekroć urządzenia Bluetooth się nie połączą

webaholik
źródło
1
Hmm, myślę, że to właśnie próbowałem powyżej, jak sugeruje dziennik, i to nie pomogło. Może spróbuję jeszcze raz.
Ivan Gozali
W twoim dzienniku nie widziałem: kextunload -b com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport, tylko kextload, po prostu upewnij się, że najpierw uruchomiłeś rozładowanie. Musiałem uruchomić to tylko raz (w zeszłym tygodniu), wcześniej prawie codziennie musiałem restartować za każdym razem, gdy próbuję obudzić mojego MacBooka Pro i połączyć się z klawiaturą i myszą Bluetooth.
webaholik
2
Stworzyłem skrypt, aby zainstalować Sleepwatchera i uruchamiać je dla poleceń za każdym razem, gdy komputer budzi się ze snu, co całkowicie mnie wyeliminowało: gist.github.com/Tyilo/c92684d277acb62272b5
Tyilo,
2
Na moim El Capitan (i Google sugeruje wiele innych), kextunloadzawodzi ( Can't unload kext com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport; classes have instances) i pozostawia Bluetooth niedostępny (przekręca ikonę).
CupawnTae
2
Na mojej High Sierra nie jestem w stanie rozładować:(kernel) Can't remove kext com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport; services failed to terminate - 0xdc008018. Failed to unload com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport - (libkern/kext) kext is in use or retained (cannot unload).
Dr_Zaszuś
10

Rozwiązanie Mikaey na forum wsparcia Apple:

  1. Wyłącz Wi-Fi
  2. Spróbuj ponownie połączyć się z urządzeniami Bluetooth ( powinno działać )
  3. Ponownie włącz WiFi

To rozwiązało problem dla mnie.

kingliam
źródło
1
Rzeczywiście, pamiętam, że czasami mi to działało. A ściślej mówiąc, problem polegał na podłączeniu do Wi-Fi 5 GHz.
haylem
Zrobiłem to, gdy po raz pierwszy zetknąłem się z problemem, włączyłem i włączałem wszystko w różnych sekwencjach i nie rozwiązało to mojego problemu. Urządzenie Bluetooth po prostu nie chciało połączyć się z komputerem Mac po uśpieniu.
Paul Carlton
1
To rozwiązanie działało dla mnie. :) I używałem Wi-Fi 5 GHz, jako @haylem.
Greg Dubicki
1
... ale następnym razem, gdy miałem ten problem, musiałem użyć rozwiązania @ webaholik.
Greg Dubicki
to rozwiązanie działa dla mnie MacBook pro Retina 13 cali 10.13.5
harveyslash
6

Po próbie uruchomienia skryptów sugerowanych przez inne odpowiedzi, rozładowaniu i ponownym załadowaniu zarówno kext, jak i demona bluetooth, mój bluetooth nadal nie odpowiadał.

Odkryłem jednak, że jeśli Yosemite śpi z uruchomionym VMWare, a bluetooth nie działa po przebudzeniu systemu operacyjnego, zamknięcie VMWare rozwiązuje problem.

Wygląda na to, że sterowniki w VMWare nie zawsze poprawnie obsługują proces uśpienia / budzenia.

Mroczny rycerz
źródło
Zauważyłem to samo. Problemem był VMWare. Po zawieszeniu maszyny wirtualnej bluetooth ponownie zaczął działać.
gappani
6

- AKTUALIZACJA: Ten problem NIE został rozwiązany w systemie OSX 10.11 El Capitan -

Poniżej znajduje się alternatywa dla rozwiązania Automator opublikowanego przez webaholic dla tych, którzy, podobnie jak ja, odczuwają trudności w ponownym wpisywaniu hasła (najprawdopodobniej właśnie wprowadziłeś je, aby się zalogować po przebudzeniu komputera Mac).

Najpierw w Terminalu utwórz skrypt, który ponownie ładuje podsystem Bluetooth:

cat > bt_restart <<END
#!/bin/sh
kextunload -b com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport && \
kextload   -b com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport
END
chmod +x bt_restart

Po drugie, zrób roota jego właścicielem i przenieś go do / sbin:

sudo chown root:wheel bt_restart
sudo mv bt_restart /usr/local/sbin

Po trzecie, dodaj polecenie do listy poleceń NOPASSWD w sudoers:

echo -e "\n\n# Restart bluetooth without password\n$USER ALL=(ALL) NOPASSWD: /usr/local/sbin/bt_restart" | EDITOR='tee -a' sudo visudo

Na koniec utwórz skrypt na pulpicie, który wywołuje bt_restart:

echo '#!/usr/bin/sudo /usr/local/sbin/bt_restart' > ~/Desktop/"Restart Bluetooth"
chmod +x ~/Desktop/"Restart Bluetooth"

Gotowy! Wystarczy dwukrotnie kliknąć gładzik notebooka (lub mysz USB) na Restart Bluetooth na pulpicie.

Ziggy Crueltyfree Zeitgeister
źródło
1
literówka przy zmianie właściciela, powinien być chownnie chmod- próbował zmieniać siebie, ale nie cred tutaj i edycja była poniżej limitu długości: - /
Ralph Callaway
1
przynajmniej na moim komputerze pojawia się błąd uprawnień podczas próby modyfikacji /etc/sudoers, jako alternatywę możesz edytować plik bezpośrednio za pomocąsudo visudo
Ralph Callaway
3

Miałem ten sam problem i chyba zauważyłem możliwą przyczynę problemu. Moja mysz nazywała się „My Name's mouse” z apostrofem, może to powodowało błędy.

Zmieniłem nazwę, aby uniknąć używania spacji i znaków specjalnych, teraz nazywa się to po prostu „myszką” i nie mam już problemu.

Leenyx
źródło
To wygląda interesująco. Zasadniczo zmień nazwę urządzenia Bluetooth, aby nie zawierało spacji. Spróbuję.
Ivan Gozali
@Leenyx Dziękujemy! Pomogło mi to! PS Macbook Pro (połowa 2015 r.) Mac OS High Sierra 10.13.6
WebBrother
3

Nadal mam ten problem w systemie macOS Sierra. Link @ Tyilo powyżej do jego istoty dał mi punkt wyjścia. Ale chciałem również użyć homebrew do zainstalowania Sleepwatchera, a pliki plist nie zostały poprawnie skonfigurowane po wyjęciu z pudełka. Bawiłem się przez długi czas i wymyśliłem ten skrypt, który sprawił, że wszystko działało niezawodnie.

brew install sleepwatcher
sudo touch /etc/rc.sleep
sudo tee -a /etc/rc.wakeup <<EOF
#!/bin/sh
# Sleepwatcher script to get bluetooth working after the mac wakes up
# Got this approach from https://gist.github.com/Tyilo/c92684d277acb62272b5
kextunload -b com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport
kextload -b com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport
EOF
sudo chmod +x /etc/rc.wakeup
brew services start sleepwatcher
sudo tee -a /Library/LaunchAgents/de.bernhard-baehr.sleepwatcher-20compatibility-custom.plist <<EOF
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>de.bernhard-baehr.sleepwatcher</string>
    <key>ProgramArguments</key>
    <array>
        <string>/usr/local/sbin/sleepwatcher</string>
        <string>-V</string>
        <string>-s /etc/rc.sleep</string>
        <string>-w /etc/rc.wakeup</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
    <key>KeepAlive</key>
    <true/>
</dict>
</plist>
EOF
sudo launchctl load /Library/LaunchAgents/de.bernhard-baehr.sleepwatcher-20compatibility-custom.plist
Kyle Tolle
źródło
2

Dzięki Tyilo z komentarzy do zaakceptowanej odpowiedzi zmodyfikowałem jego skrypt, aby zainstalować sleepwatchera i dołączyłem do skryptu kod, który nie tylko rozładuje sterownik Bluetooth ( com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport), ale także zrestartuje blueddemona Bluetooth Apple.

Skrypt można znaleźć tutaj: https://gist.github.com/timgws/fc63aeca6a248bbb25ff

Uruchomienie tego rozwiązało dla mnie wszystkie problemy.

Tim Groeneveld
źródło
2

Podsumowując, oto lista rzeczy wymienionych tutaj, w linkach stąd, w podobnych wątkach na innych stronach, a nawet wymyślone przeze mnie z tych innych. Próbowałem tych wszystkich, pojedynczo i w wielu kombinacjach. Wszystkie wydają się działać przynajmniej raz; wszystkie zawiodły przynajmniej raz.

  • nowe baterie myszy
  • wyjmij i ponownie sparuj mysz
  • wyłącz WiFi i mysz; podłącz mysz Bluetooth; przywrócić WiFi
  • wyłącz Wi-Fi, mysz i VPN; połączyć; przywracać
  • usuń Bluetooth PAN; połączyć
  • kextunload / load USBTransport; połączyć
  • podłącz kextunload do sleepwatchera; spać; obudzić; połączyć
  • odłącz wszystkie złącza USB (cholera, wszystkie złącza); połączyć
  • Wyloguj; Zaloguj sie; połączyć
  • uruchom ponownie; Zaloguj sie; połączyć
  • zresetować SMC (co obejmuje „zamknięcie”); uruchom ponownie; zaloguj się połącz
  • zamknij hosting maszyn wirtualnych (takich jak VMWare, Parallels lub VirtualBox)

Wybieram trzymanie tej listy pod ręką i używam „wszystkich powyższych”.

Myślę, że jedyną pewną rzeczą jest tutaj duża dawka „losowości”, być może wyścig wśród tych wszystkich sterowników dla sieci, pseudo sieci, sieci warstwowych, sieci wirtualnych i sieci proxy. W takim przypadku prawdopodobnie nie jest to tylko wina Apple, ponieważ sterowniki te pochodzą z różnych źródeł.

Oczywiście, niegdyś słynna reputacja firmy Apple „po prostu działa” została w dużej mierze zbudowana na zakazaniu tego rodzaju kolidującej różnorodności.

jackr
źródło
Po bezskutecznych próbach włamania do gazillionów znalazłem tylko ponowne uruchomienie. Ale „usuń Bluetooth PAN” zadziałało. Dziękuję bardzo!
Daniel Pinyol
2

Świadomy, że jest to już dość stary post, ale zwariowałem z powodu opóźnienia, które budziło mnie po przebudzeniu, zanim Magic Trackpad był użyteczny ... może to być dobre 30 sekund. Wypróbowałem większość / wszystkie wskazówki i porady, które znalazłem z niewielkim skutkiem.

Jednak właśnie próbowałem przenieść ikonę Bluetooth na pasku menu (CMD ALT Drag) z jej normalnej pozycji (około 7 w) do 2 w (według liczenia z prawej), tj. Obok menu Spotlight.

Jak dotąd? ... problem zniknął!

Nie jestem w 100% pewien, dlaczego tak jest, ale podejrzewam, że może to mieć coś wspólnego z kolejnością, w jakiej zadania z tych pozycji na pasku menu RHS są podejmowane po przebudzeniu, tj. Te bliższe RHS mają wyższy priorytet?

Zajmuje to tylko kilka sekund, więc jeśli masz ten problem - warto spróbować?

(iMac 27 "i7 / OS X 10.10.5)

JH

John H.
źródło
2

Większość sugestii, które przeczytałem, wydawała się nieco skomplikowana w przypadku czegoś tak prostego jak to. Zdecydowałem się na podejście noob:

  1. Poszedł do Preferencji systemowych / Myszy / Skonfiguruj mysz Bluetooth
  2. Na ekranie pojawił się komunikat „Nie znaleziono myszy” i rozpoczęto wyszukiwanie.
  3. Wyłączyłem mysz, a następnie włączyłem ją ponownie (rozwiązanie Windows dla niezliczonych problemów).
  4. Znalazłem moją mysz.
GDB
źródło
2

Wygląda na to, że kextunloadpolecenia nie działają już w High Sierra. Istnieje jednak narzędzie wiersza polecenia innej firmy do robienia tego samego i działa: https://github.com/toy/blueutil - możesz podmienić skrypty, o których tu mowa, aby ich używać blueutil, lub istnieje nawet pełne rozwiązanie ( bardzo podobny do tego, co widzieliśmy już na tej stronie): https://gist.github.com/ralph-hm/a65840c4f5e439b90170d735a89a863f

Miemo
źródło
Czy jesteś autorem tego narzędzia?
Allan
Nie, właśnie dowiedziałem się, kiedy ponownie szukałem rozwiązania tego problemu…
miemo
Wszystko to polega na wykonywaniu tych samych czynności włączania / wyłączania zasilania, które można wykonywać z poziomu panelu przedniego Bluetooth. W moim przypadku nie pomogły. BTW, jeśli chcesz tego użyć, musisz pobrać zip, a następnie uruchomić xcodebuild -project blueutil.xcodeprojectw rozpakowanym katalogu. To jest wtedy build/Release.
w00t
2

Ten artykuł Michaela Kummera podaje dość wyczerpującą listę nieudanych prób naprawienia problemów z Bluetooth na Macu, a na koniec sugeruje skompromitowane rozwiązanie poprzez wyłączenie trybu głośnomówiącego, który wydaje się działać: https://michaelkummer.com/technology/mac-bluetooth-issues-affect -keyboard-trackpad /

Widoczny również w https://www.forbes.com/sites/bradmoon/2017/07/13/this-trick-may-solve-your-mac-bluetooth-connectivity-issues/#6fefb3f45196

użytkownik716468
źródło
Dzięki - później szczegółowo przejrzę te artykuły. Mój nowy Imac (2 tygodnie) ciągle upuszcza BlueTooth i musiałem spędzić co najmniej 8 godzin na telefonie do tak zwanych „Geniuszy” bezskutecznie ....
oznacz
1

Ponownie zainstaluj MacOS.

To nie jest tak naprawdę rozwiązanie, ale chcę podzielić się swoim doświadczeniem, aby dać nadzieję tym, którzy mają ten sam problem co mój - że może to nadal nie być problem sprzętowy lub problem z interferencją Wi-Fi, co może być bardziej kosztowne lub kłopotliwe, aby rozwiązać tę ponowną instalację MacOS.

To, czego doświadczyłem: po tym, jak mój MacBook Pro 2015 obudził się ze snu, nie mógł połączyć się z urządzeniami Bluetooth. Problem pogłębiał się w miarę upływu czasu, od początkowo niewielkich niedogodności (np. Wyłączenie i ponowne włączenie modułu Bluetooth lub Wi-Fi może to naprawić) do późniejszego ogromnego bólu (np. Wymaga ponownego uruchomienia z resetem SMC / PRAM).

Objawem lub efektem ubocznym, który może być związany, było to, że komputer czasami budził się zbyt długo (10 sekund).

Ponowna instalacja (czystego) MacOS była moją ostatnią deską ratunku, ale wydaje się, że po prostu działa. Po ponownej instalacji nie zaobserwowałem żadnego problemu ani czkawki z bluetooth, Wi-Fi lub spaniem.

Oświadczenie: Prawdopodobnie istnieje pewna poprawka, która może osiągnąć ten sam efekt, który może, ale nie został jeszcze odkryty. Ponadto ponowna instalacja systemu operacyjnego zawsze wiąże się z ryzykiem utraty danych i wydajności, które należy ocenić.

Nowa aktualizacja: bezproblemowo przez tydzień. Ale wtedy problem z Bluetooth wydaje się czasem wracać. W tym tygodniu nie majstrowałem przy systemie zbyt wiele, poza instalowaniem bardzo popularnego oprogramowania i pakietów głównie przez Homebrew.

użytkownik716468
źródło
0

Na podstawie sugestii innych osób stworzyłem prosty skrypt powłoki, aby zresetować bluetooth. Zobacz sens szczegóły.

Wersja uproszczona (zależy od blueutilnaparu):

blueutil -p 0
networksetup -setairportpower en0 off
sleep 3
networksetup -setairportpower en0 on
sleep 3
blueutil -p 1

Wyłącza Bluetooth, wyłącza Wi-Fi, ponownie włącza Wi-Fi, a na końcu włącza ponownie Bluetooth.

CrnaStena
źródło
-1

Spróbuj kliknąć myszką po wybudzeniu komputera Mac ze stanu uśpienia.

To zdawało się łączyć moją Magic Mouse 2 szybciej z Mac Mini z systemem macOS Sierra (10.12.2).

Aanand
źródło