Home Articles HowTo Guides HowTo: Use The New RTL-8185 Driver With Hardy

HowTo: Use The New RTL-8185 Driver With Hardy

E-mail Print PDF

Note: The information here is out-dated; the driver is probably in with the standard Hardy modules now I expect, and it's certainly present for Intrepid. The signal strength reading still seems broken, but otherwise, it has been working flawlessly for me.

OK, so I've mentioned before on a few occasions that there is a newer version of this driver, which is essentially a port of the same original code over to the mac80211 stack that was recently added to the kernel. This new rtl8180 module is now in the mainline kernel and is being backported for Hardy as part of a "wireless compatibility stack" in the linux-modules-backports package. It's a good idea to use this driver in preference to my patched copy of the older r8180 module source here, not least because it supports the later WEXT extensions that allow you to use WPA through the standard graphical tools.

From what I can tell based on comments and other messages received, almost everyone has been able to get basic wireless, either unsecured or using WEP, working in Hardy using the sources and guides that I published here. However, WPA has been less successful. It worked fine for me and some others have commented that it worked for them too, but just as many people seem to have had trouble with it. I'm not sure what all the variables could be there, and to be honest I don't think it's worth the trouble to find out. That is because there is an alternative solution using this new driver just around the corner, and you can use it right now so long as you're willing to jump a couple of revisions ahead with the kernel.

So far as I can tell from the file list, the new module (rtl8180.ko) is not present in the current version (2.6.24-19.17) of the linux-backports-modules-hardy package sitting in the hardy-updates repository. I've never been 100% sure about the subtle distinctions between the various repositories, or at least not enough to know whether the latest versions go into hardy-updates or hardy-backports etc. to see when the magic version finally turns up, or even if it might actually be there already somewhere (if it is I can't find it, but like I say, I might be looking in the wrong places). So for now the best advice I can give is to just add Tim Gardner's Launchpad PPA to your software sources and use whatever version of linux-backports-modules-hardy is available in there:

deb http://ppa.launchpad.net/timg-tpi/ubuntu hardy main

Note that this will also install a slightly updated version of the kernel that is not yet in the main Hardy repositories. I'm currently using this kernel (2.6.24-20 at the time of writing) without any issues, and all the previous revisions through the 2.6.24-19 series from this PPA worked fine for me also. But you do have to understand that it is a pre-release revision so there are fewer guarantees. Also, whilst the same PPA contains corresponding versions of all the usual drivers (i.e. linux-ubuntu-modules and linux-restricted-modules) built against the newer kernel, there may be other kernel modules from the main or 3rd party repositories that are not available for this kernel version (I can't immediately think of any specific examples, but I expect there must be some).

So it is important to bear that in mind and to remember to remove the PPA from your sources as soon as rtl8180 hits the main repositories. I will try to keep an eye on the situation and update the article here when it happens, but don't count on that!

Anyway, you can either edit /etc/apt/sources.list and add the repository (using the "deb..." line given above) manually, or do the same thing through the Software Sources option under System->Administration, or Settings->Repositories to get to it from directly within Synaptic.

Once the repository is added, if you did it with a GUI method, I think the new indexes will get downloaded automatically, otherwise (or just to make sure) run:

sudo apt-get update

Then you have to install the backported modules package:

sudo apt-get install linux-backports-modules-hardy

Ignore (by pressing "y") any warnings about installing unauthenticated packages. As already explained, this set of updates will have to install a newer kernel, so you will need to reboot before you can test the driver. I found that I had to add rtl8180 to the /etc/modules file to cause it to load automatically, but there have been a few updates to this package since then so that may no longer be the case. If you find that the driver has not loaded after a restart, just do:

sudo modprobe rtl8180

That should be enough. Give nm-applet (for those who don't know, that's the program name of the little network management tool you get by default in the top-right corner in the Gnome desktop) a few seconds to realise what just happened and then you should be able to see a list of networks by clicking on that icon, as per normal. You should also find that WPA(2) is now available as an encryption option. So if everything is working for you now, that's all there is to it. If you had to modprobe the driver manually just finish the job with:

echo rtl8180 | sudo tee -a /etc/modules

...to cause the driver to load automatically on boot.

Last Updated on Monday, 07 September 2009 09:24  

Comments

Untitled Comment from creakyknees on Sun. Jul 06, 2008  reply 

HI Will,

I tried this. I got as far as:
" ... sudo apt-get install linux-backports-modules-hardy

Ignore (by pressing "y") any warnings about installing unauthenticated packages. As already explained, this set of updates will have to install a newer kernel, so you will need to reboot before you can test the driver. "

I did this but my machine wouldn't re-boot (it got to the ubuntu boot 'progress bar', but wouldn't quite complete and so wouldn't boot up.

Any ideas?

Thanks

Untitled Comment from Will on Sun. Jul 27, 2008  reply 

Same advice as for Simón (see below). Sorry I can't be of more help :(

low quality signal strengh from yup on Thu. Jul 10, 2008  reply 

Hi there,
i tryed the ndiswrapper driver for the rtl8185/0 with hardy before and worked good, in spite of some not big deal problems but annoying.

I'm trying now this driver within a new instalation of ubuntu hardy. Results turned up to very low signal strengh. Seems not to make a big difference in spite that the signal strengh does not go over 10% or rarely does. I was wondering if it could be and isolated problem (since sometimes i have to deal with wifi/wireless problems) but the signal strengh is that low even if im next to the wireless device or far away from it. Thanks for the help anyway, really appreciate it!

Untitled Comment from Will on Sun. Jul 27, 2008  reply 

Yes, I probably should have mentioned this in the article. The signal strength as reported by this driver is clearly not correct. Mine varies mostly between 3% and 12% yet I get full and uninterrupted transfer rate at all times. I did actually mention this originally on the launchpad bug report, but since this code comes from the mainline kernel now, probably you'd need to report it upstream to get it fixed if it hasn't been addressed already.

No dice... from Simón A. Ruiz on Tue. Jul 15, 2008  reply 

Very clearly written and potentially quite useful to those of us cursed with adapters using that chipset.

Having followed your instructions, I can confirm that if I boot into the new kernel, the rtl8180 module is in place. (lsmod)

The only problem is I can only confirm that when running said kernel in recovery mode.

If I try to boot it into full multi-user glory, it freezes at about the time that GDM should be starting up.

Any ideas?

Untitled Comment from Will on Sun. Jul 27, 2008  reply 

Sorry Simon but I don't have any clue as to why that might be. I can only suggest you try again with the next kernel update since the PPA is updated regularly - it may be that you just managed to catch a broken version.

Thank you. from Phil LaPier on Thu. Jul 24, 2008  reply 

Thank you, Will, for keeping us rtl8185 users up to date on the latest driver/card info. I can't tell you the number of times your modified driver(s) and/or know-how has helped me solve my wireless problems.

I just recently upgraded to kernel version 2.6.24-20 (from 2.6.24-19) and found my wireless card not working. Insmodding the modified drivers failed to fix the issue. After checking your website again, I found a quick solution; the backport modules.

I'm glad the rtl8185 module is now going to be included in future kernel backport module releases. It makes the wireless issue so much easier to deal with.

Actually as i write this, i just added tim gardner's repo to my sources and it looks like 2.24.6-21 is available for update. Have you upgraded, Will? I'm guessing the new rtl8180 module is still in the newest kernal backport?

I'm going to put off the upgrade until tomorrow when i have more time.

But again, thanks Will.

Untitled Comment from Will on Sun. Jul 27, 2008  reply 

Hi Phil, glad it worked for you. Yes, I already upgraded to the -21 kernel and all is still well. However, it looks from some of the comments here that some people have problems with these pre-release kernels, so my advice to everyone would be that if one of the new kernels works for you without issue, just pin it to that version until the official release.

Great from JOse Andrade on Mon. Aug 04, 2008  reply 

Hello
I have a Gateway MT3422 and my wireless card works very well with your recommendations.
Thank you very much

Untitled Comment from Will on Tue. Aug 05, 2008  reply 

I rebooted today and discovered that at some point the name of the module changed from rtl8180 to lbm_rtl8180 (presumably the lbm prefix denotes "linux backports modules" and is intended to avoid conflicts of some kind). So if you're back here wondering why your wireless has stopped working, this is probably it. All you need to do is change "rtl8180" to "lbm_rtl8180" in the /etc/modules file.

Installation from MrJobson on Tue. Aug 12, 2008  reply 

Hi, i've done as you suggested, but i can't "find / -name "lbm_*.ko" -ls" on my system. What could be wrong?

Untitled Comment from Will on Wed. Aug 13, 2008  reply 

Indeed, I just checked the latest package from Tim's repo and lbm_rtl8180.ko has gone back to just rtl8180.ko, so just remove that prefix. In /etc/modules it might be best to include both forms until we know how this will be named on release.

Untitled Comment from MrJobson on Wed. Aug 13, 2008  reply 

Looks like apt-get downloads .deb archives for generic version of kernel. so it does not change anything.

Untitled Comment from Will on Wed. Aug 13, 2008  reply 

Yes, I can see that the meta-package depends on the generic version and there doesn't seem to be a linux-backports-modules-hardy-server meta-package in the PPA. I suggest you use synaptic and manually install the latest server one (currently linux-backports-modules-2.6.24-22-server). Also, if you still find you get a kernel panic, I would suggest first installing and booting the generic kernel to see if that's the same.

Untitled Comment from MrJobson on Wed. Aug 13, 2008  reply 

Tests... Looks like, Signal: -180 and signal quality 5/100 is not adequate.
It works at 10 mbit, and another computers work with this speed with particular AP. I used config examples from http://www.willdaniels.co.uk/articles/howto-guides/10-howto/10-wpa-r8180-ubuntu
but the only difference - i added scan_ssid=1 (i am not sure if it helped) and used WEXT instead of IPW.
Big thanks for your manuals!

Untitled Comment from Will on Wed. Aug 13, 2008  reply 

The signal strength is not reported correctly by the driver - this has already been noted, but it doesn't make any difference to the transfer rate.

IPW is only for the legacy driver, as I stated in the article here, WEXT (>18) is the main reason to use this newer driver in the first place.

Untitled Comment from MrJobson on Wed. Aug 13, 2008  reply 

I am trying to dpkg -i --force-all linux-back....2.6.24.-19-server_2.6.24-19.17_i386.deb and it does not write rtl8180.ko that actually exists in package. When i extracted it from archive - it refuses to start \"unknown symbol in module\" so ieee80211 did not upgraded too...

Untitled Comment from Will on Wed. Aug 13, 2008  reply 

Note also that this newer driver depends on the mac80211 stack, not the old ieee80211 stack.

Untitled Comment from Will on Wed. Aug 13, 2008  reply 

Do not try to install only the backports modules package! The modules are built against a particular version of the kernel (the same one as in the PPA) which is newer than the standard Ubuntu kernels, and that is why you see the unknown symbol error. If you install the specific server version of the package from synaptic (or apt-get if you don't have a GUI) as I mentioned above it should also install the correct server kernel from the PPA as a dependency. If you include your email in the comment or use the site contact form I can discuss with on email, but unfortunately I don\'t have ICQ.

Undo! Undo! from Colin on Mon. Sep 01, 2008  reply 

Thanks for your help with this particular chipset, I've been having a lot of trouble.

Most recently, I tried what you suggested above, but after rebooting the system fails to find my graphics card and so it loads the wrong resolution, and the wireless still doesn't work properly. How can I go back, undo the damage? I tried unchecking the repositries, running "sudo apt-get update" and rebooting, but that didn't seem to work.

Any way to go back?

Thanks.

Untitled Comment from Will on Mon. Sep 01, 2008  reply 

Hi Colin, you should be able to just boot the original kernel from the grub menu (you may have to press escape when the message flashes up). Then to remove the new kernel permanently you can open Synaptic Package Manager, select the "Origin" filter in the bottom-left, choose "ppa.launchpad.net/main" and uninstall any packages in the list named linux-anything. You can also then remove the PPA repos from Synapic by choosing from the menu Settings->Repositories, Third-Party Software tab and uncheck the ppa lines with "timg-tpi" in them.

Installing drivers from Ben on Wed. Sep 03, 2008  reply 

I ran into this as well, i just needed to
apt-get install linux-restricted-modules
so my nvidia drivers were also up to date.

Ad-Hoc from Phil LaPier on Mon. Sep 01, 2008  reply 

Has anyone tried to get ad-hoc working with this card? I'm running kernel 2.6.24-21 and i cannot seem to get ad-hoc working with this card.

I get "SIOCSIFFLAGS: Operation not supported" when i try to bring the card up in ad-hoc mode.

Is ad-hoc supported? If so, does anyone know how i can achieve this?

Untitled Comment from Jack Slade on Wed. Sep 24, 2008  reply 

Thanks so much for putting these instructions together.

I'm following your instructions, and I got the updated kernel (2.6.24-22) and some other updated modules, however, when I try to install the linux-backports module listed above, I get an error:

$ sudo apt-get install linux-backports-modules-2.6.24-22-generic

Package linux-backports-modules-2.6.24-22-generic is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package linux-backports-modules-2.6.24-22-generic has no installation candidate
...

I don't understand why it would allow me to get a bunch of package updates from the PPA, but not this one. Maybe the package listing I got from PPA needs to be refreshed so it can find the package. I tried running

sudo apt-get update

but I get the same error. What else can I try to get this package?

Untitled Comment from Will on Wed. Oct 15, 2008  reply 

It seems to me that the PPA is broken right now :( I only reboot about once a month and when I did a couple of days ago, the driver from the PPA was no longer working. I have been meaning to get onto Intrepid now that it's in beta, so for me that was the solution. But be warned - the nvidia restricted driver does not appear to be available yet for Intrepid so if you rely on that for compiz etc. you may not find the solution acceptable.

I'll try to look into other solutions when I get a little more time and update the site accordingly.

Current PPA backport build is BROKEN from Jack Slade on Wed. Sep 24, 2008  reply 

I had a problem where apt-get wasn't seeing the linux-backports-modules-hardy package. It turns out it is because as of 09/20/08 the backport build is BROKEN.
https://launchpad.net/~timg-tpi/+archive

Is there another source for this updated version of package that isn't busted right now?

Confirming this fix from Brett on Sun. Oct 26, 2008  reply 

I can confirm that this fix works for my PCI TP-LINK TL-WN353GD which actually looks like this to lspci:

00:08.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL-8185 IEEE 802.11a/b/g Wireless LAN Controller [10ec:8185] (rev 20)
Subsystem: Realtek Semiconductor Co., Ltd. RTL-8185 IEEE 802.11a/b/g Wireless LAN Controller [10ec:8185]
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-

Untitled Comment from aatoma on Sun. Nov 02, 2008  reply 

Hi Will,

seems like you're well known as an rtl8185 guru out there, so I decided to post this here. After upgrading to Intrepid my RTL based card (which used to work in Hardy if compiling the driver as patched by you) stopped working. The rtl8180 modules is loaded and I also see it as used by the card in lsmod, but the card doesn't show up as available in Net.Man.
BTW it also turn out that I have pan0 and wmaster0 listed by ifconfig and that is new to me.
Is the driver in Intrepid the one you mention in this how-to?
Any idea about how to troubleshoot this?

Thank you and regards.
Antonio.

Untitled Comment from Nick H. on Tue. Nov 18, 2008  reply 

Will -
I'm stuck at the step of testing the driver. I have restarted and when I run "sudo modprobe rtl8180" it fails or is not found. When I look at my PCI card itself, the power light is not lit. Do you have any idea what i might be doing wrong?
My system is booting fine at this time. Thanks.

Nick H.