I recently decided to make the plunge and install ubuntu 11.10 (32 bit) on my desktop. All went smoothly except for one bug: I couldn’t get Internet.
I use a wireless USB stick by edimax (it is called IEEE802.11b/g/n nano USB adapter or also EW-7811Un). The problem was that Ubuntu seems to be able to use the USB to see the networks around me, but when I tried to connect to my network (either when the router had the password on or off) – it just kept trying and failing to connect.
This is apparently a known bug which can be resolved after following some good leads from ubuntuforums (thanks the user “praseodym” for your help) and askubuntu (thank you user Engels Peralta for your help).
Bellow are the steps I needed to take in order to solve the problem in the smoothest fashion – I hope others might benefit from it in the future.
Step 0: get a network cable
In order to solve this issue you will need Internet. Get a network cable which you can physically connect to your router. Once you have Internet access the following steps are much easier to follow.
Step 1: make it easy to open terminal window in a specific folder location
This step is important since it makes several other steps easier to manage.
The instructions on how to do it are given here. You simply need to open a terminal window (press CTRL+ALT+T), and type:
sudo apt-get install nautilus-open-terminal
From now on, whenever you want to open a new terminal window in a specific folder – you simply right-click that folder (from the folder which is a level above it) and choose “Open in Terminal”
Step 2: Download the latest edimx drivers
Go here, and download the driver.
Step 3 is not needed
Update: The current new drivers (Jan 2012 – version 3.3.2_3192) seem to work fine without needing to edit them. You will likely need a system restart later…
Step 3: Edit the driver files
The drivers as of today (that is, the driver which is in the file “RTL8188CU_linux_v3.1.2590.20110922.zip”) will not work “out of the box” for ubuntu 11.10 and will need to be (slightly) modified.
Unzip the driver folder, and then go to the archive driver/rtl8192_8188CU_linux_v3.1.2590.20110922.tar.gz inside the driver folder (which is likely to be called “RTL8192CU_8188CUS_8188CE-VAU_linux_v3.1.2590.20110922″ inside your download folder) There you will need to edit two files (simply browse there and double click the files to have them open in gedit for editing):
file 1: include/rtw_io.h
Change osdep_service.h (line 36) linux/smp_lock.h to linux/smp.h
file 2: include/osdep_service.h
Change file rtw_io.h (line 49) linux/smp_lock.h to linux/smp.h
Step 4: Install the new driver
Go to the download folder and open (using right click, if you followed step 0) the terminal for the folder “RTL8192CU_8188CUS_8188CE-VAU_linux_v3.1.2590.20110922″. Then run:
sudo bash install.sh
(note 1: it will ask for your user’s password – as will any command which is using the sudo = super user do prefix)
(note 2: in order to paste in the terminal, use ctrl+shift+v instead of just ctrl+v as is in the GUI and other editors)
Step 5: blacklist the old driver
Next, we want to edit /etc/modprobe.d/blacklist.conf Getting there using the GUI wouldn’t work, because ubuntu wouldn’t let us save the changes we will make. Instead, just open the terminal and type:
sudo gedit /etc/modprobe.d/blacklist.conf
Go to the end of the file and add the line:
blacklist rtl8192cu
(thanks goes to icracked for the advise)
Step 6: remove and re-insert the network USB (and reboot)
Once done – I was finally able to see and connect to my home Internet network.
At this point, some people also said reboot helped, so if you got this far, why not do that too…
****************
Last thanks also goes to Ethan Shalev, Eran Vered, Gadi Esterin, and Gil Bahat – for caring and trying to help through facebook. And also to Tomer Cohen, for spending some good quantities of time trying to help me (and also showing me some cool things on the way).
****************
If you get to know of any better solutions, or if the problem is already fixed (or simply if this post helped you) – feel welcome to leave a comment
By the way, Realtek updated their drivers yesterday and says it supports “Linux Kernel 2.6.18~2.6.38 and Kernel 3.0.2”.
In this case what should we do? And in Kubuntu as I prefer KDE, is the procedure same?
I just went through this and found that I no longer had to change “smp_lock.h” to “smp.h” for the drivers to compile.
So you mean you directly installed the new realtek driver & it worked without any modifications described in here?
Thank you for this guide. I was hoping that this would solve my problem with this adapter. Unfortunately, it doesn’t want to work for me. I can get the drivers to install via the script, the light comes on, I can see wifi networks, but not connect.
I posted a help thread about this here: http://ubuntuforums.org/showthread.php?t=1892621
I also found this thread: http://ubuntuforums.org/showthread.php?t=1883600&highlight=EW-7811Un&page=2
On that thread, post 18 suggests compiling using DKMS. Do you have any thoughts on this?
I appreciate it!
– Phil
Hi Phil,
I am sorry this didn’t work for you.
Did you follow all of the steps?
I do not have experience with recompiling the DKMS, sorry 🙁
Please let me know if you get this solved.
Good luck,
Tal
Hello Tal,
Yes, I did follow the guide’s steps several times. For whatever reason, it does not want to work on my current setup. For now at least, installing Lucid was my solution. That’s disappointing, and I intend to keep fighting this as I need the 3.0+ kernel to properly use my 3TB hard drive, but at least I have internet for now. I appreciate your response!
Thank you again,
Phil
Good luck!
Thanks very much for this. I had been trying to get the adapter to work for some time found that it worked after I followed the instructions exactly and restarted.
I am glad it helped 🙂
This article was a great help (espcially the link to the drivers since drivers from edimax site did not compile). Latest drivers from realtek (3.3.xx) have the include smp_lock.h commented out so step 3 should be obsolete. I had to reboot to get the stick work.
Thx
Chilli71
I am glad it helped 🙂
Thank you. Steps also work perfectly for edimax ew-7711UTn which appears to use the same driver.
I’m glad it helped.
Thank you for extending the information here Joe.
Many thanks, it works like a charm now! With current drivers (3.3.1_3083) there is no need to edit the sources.
Many many thanks for this note, it helped me *a lot*. You, sir, are a gentleman and a scholar !
Sorry, didn’t fix it at all. In fact, while I was able to see the wireless networks with the old driver (even though I couldn’t connect to them), I don’t see *any* networks now.
Next thing to try is to enable the backports repo, since the Realtek site says “Linux Kernel 2.6.18~2.6.38 and Kernel 3.0.2”, and the kernel version (even with updates) in Onieric is 3.0.0-14
I was intalling edimax EW-7711USn on 2012-01-14 Realtek driver had version “RTL8188C_8192C_8192D_USB_linux_v3.3.2_3192.20120103” lines in
Change osdep_service.h (line XX) linux/smp_lock.h to linux/smp.hand uncomment the line eg. delete “//”Change file rtw_io.h (line XX) linux/smp_lock.h to linux/smp.hand uncomment the line eg. delete “//”
Thanks finally got it to work though the zip files you refer to do not exist on the linked site. REALECH for whatever reason have renamed the files. Anyway unplugging and repluging didn’t work for me so rebooted and it worked.
Thank you for the feedback. I am glad it helped 🙂
Thanks such a lot for that.
The current new drivers (Jan 2012) seem to work fine without needing to edit them. The last step (blacklisting the old driver) was something I would not have thought of.
Neither did I – until I found it hinted somewhere. The world is interesting…
installed ubuntu 11.10 fresh from cd. downloaded the ew-7811un (jan 2012) drivers. went straight to step 4 and got wireless working. did a system update, rebooted and wireless is no longer show in the network manager… 🙁
repeated the wireless driver install again and everything is now working 🙂 a very happy noob. yay!
Thank you for the feedback. I am glad it helped 🙂
If system updates are listed as “new install”, that effectively overwrites your existing drivers so afterwards you’ll have to go through the same process, each time there’s a major update. A bit of an overhead, but hey ho!
Works perfectly with version 3.3.2_3192, no edit of files needed. But my system needed a restart.
Thank you for the feedback. I am glad it helped 🙂
Works perfectly with version 3.3.2_3192, no edit of files needed. But my system needed a restart.
Thank you for the feedback. I am glad it helped 🙂
I installed the driver, blacklisted the old one, then reinstalled it
Worked like a charm
Glad it worked 🙂
Thanks! Blacklisting was key. I did actually edit script files although not needed by latest driver. Got put on to this site by Launchpad question, (my feet have wondered, I do not know where.)
Followed your steps but it didn’t work. running 11.10 on a dv2120us. Let me know if there is any other pertinent information to include.
Worked great! Only thing that i would add is to reboot after step 1 for the open in terminal command to appear. Thanks for posting!
Thank you for this!
Thanks for this post! Amazing job.
doesn’t work for me in backtrack 5 r2 instlal seemed ot have worked but it doesnt show up ;/
Same problem with BT 5 R2. I manage to see the networks in Wicd, I try and connect but doesn’t get past auth. After that it doesn’t see any networks unless I take USB out of port and put back in again.
hmm it shows up in ifconfig but doesnt see any networks
Spot on walk-through, thanks for posting it up! Using 12.04 Beta and it worked fine with that to.
As mentioned, it might help to add a line saying you need to reboot. Fortunately I remembered the IT Crowd tech support advice 😀
My pleasure 🙂
I’ll add the line…
Please help!
I need this exact fix but it appears Realtek have taken the file I am looking for down! (3.3.1_3083)
Where can I get this file now? I am seriously desperate
I followed you post – thanks for the step-by-step instructions 🙂 – but it still doesn’t work for me. It keeps timing out during authentication. It connects fine if I remove the key but that’s obviously not ideal.
This worked great for me! The Realtek drivers seem to be problematic, but thanks to the community for getting a working driver up for 11.10 and a process that a newbie can follow!
Thanks a lot, it went flawless.
I’m glad it helped 🙂
UPDATE – Realtek has updated their drivers, I was able to able to download them from Israel. They work on Ubuntu 12.04 LTS
Thanks Dan.
Does that mean that there is no more need for this tutorial?
(can some other reader confirm?)
can you give a direct link to them? because i don’t know which ones are the right one; the one i downloaded(RTL8188C_8192C_..) while installing gives me the choice between the RTL8192cu/-du which aren’t right for this aadapter.
thanks
Hi
Thnx for the great tutorial! One problem … i can’t change my mac address if I use the new drivers …I tried it with macchanger and with hw ether … but no luck…
For example:
Current MAC: 00:e0:4c:81:92:00 (Realtek Semiconductor Corp.)
Faked MAC: e4:ce:8f:36:5c:de (unknown)
But my mac isn’t changed…
Can you please help me ?
Greetings!
Hi,
I am sorry – but I do not know the answer.
To change MAC you need to put interface down
ifconfig wlan0 down
macchanger –mac e4:ce:8f:36:5c:de wlan0
ifconfig wlan0 up
It should be changed
Thanks friend 🙂
toda raba achi
You’re welcome 🙂
I am getting kernel panic and BSOD after following installing this driver…
my kernel is 3.2.0-23-generic (x86_64) which I now see is supposed to support the Realtek 8188CUS chip out of the box. Silly me for assuming I had to install the driver myself as I did in previous 2.x kernel versions.
So how can reverse the procedure and uninstall the driver?
Thanks a lot for the simple and precise explanation.
Its working now
at last I got it working with you instructions !! thanks a million :))
Gotta say, thanks so much for posting this small tutorial. Worked a treat after the restart and can finally update my system and get on web now. Much appreciated.
worked perfectly on ubuntu 12.04 with the rtl8188cus chipset!
Thanks very much after much searching this did the trick.
Thanks a million. Works great with the monoprice dongle on Linux Mint 13. Blacklisting was the step I was missing!
I’m glad to read it helped – thank you for writing back 🙂
Results in kernel panic: Ubuntu 12.04 64bit. Definitely could use some help on resolving this issue.
thank you, thats the solution! 🙂
Cant get this work! When you say sudo bash install.sh
It just keeps coming up with this:
bash: install.sh: No such file or directory
Ive got Version v3.4.4_4749
Tried everything to get it work!!
Please help
Chris,
You need to unpack/unzip the downloaded file into a folder, then go to the folder and start a terminal (type “ls”to show it content in terminal and see if install.sh is there). From the terminal you can then start the install.
And it doesn’t matter where the folder is.
I just extracted the archive to my desktop. So for me the commands were:
cd Desktop
ls
cd RTL8188C_8192C_USB_linux_v3.4.4_4749.20121105
sudo bash install.sh
The first line puts you on the desktop. The second line lists the name of the directory so you know where to go next (and you can also copy and paste the directory name so you don’t have to type in all those numbers). The third line puts you in the right directory, and the fourth line installs the driver.
The writer of the original post suggested installing nautilus-open-terminal to make things easier, but that didn’t work for me for some reason.
Worked perfectly for my USB WIFI dongle (TP-LINK TL-WN725N) on Ubuntu 12.10
Thanks a lot for the write-up 🙂
Thank you very much! That worked perfectly for me using Ubuntu 12.04 and driver version 3.4.4_4749.20121105. I did get an error message somewhere in the install process, but apparently it was benign. I appreciate your posting this.
I just did a kernel update to 3.2.0-36-generic-pae, and the driver was no longer installed. I tried removing the blacklist line and rebooting to see if the new kernel might support the wireless adapter out of the box, but no such luck.
I don’t know if that will happen with every kernel update, but in any case reinstallation was no problem.
By the way, I’m not using the Edimax, but a no-name adapter I bought for cheap that uses the same chipset.
Thanks! It works like a charm. But maybe it is better to notice that before running install.sh, Linux headers package has to be installed. Otherwise there will be a error 2 message and it fails to install the driver.
Thanks. I didn’t need to deal with that when installing the package, why do you think that might be? (is this likely to be installed by other software?)
It’s me again. I got a nearly fresh ubuntu system. At first there’s no linux header package. When I install the driver, it showed the error message what O mentioned. After some google searching, it seems before compiling the third party driver, the current kernel’s header package has to be installed. I just did that step, then the error disappeared. Compiling is successful!
I downloaded the 3.4.4 driver. They worked for me in Ubuntu 12.10 64-bit. Thanks
Thank You Thank You Thank You. I’m a noob and this helped me immensely.
Thanks for the clear instructions, it works great on Ubuntu 12.10
Thanks, works like a charm.
Thanks for an excellent post.
I’ve used the v3.4.4 (2012/11/12) driver to install a no-name adapter on Mint 14.
I got one error during installation:
ERROR: Module 8192cu does not exist in /proc/modules
and changed Step 5 to use pluma instead of gedit
sudo pluma /etc/modprobe.d/blacklist.conf
Other than that it worked perfectly, first time 🙂
Cool, thanks.
Wow, thanks a ton, I got my wireless to work! Kudos to you for providing clear instructions
Worked perfectly on Ubuntu 12.04 LTS. Thank you for the clear instructions.
Thank you, Tal, this solved it for me. We do have to install gedit first, however:
sudo apt-get install gedit
Otherwise things look fine after your fix.
Now that did the trick. I’ve just installed Linux Mint 12 on an ancient ThinkPad 600X, and although the basic installation saw the Edimax dongle and spotted my network, it couldn’t connect. I followed the instructions above and now it works. Yay!
Thanks a trillion Mr.Galili! It works like a charm on Linux Mint 13 64 bits.
I was desperate because my TP Link WN725N wifi dongle was being recongized by the system but it always kept connecting to the router despite the passphrase was ok.
Thank you very very much.
My pleasure Croquet 🙂
Stil works on Ubuntu 12.04 with Linux 3.2! 🙂
I’m in Puppy slacko 5.5 3.2.33-4g kernel
RTL8192SU needs smp_lock.h to compile.
Q.
Can I ignore it [comment it out], and if not, is snmp.h a replacement?
No dice on Ubuntu 13.04.
Thanks for this, works fine on Ubuntu 12.10 except if I turn off my PC. It seems I’m having to do this every time I turn on my PC. I’ve followed all the steps but am I missing something?
I did everything it says but when I run sudo bash install.sh it says “compile make driver error 2 please check error message plz help
I’m in the same boat with that error. I just installed Linux 12.04 and am learning as I go. However, I suspect it has something to do with the Kernel version. My kernel is 3.8.0-31-generic but the driver I am pretty sure I need (RTL8188CUS) is compatible with Kernel 3.0.8. I updated the kernel header package as discussed in comments below, but that did not make a difference.
I am also using a TP-Link TL-WN725N but another thread that directed me to this one said that the driver is the same (http://linuxforums.org.uk/index.php?topic=10658.0).
Any help would be much appreciated. Life without wifi is terrible…
Really helped me out, thanks!!
My pleasure Dimitri 🙂
Thank you so much, this worked like a charm the first time!!!
My pleasure TMAN 🙂
Thankyou very much. The little blue light is flashing once more.
Thanks guys, got it working now. been searching everywhere lol