FedoraThis forum is for the discussion of the Fedora Project.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Let me tell you what a problem this has been. I have a Dell Latitude D620 laptop, running XP and FC6 on a dual-boot. Everything on FC6 works just fine, save the Broadcom Corporation Dell Wireless 1390 WLAN Mini-PCI card. If you want to get really specific, you can type in service tag "9wkvzb1" into Dell's support website for specs.
I attempted to use the bcm43xx driver, but that was short-lived because I read that it won't work with that driver. So, I downloaded "R140747.EXE" from Dell's website for the Windows driver (they only support XP for the wireless card), and I installed it with ndiswrapper (here is the output):
# ndiswrapper -m
module configuration already contains alias directive
# dmesg
...
ndiswrapper version 1.38 loaded (preempt=no,smp=yes)
ndiswrapper: driver bcmwl5 (Broadcom,11/02/2005, 4.10.40.0) loaded
ACPI: PCI Interrupt 0000:0c:00.0[A] -> GSI 17 (level, low) -> IRQ 17
PCI: Setting latency timer of device 0000:0c:00.0 to 64
ndiswrapper: using IRQ 17
wlan0: ethernet device 00:18:f3:60:30:41 using NDIS driver: bcmwl5, version: 0x40a2800, NDIS version: 0x501, vendor: '', 14E4:4311.5.conf
wlan0: encryption modes supported: WEP; TKIP with WPA, WPA2, WPA2PSK; AES/CCMP with WPA, WPA2, WPA2PSK
usbcore: registered new interface driver ndiswrapper
ndiswrapper (iw_set_bitrate:513): setting bit rate failed (C00000BB)
ADDRCONF(NETDEV_UP): wlan0: link is not ready
...
# modprobe ndiswrapper
# dmesg
...
(same output as above)
...
I am showing the card in "iwconfig", and it in fact shows some available wireless networks in the netchoose utility and wifi-radar, but I am not able to connect to any wireless networks either through dhcp (even if the wireless network has it enabled, I tried, because I have it enabled at home) or through explicitly specifying an IP address within the network's valid IP range with a valid subnet mask and gateway. I also tried the same thing with bcm43xx blacklisted, to no avail. I hate having to boot to XP in order to use the wireless, because most everything I work on is on the Linux end, and I really don't like using Windows, at all. Please help!
For the sake of completeness, here is the output of netchoose after I attempt to connect to a broadcasting, unsecured wireless network that supports dhcp:
Code:
numcells: 2
Customize Item: 0
Match!
Activate clicked
Customize Item: 0
Match!
running activate.sh
do_dhcp yes
dhclient: no process killed
Internet Systems Consortium DHCP Client V3.0.5-RedHat
Copyright 2004-2006 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/
Listening on LPF/wlan0/00:18:f3:60:30:41
Sending on LPF/wlan0/00:18:f3:60:30:41
Sending on Socket/fallback
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 3
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 4
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 7
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 15
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 21
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 11
No DHCPOFFERS received.
Unable to obtain a lease on first try. Exiting.
shret: 512
I completely forgot one of the most important things. I am running kernel 2.6.19-1.2911.6.5.fc6. I'm installing the new 2.6.20 right now, I'll post a reply if this has any positive effect. I've read somewhere that 2.6.19 doesn't support PCI Express cards, so we'll wait and see if this helps (I'm assuming this WLAN card is a PCI Express because it's called Mini-PCI, I could be wrong).
I just installed the shiny new 2.6.20 kernel, and it is detecting my wireless card completely (even the description for wlan0 in the system-config-network wireless dialog says "Broadcom Corporation Dell Wireless 1390 WLAN Mini-PCI"). It is using the bcm43xx driver, probably because it detects that the card is a bcm 4311. However, even though I see wlan0 in the "iwconfig" output, I'm not able to scan now. I'm assuming this has to do with the firmware, which is probably not properly installed. I'm going to install it, and see if this works.
OMG, after all this time of thinking I was never going to get my wireless card working!!! Here is an overview of what I did (you can also find an easy, more structured tutorial about this here, written by me):
1) Downloaded R140747.EXE (I knew this was the right one because I went to Dell's support website, input my service tag, checked file downloads for Windows XP for my system, and downloaded the Windows driver for my wireless card). I believe HP, Gateway, etc. all have simliar features to download appropriate drivers.
2) Downloaded 2.6.20 kernel (this may have been my saving grace, because Lord knows I have tried everything imaginable on the 2.6.19 kernel, and supposedly 2.6.20 was supposed to support PCI Express devices).
3) Downloaded "ndiswrapper" (this is the utility that allows you to install a Windows driver on your *nix machines).
4) Installed the R140747.EXE Windows driver:
Code:
# unzip R140747.EXE
# cd DRIVER
# ndiswrapper -i bcmwl5.inf
# ndiswrapper -l
bcmwl5 : driver installed
device (14E4:4311) present (alternate driver: bcm43xx)
# ndiswrapper -m
module configuration already contains alias directive
/** you may not get this message, that's okay,
if you happen to get an error just add "alias wlan0 ndiswrapper" to /etc/modprobe.conf. You can replace "wlan0" with whatever your wireless interface is going to be **/
# modprobe --remove bcm43xx
/** I did this just in case it would conflict **/
# modprobe ndiswrapper
# dmesg |grep ndiswrapper
ndiswrapper version 1.38 loaded (preempt=no,smp=yes)
ndiswrapper: driver bcmwl5 (Broadcom,10/12/2006, 4.100.15.5) loaded
ndiswrapper: using IRQ 17
usbcore: registered new interface driver ndiswrapper
# dmesg |grep wlan0
wlan0: ethernet device 00:18:f3:60:30:41 using NDIS driver: bcmwl5, version: 0x4640f05, NDIS version: 0x501, vendor: '', 14E4:4311.5.conf
wlan0: encryption modes supported: WEP; TKIP with WPA, WPA2, WPA2PSK; AES/CCMP with WPA, WPA2, WPA2PSK
ADDRCONF(NETDEV_UP): wlan0: link is not ready
ADDRCONF(NETDEV_UP): wlan0: link is not ready
ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
wlan0: no IPv6 routers present
5) Then just check to make sure you have something:
Code:
# iwconfig
wlan0 IEEE 802.11g ESSID:"snoopy777" Nickname:"snoopy77"
Mode:Managed Frequency:2.437 GHz Access Point: 00:0F:66:EA:1C:C3
Bit Rate=54 Mb/s Tx-Power:32 dBm
RTS thr=2347 B Fragment thr=2346 B
Encryption key:off
Power Management:off
Link Quality:48/100 Signal level:-65 dBm Noise level:-96 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
Don't mind my stuff I've already connected to a network at this point, this is just to show that your wireless card is recognized by the system.
6) I installed and ran Wifi-Radar (you can download from SourceForge.net), found the network I was looking for, clicked "Connect", and I was in!
I hope this helped someone, if so, please let me know it helped by replying to this. I always like to know that I didn't waste my time typing.
I did every thing but received this message after typing this command.
[root@localhost lex]# modprobe ndiswrapper
[root@localhost lex]# dmesg |grep ndiswrapper
ndiswrapper version 1.38 loaded (preempt=no,smp=yes)
usbcore: registered new interface driver ndiswrapper
It does not seem like the Broadcom wireless I have is binding to the ndiswrapper.
I used a different technique before and I got it work but it was so slow only 11 MB/s. It performs much better in MS Windows. The way I did it before was to use
¨bcm43xx-fwcutter -w bcmwl5.sys¨ to load the firmware for the Broadcom wireless bcm4306.
Extra info:
[root@localhost lex]# uname -ar
Linux localhost.localdomain 2.6.20-1.2933.fc6 #1 SMP Mon Mar 19 11:38:26 EDT 2007 i686 athlon i386 GNU/Linux
modprobe.conf
alias eth0 b44
alias eth1 bcm43xx
alias snd-card-0 snd-ali5451
options snd-card-0 index=0
options snd-ali5451 index=0
remove snd-ali5451 { /usr/sbin/alsactl store 0 >/dev/null 2>&1 || : ; }; /sbin/modprobe -r --ignore-remove snd-ali5451
alias wlan0 ndiswrapper
JoeLinux117, I got it to work by uninstalling the bcm43xx-fwcutter and blacklisting the bcm43xx. The previous technique that had used to get it to work.
Thanks for your posts Joe, they were very useful to me. I still have some problems to fix however. Seems that the Dell driver is not 32-bit?!
Code:
# dmesg | grep ndiswrapper
ndiswrapper version 1.21 loaded (preempt=no,smp=yes)
ndiswrapper (check_nt_hdr:155): kernel is 32-bit, but Windows driver is not 32-bit;bad magic: 020B
ndiswrapper (load_sys_files:215): couldn't prepare driver 'bcmwl5'
ndiswrapper (load_wrap_driver:113): loadndiswrapper failed (65280); check system log for messages from 'loadndisdriver'
nskprasanth, type this command in the terminal "uname -ar". This command will show us your kernel version. When I first had this problem it was a kernel issue. If your kernel has "Xen" attached to the end use the non "Xen" version. Nskprasanth try that first. It is easy to change kernels with the "yum" command.
i have the latest kernel version 2.6.20 which is a non xen version and i know , that is not the actual problem . the wlan card is detected in the network manager and when i type the iwconfig command ... the essid is not setting to the available network connections .
this seems to be a common problem , so anyone who can solve this prob plz reply asap
Hey guys, sorry about the late reply, I've been pretty busy lately. nskprasanth, try typing "iwlist wlan0 scan", and see if you get any available cells. If not, make sure that the bcm43xx module is not loaded, because it is loaded by default in the 2.6.20 kernel. Type "modprobe --remove bcm43xx" to make sure this happens. If you do get output from the "iwlist" command, please post it here. I'll try and reply a little faster next time and not be such a loser, haha.
Hi again, I just thought I would chime in with something that I'm really excited about. I'm a big fan of not settling for a mediocre solution, and for me, installing and using ndiswrapper to get my wireless card to work was a mediocre solution. You just don't get all the features of the card with it (such as MONITOR mode).
So, today I set out to change that. I knew that when I installed the 2.6.20 kernel, I was able to see my card with the "iwconfig" command. However, it wasn't working. Well, let me tell you what I did. Needless to say, I am no longer using ndiswrapper, and bcm43xx is working perfectly for me, and I am getting all of the features of this wireless card now (well, more than with ndiswrapper).
First, I took my card down:
Code:
# ifconfig wlan0 down
Then, I unloaded the ndiswrapper module:
Code:
# modprobe --remove ndiswrapper
Note that "rmmod ndiswrapper" probably would have worked just as well.
Then, I commented out the lines in the /etc/modprobe.d/blacklist and /etc/modprobe.d/blacklist-compat files where bcm43xx was listed.
Next, I commented out the alias that I had previously added for ndiswrapper in /etc/modprobe.conf.
Finally, I loaded the bcm43xx module:
Code:
# modprobe bcm43xx
Now, most of you stop right here. That's because, just like me, IT SIMPLY WASN'T WORKING!!! I know, frustrating. However, the bcm43xx module CAN work, with the 2.6.20 kernel, I just realized that it's a matter of getting the right firmware. I tried downloading the correct firmware, and using bcm43xx-fwcutter, but to no avail. Even specifying the correct bcmwl5.sys file, it was telling me that it had an unknown checksum. Here is what fixed that. Download the newest version of bcm43xx-fwcutter at http://developer.berlios.de/project/...?group_id=4547. After I downloaded the tar.bz2 file, or whatever it was, I extracted the files into a directory, and then I installed the new version (first removing the old one):
Code:
# rm /usr/bin/bcm43xx-fwcutter /usr/local/bin/bcm43xx-fwcutter
# tar jxvf bcm43xx-fwcutter-006.tar.bz2
bcm43xx-fwcutter-006/
bcm43xx-fwcutter-006/bcm43xx-fwcutter.1
bcm43xx-fwcutter-006/Makefile
bcm43xx-fwcutter-006/md5.c
bcm43xx-fwcutter-006/md5.h
bcm43xx-fwcutter-006/README
bcm43xx-fwcutter-006/fwcutter_list.h
bcm43xx-fwcutter-006/fwcutter.c
bcm43xx-fwcutter-006/fwcutter.h
bcm43xx-fwcutter-006/COPYING
# cd bcm43xx-fwcutter-006/
# make && make install
After it did it's thing, I tried extracting the firmware from the driver once more:
Code:
# bcm43xx-fwcutter -w /lib/firmware /home/1390_drivers/DRIVER/bcmwl5.sys
*** WARNING ***
This file contains new version4
firmware. v4 firmware is _not_ supported by
the driver in mainline kernels. For v4 firmware
you need latest bcm43xx development version
(wireless-dev kernel tree). If you don't know what
this warning is about, use a 3.xx.xx.xx driver version
instead to extract the firmware.
filename : bcmwl5.sys
version : 4.100.15.5
MD5 : b89bcf0a25aeb3b47030ac83287f894a
microcodes : 4 5 11 13
pcms : 4 5
microcode : 4
revision : 0x0173
patchlevel : 0x0425
date : 2006-10-04
time : 21:02:04
microcode : 5
revision : 0x0173
patchlevel : 0x0425
date : 2006-10-04
time : 21:02:04
microcode : 11
revision : 0x0173
patchlevel : 0x0425
date : 2006-10-04
time : 21:02:04
microcode : 13
revision : 0x0173
patchlevel : 0x0425
date : 2006-10-04
time : 21:02:04
extracting bcm43xx_microcode4.fw ...
extracting bcm43xx_microcode5.fw ...
extracting bcm43xx_microcode11.fw ...
extracting bcm43xx_microcode13.fw ...
extracting bcm43xx_pcm4.fw ...
extracting bcm43xx_pcm5.fw ...
extracting bcm43xx_initval01.fw ...
extracting bcm43xx_initval02.fw ...
extracting bcm43xx_initval03.fw ...
extracting bcm43xx_initval04.fw ...
extracting bcm43xx_initval05.fw ...
extracting bcm43xx_initval06.fw ...
extracting bcm43xx_initval07.fw ...
extracting bcm43xx_initval08.fw ...
extracting bcm43xx_initval09.fw ...
extracting bcm43xx_initval10.fw ...
extracting bcm43xx_initval17.fw ...
extracting bcm43xx_initval18.fw ...
extracting bcm43xx_initval19.fw ...
extracting bcm43xx_initval20.fw ...
extracting bcm43xx_initval21.fw ...
extracting bcm43xx_initval22.fw ...
extracting bcm43xx_initval23.fw ...
extracting bcm43xx_initval24.fw ...
extracting bcm43xx_initval25.fw ...
Now, this obviously appeared like it was going to work. But it didn't. When I tried running "ifconfig eth1 up" (it was using eth1 instead of wlan0, which is fine), it gave me some weird error about "SIOCSIFLAGS: Operation not supported", or something like that. Well, I was using the wrong firmware. I tried downloading a few different firmware versions, and I kept getting errors. I also got a "SIOCSIFLAGS: File not found" or something similar to that error. Again, wrong firmware. What a pain. Then, the light at the end of the tunnel... I downloaded a different type of firmware, at this link: http://boredklink.googlepages.com/wl_apsta.o. Then, I tried using bcm43xx-fwcutter again (exact same syntax as above, except simply specifying this "wl_apsta.o" file instead), and it again extracted a bunch of files. So, I reloaded bcm43xx again:
Code:
# rmmod bcm43xx
# modprobe bcm43xx
So far so good. Then, I tried running "ifconfig eth1 up":
Code:
# ifconfig eth1 up
#
Did you see that!?!? Holy crap, no errors! I checked "ifconfig eth1" to make sure, and voila! It says that it is UP!!!! How exciting! Just to make extra sure, I ran a scan for local wireless networks:
Oh, mah, goodness! This was great! So I connected to one of the available networks using Wifi-Radar, and everything was peachy, I got an IP address and I was ready to roll. Another note, I was seeing much improved signal from the local wireless networks using bcm43xx than I ever did with ndiswrapper, and on top of that, I was getting more wireless nodes that weren't showing up when I was using ndiswrapper!
So, all in all, this was a happy outcome, and I hope that you have the same outcome as well. Please be sure to exhaust all options before you settle for ndiswrapper, you may be very thankful that you did. nskprasanth, please try the above, and let me know if it worked for you. If you have any questions, give me a buzz here. See ya!
Make sure that you remove all of the firmware files that you load into /lib/firmware, BEFORE you attempt to write more firmware into that directory. In other words, before you use bcm43xx-fwcutter to extract firmware into /lib/firmware, be sure that you do this:
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.