Running D-Link G520 wirelles card on Linux 2.4.22 succesfully

Not open for further replies.


Posts: 147   +0
I noticed there where a lot of people having trouble getting this card to run in Linux. Mostly because the information on the net wasn't correct (which shouldn't be the case anymore :).

Anyway, If anyone is interested to know how, just post something in this tread and I will get you all the info.

Can you tell me how you did it? I've been trying for two weeks and aboot to give up. I'm brand new to linux but the LDP or any other Howtos aren't helping. I've tried it w/ the MadWiFi driver and aslo the ISL drivers. I can't get anything to work. Please let me know what else i can do. Thanx.
Help needed


I have Linux Red Hat9 with D-Link Wrieless pci card DWL G520 and i have some problems to configure it.
I'm interesting to know your method to configure correctly my card.

Please contact me at




Posts: 147   +0
Here are a few mails that were sent over concerning the install of the card:

The D-Link G520 (not 520) has an atheros chipset and therefore needs the
madwifi drivers. To find those drivers you can do a google search or
check sourceforge.

Start by downloading the drivers and unpack them in a temporary
directory. Be sure you have you're kernel source installed on the
system. If the source is in the default directory, you won't need to
edit the makefile, otherwise you will have to specify the correct path
to the kernel source. Do a make and 3 files will be compiled. Make
Install will copy those to the correct module directories (still
assuming they are default (lib modules)).

After that you need to load the 3 modules in a certain order with the
driver (ath_pci) as last. So for example

as root:

modprobe wlan (load wlan module)
modprobe ath_hal (load hal module)
modprobe ath_pci (load driver)
iwconfig ath0 key yourkeyinhexadecimal (or: s:yourkeyinasci) (load wep
incryptionkey if necessary) ifconfig ath0 up (load interface) dhcpcd
ath0 (get dhcp lease from isp or router)

You can put all of this in a script to make it load automaticly on
startup. I have a script I could send you, just ask.

I use mandrake 9.1 with a 2.4 kernel, but the driver also supports any
2.6 kernel.
Thank you very much for this complete answer! I read a bunch of web
pages describing speed problems after a few minutes of heavy
utilisation. Did you encountered any of thoses problems? Are you
running in 802.11b or 802.11g? In which mode?

Also, do I need to recompile the kernel or just need the source code in
order to build the modules? I am runnin IPCop ( on that
Internet access point and I would like to stick as close as possible to
the distribution, to ease maintenance.

Also, may I suggest you to put your great receipe on the techspot forum,
as I am sure a bunch of linux lovers will appréciate it! I sent an
email to one person you asked for the receipe on the forum and he said
he decided to buy another card, just to be safe...
I read those problems to, but I don't seem to have them. The only thing I noticed that iwconfig reported 0 link quality, 0 noise level and very low signal (usualy around 20). Though they are low figures I seem to have high speed transmission. Using the 11G standard I get downloads with a download manager up to 700k/s. I checked with some ciscosoftware the signalquality, and there seems to be a drop every x seconds in the signal. This signal drop is not noticeable nor in Linux nor in Windows. I could be it is because my router's antennas are pointing to the ground (not clever, but I have no choice with the setup) and me having small rooms. This could cause some resonance in the signal. I tried changing channel, but the problem persists. Anyway, apart from some tools reporting strange figures, everything works great.

Al you need for the drivers is a compiler and the kernel source somewhere. Don't forget to change the paths in the makefile when they are not default. Same goes for copying the modules and drivers. The script uses the defaults.

I will now post those mails on the forum of techspot. If you have any more questions, feel free to ask.
i am using mandrake 9.0. with kernal 2.4.19 and all is working fine thanks to this help here :D

Put sources in default place along with dependancies did "make install" and volia all works. the only pain i have is not knowing how to automate setup to load modules and setup interface with ifconfig or however u do it.

I havent used it loads yet, but i have set it up with ip mannually and with dhcp and all is fine on my network with a dlink access point 2000ap i think, dunno exact model no. off-hand.

it has done d/l and maxed out my 512k cable connection though.

However iwconfig reports nothing my errors with packets transmitted, 0 signal qualtiy and 29/140 signal strength .. which is balls beecause my windows laptop has great signal strength and qualtiy and so does desktop with windows HD is inserted (games use only now).

Anyway, it works and it works well., and i am happy. It will get extended use once I have migrated to linux apps and transfered my data (minor, as i have been migrating in terms of file-formats & applications for months now) so we will see how it does then.
I followed these instructions, and everything worked beautifully - the only issue that I now have is that I can run WEP manually (iwconfig), but when I modify ifcfg-ath0 I cant seem to get the key to work. For example
iwconfig ath0 key 1234567890
works, but
in the ifcfg-ath0 do not seem to work

any ideas?


Posts: 147   +0
automated script

Here is the source code for the script I use to autoload everything.

# chkconfig: 2345 18 69

function start () {

modprobe wlan
modprobe ath_hal
modprobe ath_pci
iwconfig ath0 key ********************
ifconfig ath0 up
dhcpcd ath0 2>/dev/null&


function stop () {

ifconfig ath0 down

case $1 in
$0 stop
$0 start
echo "Usage: %s\n" "$(basename $0) {start|stop|restart}"
exit 0

exit 0

Make a file and name it for example S40wlan. In Mandrake copy this file to the /etc/rc.d/rc5.d/ dir. Make it executable. Now you will get a nice topic in your startproces stating 'starting wlan - ok'. The S is for making it a startproces and the 40 is it's priority (will execute everything before 40 first).

I am using a 2.4.x kernel, so note that the command is a bit different for a 2.6.x kernel knowing the modules are named differently.

You don't need a K file to kill it on shutdown, the general kill command does the job.

The drivers cannot be downloaded from the project page at the moment, but you can still CVS them with the following command.

cvs -z3 co madwifi
Nevermind. I solved the problem. It turns out that I had shorewall turned on with default rules. So, the shorewall was blocking DHCP packets.

I have G520 hw rev A with Mandrake 10.

I got everything ok except the last step.

dhcpcd returns

dhcpcd.exe: Your IP address is
dhcpcd.exe: wrong interface name "ath0".

I was able to see the IP address leased to my linux box in router's log.

Please help.


Hi, sorry to bother people, but I'm a newbie to linux, and I wouldn't even know how to do half the things listed above to get my D-Link G520+ working on Fedora Core 3. I am fairly experienced with using Windows and I am familiar with a fair bit of jargon, but any help to suit a newbie would be much appreciated :)
Hi all!!!

I tried to download the driver at the sourceforge website but there it is mentioned that there is no release yet...
Not open for further replies.