บลูทู ธ ไม่ทำงานหลังจากออกจากโหมดสลีป Ubuntu 18.04 LTS


27

หูฟังบลูทู ธ ทำงานได้ดีจนกระทั่งเข้าโหมดสลีป อย่างไรก็ตามหลังจากกลับมาทำงานจากโหมดสลีปแล้วพวกเขาดูเหมือนจะเชื่อมต่อชั่วครู่ก่อนที่จะตัดการเชื่อมต่อ บน blueman ข้อผิดพลาดที่ระบุคือ Resource ไม่พร้อมใช้งานชั่วคราว ปัญหานี้เกิดขึ้นหลังจากอัพเดตเป็น 18.04 LTS เท่านั้น

นี่คือผลลัพธ์ของเทอร์มินัลสำหรับ lsusb:

Bus 001 Device 002: ID 8087:8001 Intel Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 004: ID 1bcf:0002 Sunplus Innovation Technology Inc. 
Bus 002 Device 003: ID 04f2:b477 Chicony Electronics Co., Ltd 
Bus 002 Device 002: ID 0a5c:21f1 Broadcom Corp. HP Portable Bumble Bee
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

1
ฉันมีปัญหาเดียวกันกับลำโพง JBL Go และการติดตั้งใหม่ที่ 18.04 ไม่มีอะไรที่เหมือนกับการรีสตาร์ทbluetooth.serviceหรือลบbtusbโมดูลและใส่กลับเข้าไปใหม่อีกครั้ง ผมต้องรีบูต
solsTiCe

ฉันมีปัญหาเดียวกันเมื่อใดก็ตามที่กลับมาทำงานจากโหมดสลีปก็มีโอกาสที่อูบุนตูจะทำหน้าที่เหมือนไม่มีบลูทู ธ เลย การนอนและการกลับมาทำงานอีกครั้งจะช่วยแก้บางครั้ง
Freguglia

@ K7AAY ด้วยเหตุผลบางอย่างจำศีลไม่ได้เลยดังนั้นฉันไม่สามารถตรวจสอบได้
Nikhil Sadasivan

โปรดแก้ไขเพื่อรวมผลลัพธ์จากเทอร์มินัลสำหรับlsusb
Jeremy31

ปัญหาเดียวกันที่นี่ ฉันต้องรีบู๊ตเพื่อให้ลำโพงทำงานได้อีกครั้ง
user1945827

คำตอบ:


27

อัปเดต bluez เป็น> = 5.28.2

18.04 จัดส่งพร้อมกับแพ็คเกจบั๊กกี้สีน้ำเงิน รุ่นที่ใหม่กว่ามีให้จาก PPA นี้: https://launchpad.net/~bluetooth/+archive/ubuntu/bluez :

sudo add-apt-repository ppa:bluetooth/bluez
sudo apt install bluez

วิธีแก้ปัญหาสำหรับแอปเพล็ต Bluetooth แบบบั๊ก

นี่อาจเป็นปัญหาที่ @solstice พูดถึง - แอปเพล็ตเมนู BT ไม่อนุญาตให้ฉันเปิดใช้งานบลูทู ธ หลังจากกลับมาทำงานจากโหมดสลีป ไม่ว่าสวิตช์เปิดปิดจะปิดอยู่หรือไม่ไอคอน BT ถูกปิดใช้งานและเอาต์พุต rfkill จะไม่เปลี่ยนแปลง:

$ rfkill list
0: phy0: Wireless LAN
    Soft blocked: no
    Hard blocked: no
12: hci0: Bluetooth
    Soft blocked: no
    Hard blocked: no

คุณสามารถสลับ BT ด้วยตนเองได้โดยเรียกใช้ (แทนที่ ID ของคุณเอง):

rfkill block 12
rfkill unblock 12

และแอปเพล็ต BT ควรรับอย่างถูกต้องในขณะนี้ ณ จุดนี้คุณควรจะสามารถเชื่อมต่อกับอุปกรณ์ของคุณ ตอนนี้ฉันแฮ็คมันด้วยกันโดยใช้สคริปต์ที่ทำสิ่งนี้โดยอัตโนมัติหลังจากดำเนินการต่อ:

$ cat /lib/systemd/system-sleep/bt
#!/bin/sh

case $1 in
  post)
    sleep 5
    rfkill block `rfkill list | grep hci | cut -d: -f1`
    sleep 1
    rfkill unblock `rfkill list | grep hci | cut -d: -f1`
    ;;
esac

หมายเลขประจำตัวถัดจาก hci0 ในเอาท์พุทรายการ rfkill ดูเหมือนว่าจะเพิ่มขึ้นหลังจากหยุดชั่วคราว / ดำเนินการ การปิดใช้งาน / เปิดใช้งาน BT โดยใช้เมนู BT ควรเปลี่ยนผลลัพธ์ ('ซอฟต์บล็อค: ใช่' สำหรับ BT ถูกปิดการใช้งานผ่านเมนู) แต่ไม่มี ฉันเดาว่าแอปเพล็ตจำรหัสอุปกรณ์ผิดและพยายามเปิดใช้งานอุปกรณ์ที่ไม่มีอยู่อีกต่อไป


1
เพิ่งอัปเดตแพ็คเกจ bluez ทำเพื่อฉันขอบคุณ!
Nikhil Sadasivan

Bluez ที่อัปเดตเหมือนกันทำงานได้อย่างมีเสน่ห์!
Sanketh Katta

1
อัปเดต: ใช้งานได้เพียง 1 รอบการนอนหลับ อย่างไรก็ตามหลังจากหลายครั้งฉันกลับไปที่ปัญหาเดียวกัน
Sanketh Katta

เว้นแต่ว่าข้อผิดพลาดได้รับการแก้ไขโดยการอัปเดตแล้วการอัปเดต bluez ก็ใช้งานได้สำหรับฉัน
user1945827

การใช้ blueman applet ( sudo apt install blueman) และอัพเดท bluez (จาก ppa) นั้นใช้งานได้ดีสำหรับฉัน
Mark

4

สำหรับฉันปัญหานี้สามารถแก้ไขได้โดยการเรียกใช้

sudo service bluetooth restart

หลังจากตื่นนอน


2

ลองใช้เทอร์มินัล (ไม่จำเป็นต้องรูท)

btnum=`rfkill list|grep hci0| cut -f 1 -d ':'`
rfkill block $btnum
rfkill unblock $btnum

สิ่งนี้อาจเกี่ยวข้องกับบั๊กใน gnome-control-center ไม่แน่ใจ. ฉันได้พบสิ่งนี้เพื่อแก้ไขข้อผิดพลาดดังกล่าวและอาจเป็นของคุณด้วย


น่าเสียดายที่สิ่งนี้ไม่ได้แก้ไขปัญหาสำหรับฉัน ขอบคุณที่แบ่งปัน!
Nikhil Sadasivan

2

ฉันรัน 19.04 และมีปัญหานี้ ฉันมีเมาส์ BT ดังนั้นมันจึงน่ารำคาญจริงๆ

หากต้องการคำตอบ @hinxnz ขั้นสูง:

เปิดไฟล์ใหม่:

sudo nano /lib/systemd/system-sleep/bt

วางในสคริปต์นี้:

#!/bin/sh

case $1 in
  post)
    modprobe -r btusb
    sleep 1
    service bluetooth restart
    sleep 1
    modprobe btusb
    ;;
esac

ในที่สุดก็ทำให้มันปฏิบัติการ

chmod +x /lib/systemd/system-sleep/bt

1

นี่คือสิ่งที่ฉันทำเพื่อให้มันทำงานบน 18.04 LTS

อัพเดทบลูทู ธ :

sudo add-apt-repository ppa:bluetooth/bluez
sudo apt install bluez

สร้างไฟล์ใหม่:

sudo nano /lib/systemd/system-sleep/bt

เขียนและบันทึก:

#!/bin/sh

sudo modprobe -r btusb
sleep 1
sudo service bluetooth restart
sleep 1
sudo modprobe btusb

เปลี่ยนสิทธิ์แล้ว:

sudo chmod 777 /lib/systemd/system-sleep/bt

1
การใช้ chmod + x จะเป็นวิธีที่ปลอดภัยกว่าถ้าคุณเพียงแค่ต้องการให้ไฟล์นี้ทำงานได้ การทำเช่นนี้จะทำให้ผู้ใช้ทุกคนในระบบสามารถรันอะไรก็ได้ในฐานะรูทเพียงแค่แทนที่เนื้อหาของไฟล์นี้
Steeve McCauley

หลังจากบันทึกสคริปต์นี้ Dell XPS (18.04lts) ของฉันจะไม่เข้าสู่โหมดสลีป ดูเหมือนว่ามันจะเข้าสู่โหมดสลีปและ 2 วินาทีหลังจากนั้นก็ตื่นขึ้นมา
มีดโกน

อย่า chmod 777 เคย ถ้าคุณไม่ทราบว่ากำลังทำอะไรอยู่ คุณควรปิดสคริปต์case $1 in post)นั้นด้วยดังนั้นจึงจะทำงานได้หลังจากการปลุก ไม่จำเป็นต้องใช้ sudo ในสคริปต์อีกด้วย
Laurent

0

ทางออกของการอัพเกรดเป็น Bluez รุ่นใหม่แก้ปัญหาอื่นสำหรับฉันในการเชื่อมต่อบลูทู ธ ที่ไม่ได้เชื่อมต่อกับวินาทีหลังจากการเชื่อมต่อตามที่อธิบายไว้ที่นี่: Ubuntu 18.04: อุปกรณ์บลูทู ธ ตัดการเชื่อมต่อทันทีหลังจากเชื่อมต่อบน Lenovo P50



0

ในกรณีของฉันlaptop-mode-toolsเป็นผู้กระทำผิด:

$ sudo apt ลบเครื่องมือโหมดแล็ปท็อป


กรุณาอย่าโพสต์คำตอบเดียวกันกับโพสต์จำนวนมาก แต่ถ้าการโพสต์นั้นมีความคล้ายคลึงกันพอให้ตั้งค่าสถานะการโพสต์อื่นเป็นรายการที่ซ้ำกันของโพสต์อื่น เพียงโพสต์ใหม่คำตอบเดียวกันกับคำถามหลาย ๆ ข้อมีเสียงดังมาก
Thomas Ward
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.