Acer Hotkeys
Archivierte Anleitung
Dieser Artikel wurde archiviert. Das bedeutet, dass er nicht mehr auf Richtigkeit überprüft oder anderweitig gepflegt wird. Der Inhalt wurde für keine aktuell unterstützte Ubuntu-Version getestet. Wenn du Gründe für eine Wiederherstellung siehst, melde dich bitte in der Diskussion zum Artikel. Bis dahin bleibt die Seite für weitere Änderungen gesperrt.
Artikel für fortgeschrittene Anwender
Dieser Artikel erfordert mehr Erfahrung im Umgang mit Linux und ist daher nur für fortgeschrittene Benutzer gedacht.
Hinweis:
In diesem Artikel geht es speziell um Tasten zum Ein-/Ausschalten der WLAN-Karte. Anleitungen für Multimedia-Tastaturen sind in einem eigenen Übersichtsartikel zu finden.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
Viele Notebooks besitzen zusätzliche Spezial-Tasten, mit denen man bestimmte Funktionen des Gerätes ein- bzw. ausschalten kann. So ist z.B. bei manchen Laptops die WLAN- und Bluetooth-Nutzung erst nach Aktivierung modellspezifischer Tasten möglich. Während bei anderen Betriebssystemen die Hersteller die dazu notwendige Software vorinstallieren, muss man sich unter Linux etwas mehr Mühe geben.
Der Acer-Hotkey-Treiber unterstützt neben älteren Notebooks der Fa. Acer auch einige Geräte von Medion, Fujitsu Siemens und HP Compaq. Eine Liste der unterstützten Modelle ist beim SourceForge-Projekt rfswitch 🇬🇧 zu finden (hier gibt es auch Hinweise zu alternativen Methoden).
Achtung!
Das Kernelmodul acerhk
ist nur für 32-bit-Systeme (i386
) geeignet.
Alternativ kann #wistron_btns ausprobiert oder das in der Standardinstallation bereits enthaltene Programm rfkill
.
sudo rfkill unblock all
Prinzipiell gibt es drei Möglichkeiten, das Problem mit einer WLAN-Taste zu lösen:
Kontaktpin auf der Karte deaktivieren (siehe Links)
Externen WLAN-USB-Stick nutzen
Hinweis:
Bei Verwendung eines externen WLAN-Adapters wird dieser eventuell trotzdem durch den Treiber des internen Adapters blockiert. Daher:
einen Eintrag in
/etc/modprobe.d/blacklist.conf
für den internen Adapter (z.B. ipw2200) hinzufügen oderden internen WLAN-Adapter ausbauen
Das Kernelmodul
acerhk
selbst kompilieren. Dies wird im weiteren Verlauf des Artikels beschrieben.
Installation¶
Das ehemals vorinstallierte Kernelmodul acerhk
ist ab Ubuntu 9.10 nicht mehr Bestandteil einer Standardinstallation. Stattdessen muss das Kernelmodul selbst kompiliert werden. Weiterhin muss bei jedem Kernelupdate der Vorgang zur Installation und Kompilierung des Moduls wiederholt werden. Um diesen Schritt zu automatisieren, kann man DKMS verwenden. Details sind der Anleitung Archiv/Acer Hotkeys/DKMS zu entnehmen.
Hinweis:
Zur Installation von Paketen wird vorausgesetzt, dass man bereits (z.B. via LAN) mit dem Internet verbunden ist. Eine WLAN-Nutzung ist erst nach Erledigung diverser Vorarbeiten möglich, die im folgenden erläutert werden.
Ab Ubuntu 12.04 ist das benötigte Paket acerhk-source nicht mehr in den offiziellen Paketquellen enthalten (PPA nutzen)
Vorbereitung¶
Es wird das folgende Paket benötigt [2]:
build-essential
Befehl zum Installieren der Pakete:
sudo apt-get install build-essential
Oder mit apturl installieren, Link: apt://build-essential
Außerdem wird das Paket linux-headers passend zur eigenen Kernel-Version und -Architektur (-generic
, -generic-pae
usw.) benötigt. Dieses Paket lässt sich über den folgenden Befehl installieren:
sudo apt-get install linux-headers-$(uname -r)
Ab Ubuntu 13.04¶
Es steht ein aktualisierter Quelltext über ein PPA [1] zur Verfügung. Damit kann das Kernelmodul manuell oder mit DKMS kompiliert werden. Dazu muss die Datei acerhk.tar.bz2 im Verzeichnis /usr/src/ entpackt werden:
cd /usr/src sudo tar -xjf acerhk.tar.bz2
Nun kann man in den entstandenen Ordner wechseln und das Kernelmodul kompilieren:
cd /usr/src/modules/acerhk sudo su make exit
Anschließend mit Root-Rechten das neue Kernelmodul kopieren und die Liste der Kernelmodule aktualisieren:
sudo cp acerhk.ko /lib/modules/$(uname -r)/kernel/ubuntu/ sudo depmod -A
Jetzt kann das Kernelmodul geladen werden (siehe unten).
Ausgangssituation¶
Die WLAN-Karte ist ausgeschaltet ("Radio disabled by HW RF Kill switch"
) und muss erst aktiviert werden. Dies zeigt in einem Terminalfenster [3] der Befehl:
rfkill list wifi
Beispielausgabe:
0: phy0: Wireless LAN Soft blocked: no Hard blocked: yes
Aktivierung der WLAN-Sondertaste¶
Nun muss das Kernelmodul mit dem Befehl
sudo modprobe -v acerhk
geladen werden. Bei manchen Notebooks muss man zusätzliche Parameter angeben, z.B.
sudo modprobe -v acerhk force_series=MODELL verbose=1
Falls man acerhk mit falschen Parametern geladen hat, kann man es ohne weiteres mit dem Befehl
sudo modprobe -r acerhk
wieder entfernen und noch einmal probieren.
Parameter für bestimmte Hardware¶
Diese Optionen sind aufgrund einer automatischen Erkennung oft nicht notwendig, variieren dann aber je nach Hersteller oder auch Modell. Daher muss unter Umständen im Quellcode der Datei acerhk.c ⮷ (ab Zeile 960) nachgeschaut werden, wie das Notebook bzw. Modell bezeichnet wird und ob es dritek
benutzt oder nicht (siehe auch rfswitch Laptop Matrix 🇬🇧).
Hardwareabhängige Optionen | |
Modell | Befehlszeile |
Acer Aspire 5630 | sudo modprobe acerhk force_series=2020 usedritek=1 |
Acer Extensa 2902LMi (nur WLAN, kein Bluetooth) | sudo modprobe acerhk force_series=290 usedritek=1 |
Acer Travelmate 291 LMi | sudo modprobe acerhk force_series=290 usedritek=1 |
Acer Travelmate 292 LCi | sudo modprobe acerhk force_series=290 usedritek=1 verbose=1 |
Acer Travelmate 4000 | sudo modprobe acerhk force_series=4000 usedritek=1 |
FSC Amilo 1650(G) | sudo modprobe acerhk force_series=5020 autowlan=1 |
Medion MD96500/MD97000/MD97600/MD98000 | sudo modprobe acerhk force_series=95400 autowlan=1 |
Verwendung¶
Nun kann die WLAN-Karte durch einmaliges Drücken des Schalters aktiviert bzw. deaktiviert werden. Eine aktivierte Karte zeigt wiederum der Befehl rfkill
:
0: phy0: Wireless LAN Soft blocked: no Hard blocked: no
Nur wenn kein Schalter bzw. eine spezielle Taste vorhanden ist, wird die WLAN-Karte mit dem Befehl:
echo 1 | sudo tee > /proc/driver/acerhk/wirelessled
aktiviert und mit
echo 0 | sudo tee > /proc/driver/acerhk/wirelessled
wieder "ausgeschaltet". Der eigentliche Verbindungsaufbau erfolgt prinzipiell immer mit dem NetworkManager (siehe dort).
Automatische Einbindung beim Booten¶
Beim Ausschalten werden die Einstellungen für das WLAN "vergessen" und man steht dann beim nächsten Start ohne WLAN und Wireless LED da. Um das zu beheben, muss man Folgendes machen:
Achtung!
Die hier angegebenen Parameter beziehen sich auf ein Travelmate 291 LMi und müssen an das eigene Modell angepasst werden!
Man öffnet in einem Editor [4] mit Root-Rechten [5] die Datei /etc/modules und fügt die Zeile
acerhk force_series=MODELL usedritek=1 verbose=1
an.
Damit bei Modellen mit LED die Wireless-LED immer angeschaltet wird und auch auf den Schalter reagiert, trägt man zusätzlich mit einem Editor und Root-Rechten in der Datei /etc//etc/rc.local vor exit 0
folgende Zeile ein:
echo 1 > /proc/driver/acerhk/wirelessled
Damit ist gewährleistet, dass die LED bei jedem Booten angeschaltet wird und das WLAN funktioniert.
Somit muss man sich nicht mehr bei jedem Start selbst darum kümmern, ob das Kernelmodul acerhk
geladen ist oder nicht. Das geschieht nun automatisch. Wenn man das WLAN aus- bzw. anschalten will, kann man es bequem mit dem Schalter am Laptop machen. Wenn kein Schalter vorhanden ist, kann man es wie oben beschrieben manuell machen.
Alternative¶
wistron_btns¶
Mit wistron_btns
steht ein alternatives Kernelmodul bereit, dass die gleiche Funktionalität wie acerhk
bietet. Dieses Modul hat den entscheidenden Vorteil, bereits Bestandteil des Standard-Kernels zu sein, was das früher erforderliche mühsame Kompilieren überflüssig macht und unterstützt auch 64-bit-Systeme. Möchte man dieses Modul verwenden, reicht folgender Befehl:
sudo modprobe -v wistron_btns
Erscheint keine Fehlermeldung, prüft man die Ausgangssituation und fährt man mit dem oben beschriebenen Test fort. Ist dieser erfolgreich, trägt man das Kernelmodul noch in die Datei /etc/modules ein, damit es beim Rechnerstart automatisch geladen wird. Informationen, ob wistron_btns
auch eine eventuell vorhandene LED ein- oder ausschalten kann, liegen nicht vor.
Links¶
WLAN-Taste bei einem Medion MD96500 aktivieren - Forendiskussion, 06/2013
Vollständiges How-To im Forum für Ubuntu 10.04, 10.10 und 11.04
Hardwarelösung: Kontaktpin abkleben (WLAN-Taste wird deaktiviert)
Bilder zum Thema: Mini-PCI (Pin 13), Mini-PCI-Express (Pin 20)
How to bypass a laptop wireless switch 🇬🇧 - Anleitung für Mini-PCI Express, Blogbeitrag 05/2011