web-dev-qa-db-fra.com

Ralink RT 3290 Problème Bluetooth sous Ubuntu 14.04

J'ai récemment installé Ubuntu 14.04 et tout fonctionne bien, sauf le Bluetooth.

J'ai Ralink 3290 Bluetooth. essayé d'installer le pilote en utilisant la méthode décrite ici . Le code n'est pas compilé et donne 2 erreurs. Même le changement de os/linux/pci_main_dev.c ne fonctionne pas.

Mise à jour: Maintenant, j'ai suivi ceci lien et après avoir modifié un fichier un peu, j'ai réussi à compiler et à installer ce pilote. Je suis certain qu'Ubuntu a finalement trouvé un adaptateur Bluetooth, et maintenant j'obtiens le bluetooth dans:

rfkill list all
0: phy0: Wireless LAN
     Soft blocked: yes
     Hard blocked: no
1: hci0: Bluetooth
    Soft blocked: yes
    Hard blocked: no

Mais maintenant, l'erreur Bluetooth is disabled est affichée et la sortie de

dmesg | grep Blue
[   17.378741] Bluetooth: Core ver 2.17
[   17.378778] Bluetooth: HCI device and connection manager initialized
[   17.378788] Bluetooth: HCI socket layer initialized
[   17.378792] Bluetooth: L2CAP socket layer initialized
[   17.378799] Bluetooth: SCO socket layer initialized
[   17.809313] Bluetooth: hci0 sending frame failed
[   20.507392] Bluetooth: RFCOMM TTY layer initialized
[   20.507420] Bluetooth: RFCOMM socket layer initialized
[   20.507440] Bluetooth: RFCOMM ver 1.11
[   20.669232] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[   20.669237] Bluetooth: BNEP filters: protocol multicast
[   20.669249] Bluetooth: BNEP socket layer initialized

arrive.

14
Adnan

J'ai le bluetooth au travail!

  1. Commencez par télécharger le code source et extrayez-le dans Home.

  2. Après cela, ouvrez le fichier rtbth_core_bluez.c, puis passez à la ligne 86 et modifiez-le à partir de:

    int rtbt_hci_dev_send(struct sk_buff *skb)
    {
        struct hci_dev *hdev = (struct hci_dev *)skb->dev;
    

    à:

    int rtbt_hci_dev_send(struct hci_dev *hdev, struct sk_buff *skb)
    {
        //struct hci_dev *hdev = (struct hci_dev *)skb->dev;
    
  3. Aller à la ligne 216 et le changer de:

        status = hci_recv_frame(skb);
    

    à:

        status = hci_recv_frame(hdev,skb);
    
  4. Ensuite, allez à la ligne 406 et changez-la de:

    hdev->ioctl = rtbt_hci_dev_ioctl;
    

    à:

    //hdev->ioctl = rtbt_hci_dev_ioctl;
    
  5. Enregistrez, puis ouvrez rtbth_hlpr_linux.c et passez à la ligne 575. Modifiez-le à partir de:

    //daemonize((PSTRING)&pOSTask->taskName[0]);
    

    à

    (PSTRING)&pOSTask->taskName[0];
    
  6. Vous êtes maintenant prêt à compiler. Compilez-le dans Terminal par:

    cd rtbth-3.9.3
    make
    Sudo make install
    
  7. Redémarrez. De plus, vous pouvez suivre le fichier PDF contenu dans ce Zip au cas où Bluetooth ne fonctionnerait toujours pas.
10
Adnan

Ceci est rapporté comme un bug sur LP:

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1189721

Pour l'instant, il n'y a pas de pilote en état de marche. Si vous avez un compte LP, je vous recommanderais de marquer le bogue comme vous concernant et de vous abonner aux notifications par courrier électronique sur les commentaires.

6
int_ua

Selon commentaire de shihiro sur le rapport de bogue, il existe un PPA bien maintenu disponible pour le pilote Bluetooth:

Utilisation en terminal

Sudo add-apt-repository ppa:blaze/rtbth-dkms
Sudo apt-get update
Sudo apt-get install rtbth-dkms

ou chargez-le et installez-le à partir du tableau de bord . Sur le premier lien, il y a le lien source vers le page GitHub . Dans README.md vous pouvez lire:

# Init
Sudo modprobe rtbth
Sudo rfkill unblock bluetooth
hcitool dev # check

Je l'ai tapé dans le terminal et tout fonctionne.

Sous Ubuntu 17.10 et éventuellement dans des versions antérieures, il est possible que le module soit automatiquement mis sur liste noire. Si cela vous arrive

  1. ajoutez rtbth à /etc/modules,
  2. ouvrez /etc/modprobe.d/dkms-rtbth.conf et commentez ou supprimez la ligne qui dit blacklist rtbth,
  3. redémarrez le système.
4
David Foerster

Voici un moyen facile, moi aussi je cherchais à résoudre ce problème depuis 2 ans maintenant et, tout au plus, je pouvais obtenir la liste de tous les périphériques Bluetooth et je ne pouvais me connecter à aucun d'entre eux, mais la solution ci-dessous que j'ai rencontrée aujourd'hui a fonctionné sans faille pour moi.

Il est très facile à installer, les fichiers sont situés sur github rtbth-dkms .

À installer,

Sudo add-apt-repository ppa:blaze/rtbth-dkms
Sudo apt-get update
Sudo apt-get install rtbth-dkms

suivez ensuite les commandes Init ci-dessous, votre BlueTooth fonctionnera maintenant. En cas de problème, laissez un commentaire, je me ferai un plaisir de vous aider.

Usage

# Init
Sudo modprobe rtbth
Sudo rfkill unblock bluetooth
hcitool dev # check

# Switch off
Sudo rfkill block bluetooth

# Switch on
Sudo rfkill unblock bluetooth

# Shutdown
Sudo pkill -2 rtbt
Sudo rmmod rtbth
0
Suraj Jain

La solution DKMS et systemd qui fonctionne sur mon ordinateur portable HP ProBook 455 G1 avec:
Contrôleur de réseau: Ralink corp. RT3290 Wireless 802.11n 1T/1R PCIe et son hybride.
Qui a Bluetooth intégré: Ralink corp. RT3290 Bluetooth.

Je suis demandé pour vérifier si cette instruction fonctionne sur Ubuntu.
Écrivez une version du système d'exploitation et du noyau Linux, par exemple:

TESTÉ SUR:
OS: Fedora 27 avec le gnome Shell.
Noyau Linux: 4.13.12-300.fc27.x86_64

Copy source from:
https://github.com/loimu/rtbth-dkms

DKMS Build Instruction:
http://xmodulo.com/build-kernel-module-dkms-linux.html

Copier les fichiers:

cp 49rtbt to /usr/lib64/pm-utils/sleep.d  
cp rtbt to one of this folder /bin or /usr/local/bin or /usr/bin

Faire un nouveau nom de fichier bluetooth-setup.sh et copier:

#!/bin/bash
Sudo mknod /dev/rtbth c 192 0
Sudo rtbt

Faire un démarrage automatique en suivant cette instruction.
Ajouter un script à systemd:

https://linuxconfig.org/how-to-automatically-execute-Shell-script-at-startup-boot-on-systemd-linux 
0
Adam Ł.