Hallo erstmal.
Die Vorgeschichte: mein Bluetooth Kopfhörer vom Discounter funktioniert vorzüglich, hat einen guten Klang mit viel Bass dank FFT based equalizer im Pulseaudio. Allerdings wird durch diese Soundausgabe via Bluetooth nach Reboot ein Klick im KDE Bluetooth Plasma Applet für das Wiederverbinden des Bluetooth basierenden Netzwerkgerätes nötig, was der Bluetooth Kopfhörer nun mal ist. Was mir dann vor einiger Zeit lästig genug wurde um Automagie auszutüfteln, die das für mich erledigt.
Bis vor kurzem scheint das sonst auch Niemand gestört zu haben, zumindest gab es in den IRC Ubuntu Kanälen nicht das geringste Interesse daran, als ich eine kleine Umfrage in den virtuellen Raum warf. Jetzt sehe ich aber im Forum doch nach und nach Einige auftauchen denen das schließlich doch noch auffällt, dass es ganz schick sein könnte, wenn die Lala mit Automagie wieder nach reboot oder sleep auf die Ohren gibt.
Hier nun das Notwendige für die Bluetooth reconnect Automagie.
-=*=-
Zunächst das Reconnect für Reboot, beziehungsweise nach Start:
#!/bin/sh sleep 10 && echo "connect **:**:**:**:**:**\nquit" | bluetoothctl exit
Dies Mini-Script speichern unter:
/home/USERNAME/btconnect.sh
"sleep 10" gibt dem System und der Hardware 10 Sekunden Zeit arbeitsfähig zu sein. Die MAC-Adresse des jeweiligen Bluetooth Gerätes das verbunden werden soll wird an Stelle der Sternchen im btconnect.sh Script eingefügt. Ausführbar machen nicht vergessen! (chmod +x)
Der Doppelpunkt ist das Trennzeichen zwischen den Zweierblöcken der Mac-Adresse des jeweiligen Gerätes. Im KDE Bluetooth Plasma Applet lassen sich die MAC-Adressen im Konfigurationsfenster (Schraubenschlüssel-Icon anklicken) oder in den KDE Systemeinstellungen leicht auslesen und bequem kopieren. Ansonsten sind die MAC-Adressen der Bluetooth Geräte auch unter /var/lib/bluetooth/ zu finden. Mehr dazu im ubuntuusers.de Wiki: Bluetooth/Einrichtung (Abschnitt „Dual-Boot-System“)
Dies btconnect.sh verbindet nun den Bluetooth Kopfhörer wenn man es ausführt, sei es aus dem Terminal oder aus dem Dateimanager Dolphin nach Sicherheitsabfrage.
Damit dies Script nun mit Automagie ausgeführt wird, wird es einfach in den Autostart verlinkt. Bei KDE lässt sich das ganz bequem über KDE Systemeinstellungen bewerkstelligen, unter "Starten und beenden" =⇒ "Autostart" =⇒ "Scriptdatei". Im Dateisystem landet es dann unter:
/home/USERNAME/.config/autostart-scripts/
Wem diese Möglichkeit nicht zur Verfügung steht nutzt für den Link zum Autostart den entsprechenden Link-Befehl ln -s. Link, anstatt Script kopieren, weil so dann die MAC-Adresse an einer Stelle gesetzt wird und gegebenenfalls dort zentral geändert werden kann, denn das btconnect.sh Script wird später auch noch für die Sleep Automagie genutzt.
-=*=-
Nun die Automagie für den Sleep-Modus:
#!/bin/sh case $1/$2 in pre/*) echo "Going to $2..." # Place your pre suspend commands here, or `exit 0` if no pre suspend action required ;; post/*) echo "Waking up from $2..." # Place your post suspend (resume) commands here, or `exit 0` if no post suspend action required `/home/USERNAME/btconnect.sh` ;; esac
Dies Script speichern unter
/lib/systemd/system-sleep/bluetooth-reconnect.sh
Ausführbar machen nicht vergessen!
Schamlos aber dankbar die Steilvorlage aus dem Arch Wiki genutzt: https://wiki.archlinux.org/index.php/Power_management#Hooks_in_.2Fusr.2Flib.2Fsystemd.2Fsystem-sleep. Auch wenn mir die Sleep Automagie für den Bluetooth Kopfhörer eher kaum etwas nutzt, da der Discounter Bluetooth Kopfhörer darauf ausgelegt ist 16 Stunden durchzuhalten, ja sogar 18 Stunden hat er schon mit einer Akkuladung geschafft, schaltet sich das gute Stück nach wenigen Minuten ab. Dann nutzt auch Reconnect Automagie nichts, der Bluetooth Kopfhörer will dann händisch per Knopfdruck eingeschaltet werden.