Solange ich meine MiniPCI-WLAN-Karte (Intel2200BG ohne IBM FRU) noch nicht unter Linux geflasht habe, bin ich mit folgender Lösung unterwegs, die den einen oder anderen Besitzer von Fremdkarten, bei denen die Tastenkombination Fn+F5 (WLAN ein/aus) nicht funktioniert, sicher auch interessieren könnte. Kann oder will ja nicht jeder mit Linux oder Hex-Editoren umgehen. Und bei mir funktioniert Fn+F5 auch trotz Treiber von der Lenovo-Seite (statt von Intel) nicht. Diese Lösung ist zwar nicht ganz so elegant, aber dafür kinderleicht. (eine ähnliche Lösung per PHP habe ich jetzt nachträglich nach Entstehen dieses Beitrags auch hier gefunden - WLAN per Thinkpad Taste aktivieren/deaktivieren - aber der Thread war eh schon älter und vielleicht ist mein kleines Tutorial und Script für Anfänger ja noch besser verständlich).
Ausgangspunkt - was soll erreicht werden:
Ein oder Ausschalten von WLAN per einzelnen Tastendruck (hier Access-IBM-Button)
Auch für z.B. X30-Besitzer interessant, bei denen es Fn+F5 ja sowieso gar nicht gibt.
Was wird benötigt
- Ein Notebook mit Windows 2000 oder höher und BIOS mit no1802-Patch
- Eine beliebige MiniPCI-Karte, eingebaut ins Notebook
- ThinkPad Button Customizer (http://www.schlackman.org/programs/thinkpad.html )
- Das kleine Kommandozeilentool DevCon als 32- oder 64-Bit-Version ( http://support.microsoft.com/kb/311272/de )
- Das unten stehende Script (mit Notepad als z.B. wlan_on_off.cmd speichern).
Installation:
- Falls nicht bereits vorhanden, den Thinkpad Button Customizer installieren bzw. in ein Verzeichnis der Wahl kopieren
- DevCon entpacken und aus dem Zielverzeichnis je nach System die devcon.exe als 32- oder 64-Bit-Version zusammen mit wlan_on_off.cmd nach z.B. c:\programme\thinkpad\wlan_on_off kopieren. Das Verzeichnis kann hier natürlich ebenfalls frei gewählt werden. Dann aber nicht vergessen, das entsprechend in der .cmd-Datei anzupassen.
- Dann muss noch die Gerätekennung der WLAN-Karte in der .cmd-Datei eingetragen werden. In meinem Fall lautet sie DEV_4220. Hierfür steht der Eintrag *4220. Es müssen also nur die 4 Ziffern angepasst werden. Die richtig ID bekommt man unter WinXP z.B. so heraus: im Gerätemanager die Eigenschaften des Wlan-Adapters aufrufen und unter dem Karteireiter Details die Geräteinstanzkennung ansehen. Dort steht eine Zeile in dem Format PCI\VEN_12AB\DEV_1234&SUBSYS_..... Wichtig sind hier nur die 4 fett markierten Ziffern. Wenn bei euch hier also z.B. 1234 steht, muss man dies in der cmd.-Datei anstelle von 4220 eintragen. (Die Kennung kann man nicht ganz so komfortabel auch über die Kommandozeile von devcon.exe ausgeben lassen).
- Button Customizer starten und der gewünschten Taste (z.B. Access IBM) die .cmd-Datei zuweisen. (Hinweis: im Auswahlfeld werden nur *.exe-Dateien angezeigt, man kann aber einfach in die Zeile für den Dateinamen *.* oder *.cmd eingeben und dann die .cmd-Datei auswählen oder direkt eintippen.)
- Fertig!
Funktionsweise:
- Das Befehlszeilenscipt wird per Button Customizer der gewünschten Taste, bei meinem X31 nehme ich die Access IBM, zugewiesen und auf Tastendruck ausgeführt. Dabei wird anhand der Existenz der .tmp-Datei geprüft, ob der Zustand des WLANs gerade auf ein oder aus steht (Lösung per Umgebungsvariable würde nur für die aktuelle Cmd-Sitzung gelten).
Das Script macht dann nichts weiter, als den WLAN-Adapter automatisch zu aktivieren bzw. deaktivieren.
Kommentare gerne erwünscht.
Ausgangspunkt - was soll erreicht werden:
Ein oder Ausschalten von WLAN per einzelnen Tastendruck (hier Access-IBM-Button)
Auch für z.B. X30-Besitzer interessant, bei denen es Fn+F5 ja sowieso gar nicht gibt.
Was wird benötigt
- Ein Notebook mit Windows 2000 oder höher und BIOS mit no1802-Patch
- Eine beliebige MiniPCI-Karte, eingebaut ins Notebook
- ThinkPad Button Customizer (http://www.schlackman.org/programs/thinkpad.html )
- Das kleine Kommandozeilentool DevCon als 32- oder 64-Bit-Version ( http://support.microsoft.com/kb/311272/de )
- Das unten stehende Script (mit Notepad als z.B. wlan_on_off.cmd speichern).
Code:
@echo off
cls
echo.
if exist %temp%\wlan.tmp goto wlan_off
echo Wireless LAN wird jetzt eingeschaltet...
c:\programme\thinkpad\wlan_on_off\devcon enable *4220 >nul
echo wlan on > %temp%\wlan.tmp
goto end
:wlan_off
echo Wireless LAN wird jetzt ausgeschaltet...
c:\programme\thinkpad\wlan_on_off\devcon disable *4220 >nul
del %temp%\wlan.tmp
:end
Installation:
- Falls nicht bereits vorhanden, den Thinkpad Button Customizer installieren bzw. in ein Verzeichnis der Wahl kopieren
- DevCon entpacken und aus dem Zielverzeichnis je nach System die devcon.exe als 32- oder 64-Bit-Version zusammen mit wlan_on_off.cmd nach z.B. c:\programme\thinkpad\wlan_on_off kopieren. Das Verzeichnis kann hier natürlich ebenfalls frei gewählt werden. Dann aber nicht vergessen, das entsprechend in der .cmd-Datei anzupassen.
- Dann muss noch die Gerätekennung der WLAN-Karte in der .cmd-Datei eingetragen werden. In meinem Fall lautet sie DEV_4220. Hierfür steht der Eintrag *4220. Es müssen also nur die 4 Ziffern angepasst werden. Die richtig ID bekommt man unter WinXP z.B. so heraus: im Gerätemanager die Eigenschaften des Wlan-Adapters aufrufen und unter dem Karteireiter Details die Geräteinstanzkennung ansehen. Dort steht eine Zeile in dem Format PCI\VEN_12AB\DEV_1234&SUBSYS_..... Wichtig sind hier nur die 4 fett markierten Ziffern. Wenn bei euch hier also z.B. 1234 steht, muss man dies in der cmd.-Datei anstelle von 4220 eintragen. (Die Kennung kann man nicht ganz so komfortabel auch über die Kommandozeile von devcon.exe ausgeben lassen).
- Button Customizer starten und der gewünschten Taste (z.B. Access IBM) die .cmd-Datei zuweisen. (Hinweis: im Auswahlfeld werden nur *.exe-Dateien angezeigt, man kann aber einfach in die Zeile für den Dateinamen *.* oder *.cmd eingeben und dann die .cmd-Datei auswählen oder direkt eintippen.)
- Fertig!
Funktionsweise:
- Das Befehlszeilenscipt wird per Button Customizer der gewünschten Taste, bei meinem X31 nehme ich die Access IBM, zugewiesen und auf Tastendruck ausgeführt. Dabei wird anhand der Existenz der .tmp-Datei geprüft, ob der Zustand des WLANs gerade auf ein oder aus steht (Lösung per Umgebungsvariable würde nur für die aktuelle Cmd-Sitzung gelten).
Das Script macht dann nichts weiter, als den WLAN-Adapter automatisch zu aktivieren bzw. deaktivieren.
Kommentare gerne erwünscht.