Bluetooth (A2DP-Source) Failed to connect

  • Hallo zusammen,

    ich versuche schon seit einiger Zeit meinen Raspi 3b+ (Buster lite) mit meinen Bluetooth Lautsprecher zu verbinden. Leider ohne Erfolg.

    Bin da auch noch ein NOOB in der Linux welt. :D


    Soweit ich das erkenne, ist bei mir das Profil a2dp-source nicht aktiviert. (soweit ich das gelesen habe, brauche ich das um von pi die musik zum Lautsprecher zu übertragen)

    Bisher konnte ich den Lautsprecher nur pairen und auf trust setzen. Connecten schlägt leider immer fehl.


    Hier mal die Infos zum Gerät aus bluetoothctl


    Allgemeine Infos:

    Wenn ich richtig liege ist hier nur a2dp-sink gestartet?!


    In der config habe ich allerdings a2dp-source eingetragen. Das wird aber wohl schön brav ignoriert.


    geblockt ist auch nichts


    Code
    1: hci0: Bluetooth
            Soft blocked: no
            Hard blocked: no


    dmesg sagt folgendes

    Code
    $ dmesg | grep luetooth
    [    5.965278] Bluetooth: Core ver 2.22
    [    5.965348] Bluetooth: HCI device and connection manager initialized
    [    5.965369] Bluetooth: HCI socket layer initialized
    [    5.965380] Bluetooth: L2CAP socket layer initialized
    [    5.965399] Bluetooth: SCO socket layer initialized
    [    6.058533] Bluetooth: hci0: unexpected event for opcode 0x0000
    [    7.532754] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
    [    7.532767] Bluetooth: BNEP filters: protocol multicast
    [    7.532791] Bluetooth: BNEP socket layer initialized


    Kann mir hier bitte jemand weiterhelfen?

  • Go to Best Answer
  • Hallo,

    Du weißt, daß die Foundationmit dem Raspberry Pi OS vom 02.12.2020 auf pulseaudio umgestellt hat (Link), damit entfällt bluealsa.


    in meinen alten Buster-Installationen habe ich den bluealsa-service nie verändert, weil "a2dp" default ist.

    Code: /lib/systemd/system/bluealsa.service
    --- nicht wie Du:
    ExecStart=/usr/bin/bluealsa -p a2dp-source
    --- sondern:
    ExecStart=/usr/bin/bluealsa


    Zeig mal die Ausgabe von

    • cut -d, -f4 /boot/issue.txt
    • pactl list sinks short
  • Du weißt, daß die Foundationmit dem Raspberry Pi OS vom 02.12.2020 auf pulseaudio umgestellt hat (Link), damit entfällt bluealsa.

    Nein das wusste ich nicht.



    hier die Ausgabe von


    Code
    $ cut -d, -f4 /boot/issue.txt
    Raspberry Pi reference 2020-08-20
     stage2


    und die zweite wird verweigert, auch mit sudo

    Code
    $ pactl list sinks short
    Verbindungsfehler: Verbindung verweigert
    pa_context_new() fehlgeschlagen: Verbindung verweigert
  • kle Danke für den Hinweis. Hab jetzt bluealsa entfernt und pulseaudio installiert.

    Jetzt konnte ich auf anhieb den Lautsprecher connecten :D


    da hätte ich mir einige Tage sparen können... ||

  • Raspberry Pi reference 2020-08-20

    stage2

    Du hast Raspbian Buster - Lite vom 20.08.2020 installiert.

    Lite heißt ohne grafische Oberfläche.

    Info pactl ist ein Kommando zur Steuerung von pulseaudio.

    Für bluealsa braucht man alsa-Konfiguration ~/.asoundrc und/oder /etc/asound.conf

    für pulseaudio nicht.

    Schön, daß es jetzt geht, kle

    Edited once, last by kle ().

  • kle jetzt bin ich es doch nochmal.

    Also mit dem Lautsprecher bin ich jetzt verbunden


    Ich habe auf dem pi den Rasspotify installiert. Wenn ich nun Musik über Spotify auf dem Pi abspielen möchte, kommt kein Ton.

    Abgespielt wird allerdings was.


    Muss ich noch was einstellen/umstellen?

  • ich versuche schon seit einiger Zeit meinen Raspi 3b+ (Buster lite) mit meinen Bluetooth Lautsprecher zu verbinden. Leider ohne Erfolg.

    in Deinem 1. Beitrag geht es um einen Bluetooth-Lautsprecher, aber mit welchem Player, das schreibst Du nicht.

    Ich habe auf dem pi den Rasspotify installiert. Wenn ich nun Musik über Spotify auf dem Pi abspielen möchte, kommt kein Ton.

    über rasspotify kann ich nichts sagen, ich habe keine spotify-Account. In den Anleitungen, die ich gesehen habe, wird bluealsa benutzt, kein pulseaudio.


    Um die Sache systematisch anzugehen, poste bitte den Link auf die Anleitung, nach der Du vorgegangen bist, dann sehen wir weiter.

  • kle Hab gelesen, dass Raspotify wohl Probleme macht, hab das nun deinstalliert.


    Nun habe ich durch den Nutzer @SparklingBird60393 in einem seiner Beiträge gelesen, dass er spotifyd verwendet.

    Hab mir das angeschaut und nun auch installiert. Allerdings bekomm ich es nicht zum laufen.


    Code
    systemctl --user status spotifyd.service
    ● spotifyd.service - A spotify playing daemon
       Loaded: loaded (/etc/systemd/user/spotifyd.service; enabled; vendor preset: enabled)
       Active: activating (auto-restart) (Result: exit-code) since Tue 2021-01-26 15:03:56 CET; 5s ago
         Docs: https://github.com/Spotifyd/spotifyd
      Process: 10587 ExecStart=/home/pi/spotify/spotifyd --no-daemon (code=exited, status=101)
     Main PID: 10587 (code=exited, status=101)


    Weiß nicht woran es scheitert.


    hier mal die Config, diese liegt unter ~/.config/spotifyd/spotifyd.conf

    username und password hab ich unkenntlich gemacht ;)


     /etc/systemd/user/spotifyd.service

    • Best Answer

    michi_pi raspotify funktioniert.


    Mein Rat: nimm wieder das 2020-08-20-raspios-buster-armhf-lite.zip-Image und flashe es auf SD-Karte ("Lite" hat kein pulseaudio und kein bluealsa).


    Folge dieser Anleitung.

    Wenn irgendwas nicht funktioniert, frage mich.

    Ändere nichts (weil es so irgendwo im Internet steht, da steht viel...

    • Du mußt ein "Spotify Premium Abo" haben (der 1. Monat ist kostenlos).
    • pulseaudio darf nicht vorhanden sein, evtl. deinstallieren mit sudo apt purge pulseaudio
    • Du mußt bluealsa installieren mit sudo apt install bluealsa
      In der Datei /etc/asound.conf muß das default alsa pcm device definiert sein, es enthält u.a. die Mac-Adresse des Bluetooth-Lautsprechers.
    • mit sudo bluetoothctl muß Du Seine Bluetooth-Lautsprecher pair-en und trust-en.
      Achtung: danach kannst Du rebooten. Beim Einschalten des Bluetooth-Lautsprechers verbinden er sich automatisch!
    • mit Kommando alsamixer kannst Du die Lautstärke (mit den Cursortasten) einstellen.
    • Test: mit Kommando aplay /usr/share/sounds/alsa/Front_Center.wav hörst Du "front center"
    • Du mußt raspotify installieren mit
      curl -sL <a href="https://dtcooper.github.io/raspotify/install.sh">https://dtcooper.github.io/raspotify/install.sh</a> | sh
    • Die Konfiguration für raspotify muß den Raspi "sichtbar" machen.
      Quote from /etc/default/raspotify

      ...

      # To make your device visible on Spotify Connect across the Internet add your

      # username and password which can be set via "Set device password", on your

      # account settings, use `--username` and `--password`.

      ...

      Ändere die OPTIONS-Zeile mit sudo nano /etc/default/raspotify und zwar
      so: OPTIONS="--username userVomSpotifyAccount --password PasswortVomSpotifyAccount"
      Als userVomSpotifAccount habe ich eine eMail-Adresse



    Achtung: "xx:xx:xx:xx:xx:xx" in Zeile 15 muß ersetzt werden mit der Mac-Adresse Deines Bluetooth-Lautsprechers.

    Das sollte es sein.

    Schönen Tag, kle

  • kle So bin jetzt dazu gekommen und hab alles neu installiert.

    Bin deine Anleitung durchgegangen.

    Hab den Lautsprecher noch pairen und trusten können, nach dem reboot geht es aber nicht.


    wenn ich den Vorgang nochmal wiederhole kommt das

    Code
    $ bluetoothctl
    [bluetooth]#  power on
    No default controller available


    bluealsa und bluetooth sind aktiv


    hab gerade gesehen, dass hciuart Probleme macht

  • kle hab es gestern doch noch zum laufen bekommen. Hatte in der /boot/config.txt bluetooth deaktiviert, da ich noch ein aufsteckmodul betreibe.


    dachte mit dem Eintrag dtoverlay=pi3-disable-bt setzte ich nur das onboard Bluetooth außerkraft.


    Hab jetzt allerdings noch eine andere Frage.

    Kann ich die Lautstärke am alsamixer voreinstellen? Denn bei dem neu verbinden springt dieser wieder auf 100 zurück

  • Hallo,

    No default controller available

    bluetoothctl weiß nicht welcher controller benutzt werden soll. (Bluetoothctl-Kommandos list und select benutzen um eine Bluetooth-Controller zu wählen)


    Info: Das Tool bluetoothctl bietet das Kommando

    help zeigt alle bluetoothctl-Kommandos

    list zeigt die erkannten Bluetooth-Controller

    select <controller-mac> wählt den Bluetooth-Controller aus

    show zeigt den aktuellen Bluetooth-Controller

    dachte mit dem Eintrag dtoverlay=pi3-disable-bt setzte ich nur das onboard Bluetooth außerkraft.

    • das ist richtig aber...
    • das Overlay pi3-disable-bt entstand mit dem RPi 3B, dem 1. Raspi mit onboard-Bluetooth-Chip. Mit weiteren Raspis (RPi Zero W, RPi 3B+, RPi 3A+, RPi 4B, ...) mit onboard-Bluetooth ist das Overlay umbenannt worden in disable-bt, weil es nicht nur für RPi 3* verwendet werden kann. Aus Kompatibilitätsgünden ist das Overlay pi3-disable-bt weiterhin vorhanden.
    • Beschreibung aller Overlays in Datei /boot/overlays/README

    Kann ich die Lautstärke am alsamixer voreinstellen? Denn bei dem neu verbinden springt dieser wieder auf 100 zurück

    Hast Du alsamixer ausprobiert?

    Schönen gruß, kle

  • Quote

    das Overlay pi3-disable-bt entstand mit dem RPi 3B, dem 1. Raspi mit onboard-Bluetooth-Chip. Mit weiteren Raspis (RPi Zero W, RPi 3B+, RPi 3A+, RPi 4B, ...) mit onboard-Bluetooth ist das Overlay umbenannt worden in disable-bt, weil es nicht nur für RPi 3* verwendet werden kann. Aus Kompatibilitätsgünden ist das Overlay pi3-disable-bt weiterhin vorhanden.

    das heißt wenn ich das onboard Bluetooth deaktivieren möchte, schreibe ich nur disable-bt, mein USB-Bluetooth-Stick funktioniert dann weiterhin?



    Ich hab den alsamixer verwendet. hab den auf einen Wert (30) eingestellt. Nach einem neustart war in alsamixer der Wert wieder auf 100 gesetzt.



    Schönen gruß, Michi

  • das heißt wenn ich das onboard Bluetooth deaktivieren möchte, schreibe ich nur disable-bt, mein USB-Bluetooth-Stick funktioniert dann weiterhin?

    ja

    Ich hab den alsamixer verwendet. hab den auf einen Wert (30) eingestellt. Nach einem neustart war in alsamixer der Wert wieder auf 100 gesetzt.

    das ist bei mir auch so. Du kannst (z.B. als autostart vielleicht wenn Bluetooth-Lautsprecher connected, das Gerät muß in alsa vorhanden sein, vielleicht mit udev event) die Lautstärke mit Kommando auf 30% regeln

    amixer -D bluealsa sset 'xx:xx:xx:xx:xx:xx - A2DP' 30%


    xx:xx:xx:xx:xx:xx ist die mac-Adresse des Bluetooth-Lautsprechers


    Die Lautstärke kannst Du

    • mit alsamixer am Raspi oder
    • am PC-Browser bzw in der Spotify-App

    regeln. Beide Regler wissen nichts voneinander, d.h. sie können nicht den Wert des anderen Reglers abfragen.

    Wenn Du den alsamixer auf einen Wert einstellst, kannst Du am Browser/Spotify-App die Lautstärke verringern aber nicht erhöhen.

    Edited 3 times, last by kle ().

  • Ich hab den alsamixer verwendet. hab den auf einen Wert (30) eingestellt. Nach einem neustart war in alsamixer der Wert wieder auf 100 gesetzt.

    Anstatt dem alsamixer nimm für Spotify die Datei /etc/default/raspotify

    Code: /etc/default/raspotify
    VOLUME_ARGS="--initial-volume=30"

    Gib Kommando librespot -h für weitere Optionen an.


    Wenn Du die Datei /etc/default/raspotify geändert hast, mußt Du den Spotify-Client auf dem Raspi restarten

    mit sudo service raspotify restart


    Schönen Gruß, kle

  • Hallo kle vielen Dank für deine Hilfe. Du hast mir sehr geholfen. :danke_ATDE::bravo2:

    Es läuft bei mir jetzt schon seit ein paar Tage alles gut.

    VOLUME_ARGS="--initial-volume=30" hab den Wert bereits gesetzt gehabt.


    Ich verwende das System jetzt für einen Wecker. Ich lass mich zu einer bestimmten Zeit mit einer bestimmten Playlist wecken.

    Funktioniert sehr gut.

  • Hallo,

    noch eine Frage, wie ist der "Wecker" realisiert? Du könntest Deinen Wecker im Projekt Forum vorstellen, gerne auch mit Bildern.


    Wenn Dein Anliegen erledigt ist, dann markiere bitte dieses Thema als "erledigt" mit dem Button und "als erledigt markieren"

    Dann weiterhin viel Spaß, kle

  • Hallo, die letzte Nachricht ist irgendwie untergeganen.

    Ich verwende den iobroker für die Hausautomation, dort habe ich eine Visualisierung erstellt, wo ich die Weckzeit einstelle. (Ziel wäre einmal, das direkt mit Google einzustellen, da ich mit dem auch schon im Bett darüber rede :D)

    Wenn ich den Wecker eingestellt und aktiviert habe, läuft ein Skript ab, der dann zu der genannten Zeit in Spotify dieses Gerät und eine voreingestellte Playlist auswählt. Beginnend mit der Lautstärke 0 erhöht sich alle paar Sekunden die Lautstärke um weitere 2, bis zu einer gewissen Lautstärke. (Damit ich nicht dirket vom Bett falle :) )


    Ich weiß nicht ob hier welche IoBroker verwenden, falls interesse besteht kann man mich jederzeit hier oder im IoBroker Forum anschreiben. :)