Print as PDF - DD-WRT

Transcrição

Print as PDF - DD-WRT
Asus_WL-500g_Premium_de
Contents
• 1 Gerät Foto
• 2 Unterstützung
• 3 USB-Support
• 4 USB-Performance Testen
• 5 Installation eines Samba-Servers
• 6 Drucker Support
• 7 Temporäre HTML Seite mit NVRAM Inhalt
erstellen
• 8 Audio Streaming
• 9 Übertakten
• 10 ASUS WL-500g Premium Wiederbeleben
• 11 Links
En
Eko
PostPosted: Fri Jan 01, 2010 1:43 am Post subject: Reply with quote This is a problem with these routers: If I
set right value, so led turns off when radio is off, the router will crash 80% of time in client mode.
Better to have stable router then one tiny led cosmetic problem.
For initial flash see All Asus WL-500xx series routers
Brick recovery: Try Hard reset, Serial RS-232 connection, and as a very last resort there is the "pin 9 short
option" [1]. Unfortunately no known JTAG option on this model.
Gerät Foto
Unterstützung
Der Asus WL-500g Premium wird vom aktuellen Build (dd-wrt.v23 SP2) komplett unterstützt. Dies bedeutet
die 32 MB RAM werden von Anfang an erkannt, genauso wie alle Ethernet Schnittstellen
(WAN,LAN,W-LAN) richtig zugeordnet sind. Der Build macht auf dem Router einen sehr stabilen Eindruck.
Switching Loops sollten unbedingt vermieden werden (auch nicht WAN und LAN auf gemeinsamen Switch).
Contents
1
Asus_WL-500g_Premium_de
USB, Samba und Drucker Support benötigen zum derzeitigen Stand Handarbeit.
Nach dieser Anleitung kann auch ein Asus WL-500G DeLuxe großteils konfiguriert werden. Nur darf man
hier als Basis maximal ein Mini-DD-WRT (hier aktuell: dd-wrt.v23_sp2_mini) nehmen, da ansonsten kein
/jffs verfügbar ist und keine Module / Packages nachinstalliert werden können (mangels Speicherplatz).
USB-Support
Installation:
Die folgenden Pakete müssen installiert werden :
ipkg
ipkg
ipkg
ipkg
install
install
install
install
kmod-usb-uhci # nur nötig wenn man USB 1.1 Geräte (z.B.: Drucker) anschließen will
kmod-usb-core
kmod-usb2
kmod-usb-storage
Bei DD-WRT v23 oder niedriger muss noch eine Kleinigkeit in die NVRAM Variable rc_startup geschrieben
werden. Dies führt beim Start alle *.startup Scripte unter /jffs/etc/config/ aus.
In einer Shell auf dem Router:
nvram set rc_startup="
for I in `/bin/ls /jffs/etc/config/*.startup`
do
sh $I &
done"
nvram commit
Über das Webinterface
for I in `/bin/ls /jffs/etc/config/*.startup`
do
sh $I &
done
Hier kann es zu Fehlermeldungen im Webinterface kommen. Dies liegt wohl an den unterschiedlichen
Zeilenende-Kennungen bei Unix (CR) und Windows (CR + LF). Dann einfach die Zeilenumbrüche per
Backspace/Entf. löschen und neue Zeilenumbrüche per Return einfügen.
Dies ist das Script, mit dem die für USB nötigen Kernel-Module beim Ausführen geladen werden. Einfach
den Text ausschneiden und in /jffs/etc/config/usb.startup ablegen (Achtung: Diese Datei hatte auf meinem
WL-500G DeLuxe die Rechte 744. Erst nachdem ich dies auf 777 geändert (per WinSCP, sollte aber auch per
telnet-Session mittels chmod gehen) habe, wurde sie beim Restart auch gelesen).
#!/bin/sh
insmod /jffs/lib/modules/2.4.30/usbcore.o
insmod /jffs/lib/modules/2.4.30/ehci-hcd.o
insmod /jffs/lib/modules/2.4.30/scsi_mod.o
insmod /jffs/lib/modules/2.4.30/usb-storage.o
# Für USB 1.1 Support die Raute (#) vor der nächsten Zeile entfernen
Unterstützung
2
Asus_WL-500g_Premium_de
#insmod /jffs/lib/modules/2.4.30/uhci.o
insmod /jffs/lib/modules/2.4.30/sd_mod.o
Auf einem Asus WL-500gPremium sollte es bei Eingabe des Kommandos "dmesg" nun etwa so aussehen:
SCSI subsystem driver Revision: 1.00
Initializing USB Mass Storage driver...
usb.c: registered new driver usb-storage
USB Mass Storage support registered.
uhci.c: USB Universal Host Controller Interface driver v1.1
PCI: Enabling device 01:03.0 (0000 -> 0001)
uhci.c: USB UHCI at I/O 0x100, IRQ 2
usb.c: new USB bus registered, assigned bus number 2
hub.c: USB hub found
hub.c: 2 ports detected
PCI: Enabling device 01:03.1 (0000 -> 0001)
uhci.c: USB UHCI at I/O 0x120, IRQ 2
usb.c: new USB bus registered, assigned bus number 3
hub.c: USB hub found
hub.c: 2 ports detected
Für den Betrieb von USB-Massenspeichern müssen noch die Filesystem (FAT/EXT/XFS) Module installiert
werden.
ipkg
ipkg
ipkg
ipkg
install
install
install
install
kmod-vfat
kmod-ext2
kmod-ext3
kmod-xfs
Das Paket kmod-xfs hat aktuell (03/2007) einen Fehler. Falls Sie es nicht benötigen, lassen Sie es einfach
weg.
Damit diese Module beim Neustart mitgeladen werden, muss der folgende Text noch an
/jffs/etc/config/usb.startup angehängt werden.
# FAT
insmod /jffs/lib/modules/2.4.30/fat.o
insmod /jffs/lib/modules/2.4.30/vfat.o
#XFS
insmod /jffs/lib/modules/2.4.30/xfs.o
Die Partitionen der ersten USB-Platte sind nun über /dev/scsi/host0/bus0/target0/lun0/part1 bis partN
erreichbar.
USB-Performance Testen
Mithilfe von hdparm und einer USB Festplatte habe ich den Datentransfer am Asus WL-500g Premium
getestet. Ohne Übertaktung oder Aktivierung weiterer hdparm Parameter gibt es:
hdparm -tT /dev/scsi/host0/bus0/target0/lun0/part2
Timing cached reads:
188 MB in 2.04 seconds = 92.16 MB/sec
Timing buffered disk reads:
24 MB in 3.19 seconds =
7.52 MB/sec
USB-Support
3
Asus_WL-500g_Premium_de
Zumindest auf dem ASUS gibt es durch übertakten keine geschwindigkeitsvorteile am USB.
Wer hdparm noch nicht auf seinem Router installiert hat kann dies durch eingabe des folgenden Befehls tun:
ipkg install http://www.cslab.ece.ntua.gr/~chazapis/hdparm_6.3-1_mipsel.ipk
Installation eines Samba-Servers
Wenn man einen Router mit schneller CPU, genug Speicher und funktionierenden USB 2.0 Ports (wie den
ASUS WL-500g Premium) sein eigen nennt, möchte man sicher die vorzüge der Windows Datei Freigabe
nutzen. Um dies zu tun muss man Samba installieren.
ipkg install samba
nach einigem ruminstallieren ist alles fertig für einen ersten Test. Leider bricht /jffs/etc/init.d/samba start mit
diesem Fehler ab:
nmbd: can't resolve symbol 'fopen64'
smbd: can't resolve symbol 'stat64'
Durch eine Installation von uclibc_0.9.28-6_mipsel.ipk lässt sich dies beheben. Ein nettes Howto hierzu leider
in Englisch [2]
Zum Abschluss braucht noch die smb.conf einige Anpassungen (vi /jffs/etc/samba/smb.conf).
Aus Gründen der Geschwindigkeit, sollte man beim benutzen von samba unbedingt eine Swap Partition
einrichten. Damit lassen sich Datenraten von ca 4 MB/sek erreichen.
Da Festplatten viel Strom brauchen, sollten sie runter gefahren werden, wenn sie nicht gebraucht werden. [3]
Drucker Support
Man sollte den Drucker Support nicht über Cups realisieren, da Cups spoolt und somit möglicherweise bei
großen Druckaufträgen einen zu großen RAM bedarf hat. p910nd wird anstelle von Cups den Job
übernehmen. Vorausgesetzt wird ein funktionierendes USB.
ipkg install p910nd
ipkg install kmod-usb-printer
Die Datei "/jffs/etc/config/usb.startup" anpassen:
insmod /jffs/lib/modules/2.4.30/printer.o
Das fügt die Druckerunterstützung zu den Modulen hinzu.
USB-Performance Testen
4
Asus_WL-500g_Premium_de
dmesg sollte nun etwa dies zeigen (Beispiel):
hub.c: new USB device 01:02.0-1, assigned address 2
printer.c: usblp0: USB Bidirectional printer dev 2 if 0 alt 0 proto 2 vid 0x04A9 pid 0x1094
Dies bedeutet, dass an USB 1 Gerät gefunden wurde: usblp0 = Gerät /dev/usb/lp0
/jffs/etc/config/usb.startup bearbeiten und folgendes einfügen (Beispiel):
#Beispieldrucker
/jffs/usr/sbin/p910nd -b -f /dev/usb/lp0 0
Dieses Beispiel startet den Printserver für den gefundenen Drucker . -b bedeutet bidirektional, -f leitet den
Gerätenamen ein (/dev/usb/lp0), und die Ziffer am Ende (0,1 or 2) legt den Port fest, auf dem der Printserver
Aufträge entgegen nimmt -- 9100, 9101 oder 9102.
Router neu starten. Er sollte nun auf Port 9100 (oder 9101, 9102) im RAW Format (oder auch per
gerätespezifischem Treiber) Druckaufträge annehmen.
Unter Cups von Linux aus folgende Einrichtung verwenden:
Gerät:
APP/Socket/HP JetDirect
Geräte URI:
socket://hostname:9100
(Hostname ist die IP des Routers)
Im weiteren den richtigen Treiber für deinen Drucker wählen und nach dem Speichern die
Druckereinstellungen anpassen (Papierformat u.s.w.)
Temporäre HTML Seite mit NVRAM Inhalt erstellen
Unter Administration, Commands den folgenden Text ins Fenster einfügen und ausführen:
nvram show | sed 's/$/<\br>/' > /tmp/www/nvram.htm
Die Seite ist nun unter http://ROUTER-IP/user/nvram.htm abrufbar
Audio Streaming
Mit einer einfachen USB-Soundkarte wird der Wl-500g P (wie der Wl-500g deluxe) zum Audio-Center. Da
allerdings derzeit weder USB noch Audio von DD-WRT nativ unterstützt werden, muss etwas getweakt
Drucker Support
5
Asus_WL-500g_Premium_de
werden:
1. Für USB Support sorgen(ev. mit USB 1.1-Support!)
2. Kernel-Module f. Sound installieren (Pakete dafür sind noch nicht in den DD-WRT Repositories, wir
verwenden daher die FreeWRT-Versionen)
ipkg install http://www.freewrt.org/downloads/1.0/brcm-2.4/packages/kmod-soundcore_2.4.33.3-brcm
ipkg install http://www.freewrt.org/downloads/1.0/brcm-2.4/packages/kmod-usb-audio_2.4.33.3-brcm
3. Module laden (+ für automatisches Laden bei Neustart sorgen)
insmod /jffs/lib/modules/2.4.33.3/soundcore.o
insmod /jffs/lib/modules/2.4.33.3/audio.o
Diese Zeilen sollten auch in das startup-script (siehe USB Support) eingetragen werden:
vi /jffs/etc/config/usb.startup
(mit "i" in den Einfügemodus, mit ESC raus, mit ":wq" speichern)
Ob die Module tatsächlich geladen sind, kann mit "lsmod" überprüft werden -- die Module sollten
aufscheinen. Wenn die Soundkarte angesteckt ist, sollte "dmesg" irgendwas von Adresszuweisung usw.
enthalten.
4.Karte verwenden
Nun kann die USB-Soundkarte verwendet werden. Dazu bieten sich der Music Player Daemon, oder der
eSound Daemon an. Beide können von geeigneten Multimedia-Programmen (für eSound: KMPlayer,
amaroK...) über das Netzwerk (üblicherweise auf 192.168.1.1) angesprochen werden
eSound Mini-Howto:
cd /jffs/usr/bin
wget http://home.in.tum.de/%7Epustka/mipsel/esd
chmod a+x esd
esd -d /dev/sound/dsp -tcp -public &
Wenn alles geklappt hat, sollte nach der letzten Zeile "using device x" dastehen. Wenn ja, dann die letzte zeile
ins startup-script einfügen (siehe oben), damit eSound beim booten des Routers automatisch gestartet wird.
Jeder Player mit eSound output-plugin sollte den Daemon ansteuern können. Mehr Info zur Einstellung von
MPlayer, amaroK... (Linux): [4]
Virtuelle Soundkarte für Windows, für die ausgabe auf dem Router. [5] Das gleiche für MacOS [6]
Siehe auch Streaming Audio auf wl500g.info [7] und das OpenWRT Howto für USB Sound. [8]
Audio Streaming
6
Asus_WL-500g_Premium_de
Übertakten
Das übertakten des WL-500g Premium ist über das setzen der NVRAM Variable clkfreq möglich. Da der
Broadcom Chip BCM94707 [9] auf 300 MHz ausgelegt ist habe ich ein übertakten auf 280 Mhz über längere
Zeit getestet. Die Weboberfläche erfährt einen deutlichen geschwindigkeits-Zuwachs. Leistungswerte des
USB Anschlusses werden vom übertakten nicht beeinflusst.
Durch nvram show lassen sich alle NVRAM Variablen mit dazugehörigen Werten anzeigen. Durch nvram set
VARIABLE=WERT lässt sich der Variable ein Wert zuweisen, ein anschließenden nvram commit schreibt
diese Änderungen fest in den Speicher.
Der Defaultwert der Variable clkfreq ist 264.
Bevor man mit dem übertakten beginnt, sollte man bedenken, das sich das NVRAM nicht so einfach wieder
löschen lässt, ohne Shell Zugang zum Gerät zu haben. Auch mit Rückspielen der Orginal Asus Firmware war
ein Reset nicht immer erfolgreich.
Mit folgenden Befehlen wird der Router dauerhaft übertaktet:
nvram set clkfrq=280,150
nvram commit
reboot
Wichtig ist, daß zwischen der Variable dem Gleichheitszeichen und dem Wert kein Leerzeichen ist.
Der erste Wert beschreibt den CPU-Takt, der 2. den FSB, aus bisher unbekannten gründen scheint die
Firmware keine Übertaktung bei 133Mhz FSB zu akzeptieren.
Trotzdem der Chip auf auf 300 Mhz ausgelegt ist sollte er bei längerem übertakten wenigstens einen passiver
Kühlkörper erhalten.
ASUS WL-500g Premium Wiederbeleben
Vorgehensweise zur Wiederbelebung eines Kaputten ASUS WL-500Premium:
Wenn die 4 LAN LED's leuchten, WAN LED leuchtet, Wireless gedimmt, Power LED leuchtet nicht, ist die
Stromversorgung zu schwach (Netzteil defekt!). Das Gerät braucht beim Aufbooten ca. 2 A Strom. Beim
Adapter scheint die Firma Asus wenig Wert auf die Lebensdauer zu legen.
Sonst:
Zurückspielen der ASUS Orginalfirmware versucht? -> Der Router muss nicht unbedingt Reagieren! Mit
anschließendem Reset zu Factory Defaults? -> Powerleuchte Blinkt Anschließend wieder mit DD-WRT
geflasht? -> Huch, alles geht wieder, supi ;-) ! Für alle anderen geht es hier los:
Achtung hierbei kann man den Router ganz kaputt machen!
Den Router öffnen, die Schrauben befinden sich unter den Gummi Nupsis.
Übertakten
7
Asus_WL-500g_Premium_de
Pin 9 (siehe Bild; neunter Pin von Rechts oder Kontakt im Roten Kreis) gegen Masse kurzschließen, den
Router für 10 Sekunden einschalten, wieder ausschalten.
Den Kurzschluss beheben und den Router mit gedrücktem Reset Knopf starten und anschließend mit der
neuen Firmware bestücken.
http://www.dd-wrt.com/phpBB2/files/hardware_recover_wl500gp_123.jpg
Links
Die Seite des Herstellers mit allem Krams rund um den Router. Die Orginal Firmware ist unter Treiber [10]
Fotos von dem innenleben eines WL-500g Premium auf Hardware-Hacking.com Nützliche informationen zu
JTAG usw. [11]
Steckdose über den Router steuern. [12]
Zusätzlichen Arbeitsspeicher einlöten (64MB). [13]
Serielle Schnittstelle (braucht man für Temperaturmessung). [14]
Das ADSL-Modem (am WAN Port) auslesen von Rechnern im LAN. [15]
ASUS WL-500g Premium Wiederbeleben
8

Documentos relacionados