This weekend I spend some time to install the low cost wireless card Encore ENLWI-G2 and configure it on my Ubuntu 7.10 Server machine to join my wireless network (using 128bit WEP at least).
Unfortunately it wasn't as straight forward as supposed, here some pointers and my solution, hopefully it may help some people to get their card up and running properly.
The first shot was to configure using the Ubuntu Driver and the Ubunut WiFi documentation (which is excellent):
https://help.ubuntu.com/community/WifiDocs/WiFiHowTo
But: whatever I tried to make it work, it didn't want to. Worse, taking the interface down, I caused a kernel panic, sending the machine into a (temporary) digital nirvana.
Great. Next step was to continue with the Ubuntu troubleshooting doc and the wireless troubleshooting guide.
The Encore card is properly recognized (lspci) and it can be listed with (iwconfig). However, for some strange reason I could not configure it correctly (setting the channel returned an error), and the scan did not return anything at all.
Taking down the card still sent the computer to a temporary digital nirvana, so I decided that it would be better to try another solution.
Second shot:
Actually Encore provides a Linux Driver.
However, I did not manage to compile that one at all. No clue what I was doing wrong, but it's not straightforward to achieve on the Ubuntu Server install (yes, I did install the development packages and the kernel sources etc.).
Third shot:
There is actually a way to run windows drivers in Linux. Maybe this isn't the best way to go if you can get a native driver working, however, after some hours of kernel panics, reboots and fruitless trials, this may just be the option that may get it working.
The magic is all achieved by ndis wrapper and the original XP driver from the CD included with the card.
First I blacklisted the linux driver in /etc/modprobe.d/blacklistby adding the entry:
blacklist r8180.
Then I installed the Windows XP driver through ndiswrapper, and finally added the ndiswrapper module to /etc/rc.local with:
modprobe ndiswrapper
With exaclty the same configuration, the driver did not want to work either.
Now that's a tough one. I finally figured that it may be a hardware problem after all. IRQ's most likely. I haven't assembled or configured much PC's in the last years, so I am a bit oxidated on that side. Probably somebody out there would know better what to do, but I finally decided to:
1) move the card to another slot (no success)
2) Disable other stuff on the mainboard (that would use IRQ's but is not used at the moment, like the onboard network card)
Finally I got it working...at 3am in the morning. I don't know whether the native driver would work with the IRQ changes, but I was too tired to try it out. Maybe it's also an option to try the Realtek Linux Driver.....
Resume:
Try to check the hardware first (I have got a GA-945GCMX-S2 Gigabyte MB), install the card in the upper PCI slot, go through the Bios and try the Linux Driver (using the excellent Ubuntu documentation). If all fails, you can still try ndiswrapper, and may get lucky after all.


4 comments:
Hi Dieter,
it's completely usual (unfortunately) that PCI cards don't work together in several slots of the mainboard (MB). Sometimes "rotation" of the cards in the slots is enough, other times, disabling interrupt-consuming features of the MB is necessary. I had the same effect with a DLINK USB2.0 PCI card...
Sometimes it is possible to see the devices that share an interrupt in the BIOS setup (most likely under the menu entry "plug and play" or similar). This could help in determining potential conflicts.
i have the same card and am having the same problem but with ubuntu 7.10 desktop edition. what exactly did you do to get it working? your entry is unclear as to what finally allowed the card to see ap's. had it worked in another operating system? i'm currently using vista which i plan to dual boot with and the wireless works fine.
Brian:
I switched the card to another PCI slot and I deactivated the on-board ethernet network card.
At the software end I used the blacklisting and the ndiswrapper with the XP Driver that came originally with the card (on a CD) as mentioned in the entry.
My configuration of the card is in the /etc/network/interfaces:
auto wlan0
iface wlan0 inet static
address xxx.xxx.xxx.xxx
netmask 255.255.255.0
network xxx.xxx.xxx.0
broadcast xxx.xxx.xxx.255
gateway xxx.xxx.xxx.1
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers xxx.xxx.xxx.xxx
wireless-essid inalambrico
wireless-key xxxxxxxxxxxxxxxxx
wireless-channel 11
wireless-mode managed
This configuration is well described in the How-To...so I didn't put it before. A DHCP setup is described as well in the How-To.
For the ndiswrapper you need:
sudo apt-get install ndiswrapper-common ndiswrapper-utils-1.9
And then install the driver (that's from my mounted driver CD; came with card):
cd /cdrom/Drivers/WINXP/
sudo ndiswrapper -i net8185.inf
You may check if that worked using:
sudo ndiswrapper -l
net8185 : driver installed
device (10EC:8185) present (alternate driver: r8180)
Note, if you didn't blacklist the native linux driver, you may need to remove the native driver modules, otherwise ndiswrapper won't be able to load the windows driver (that's the alternate that is shown; all of this I got from the docs at http://ndiswrapper.sourceforge.net).
Hope that helps.
Regards,
Dieter
I had the same problem, tried installing the Encore Linux drivers but it sould not compile on my system (UBUNTU 7.10)
after reading this blog I shut down the PC moved the card to another PCI slot rebooted and it was detected and working in the system with out doing anything futher. Thanks for the info :-)
Post a Comment