Broadcom 4312 solved

Questions about Wi-Fi and other network devices, file sharing, firewalls, connection sharing etc
Forum rules
Before you post read how to get help. Topics in this forum are automatically closed 6 months after creation.
Locked
Eric

Broadcom 4312 solved

Post by Eric »

I've read through and followed numerous postings about this wireless card for my laptop. I just can't get it going in Mint 8 or Mint 8 64 bit.

If I use the linux driver from the Broadcom website, the thing is recognised as eth1 and no wireless networks are displayed.

If I use the restricted drivers, same thing happens.

If I use the windows driver, it gets detected as wlan0, but when I use the iwconfig command in terminal, there is a line that says signal quality: 0, link quality: 0. It still doesn't detect any networks.

I dunno what the deal is, and any help would be appreciated.
Last edited by LockBot on Wed Dec 28, 2022 7:16 am, edited 1 time in total.
Reason: Topic automatically closed 6 months after creation. New replies are no longer allowed.
Husse

Re: Broadcom 4312

Post by Husse »

No problems for me what so ever with the 4312 except that I had to use a wired connection to download the restricted driver
There may be some difference between our laptops
More facts are needed
- please read these simple rules
Gramps50

Re: Broadcom 4312

Post by Gramps50 »

For some reason I had to do things a little different in Karmic to get the Broadcom in my Dell laptop to work. Here's the procedure that I use

Install the Linux
Using a wired connection I then from a terminal

Code: Select all

sudo aptitude update

Code: Select all

sudo aptitude update
At this point I reboot as chances are a new kernel was install and if not you will then be using all the latest libs etc.
Now it's time for the B43 wifi driver, still using the wired connection

Code: Select all

System/Administration/Hardware Drivers
When the GUI comes up there should be 2 entries in it.
The 1st is the fwcutter highlight this and click 'Activate' lower right
Now highlight the 'Broadcom STA wireless adapter' line
Click 'Activate' again
Both times things will be downloaded and installed. When this is all finished it should tell you that you need to reboot. If it doesn't reboot anyway.
Now you can unplug the wired connection, if you click the Network icon in the panel your wireless network should be listed.

If this doesn't work then you want to make sure that the wifi switch isn't turned off, sometimes it a switch like my Dell or it maybe a hotkey combination.

Hope this helps
Eric

Re: Broadcom 4312

Post by Eric »

Husse, you're fully right, more information is needed. My bad.

Gramps50, I gave it a shot in the order you suggested to no avail. My computer froze after installing the STA driver, which is normal I've read, and, while the driver is now active, no wireless networks show up when I click the network manager icon.

So to provide all the information on the situation as it is starting from a clean install of Linux Mint 8x64 and after installing b43-fwcutter and the STA driver (keep in mind I'm posting this using my wired connection):

In the system profiler and benchmark application, it's showing the wireless interface icon like it should, and the wl and ssb drivers are being used.

Output from sudo /usr/lib/linuxmint/mintWifi/mintWifi.py

Code: Select all

-------------------------
* I. scanning WIFI PCI devices...
  -- Broadcom Corporation BCM4312 802.11b/g (rev 01)
      ==> PCI ID = 14e4:4315 (rev 01)
-------------------------
* II. querying ndiswrapper...
-------------------------
* III. querying iwconfig...
lo        no wireless extensions.

eth0      no wireless extensions.

eth2      IEEE 802.11  Nickname:""
          Access Point: Not-Associated   
          Link Quality:5  Signal level:0  Noise level:0
          Rx invalid nwid:0  invalid crypt:0  invalid misc:0

-------------------------
* IV. querying ifconfig...
eth0      Link encap:Ethernet  HWaddr 00:1f:16:27:34:b0  
          inet addr:192.168.1.68  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::21f:16ff:fe27:34b0/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:14592 errors:0 dropped:0 overruns:0 frame:0
          TX packets:9171 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:20024985 (20.0 MB)  TX bytes:877130 (877.1 KB)
          Interrupt:16 

eth2      Link encap:Ethernet  HWaddr 00:26:82:37:73:76  
          inet6 addr: fe80::226:82ff:fe37:7376/64 Scope:Link
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:17 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:16 errors:0 dropped:0 overruns:0 frame:0
          TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:960 (960.0 B)  TX bytes:960 (960.0 B)

-------------------------
* V. querying DHCP... 
Internet Systems Consortium DHCP Client V3.1.2
Copyright 2004-2008 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/

Listening on LPF/eth2/00:26:82:37:73:76
Sending on   LPF/eth2/00:26:82:37:73:76
Listening on LPF/eth0/00:1f:16:27:34:b0
Sending on   LPF/eth0/00:1f:16:27:34:b0
Sending on   Socket/fallback
DHCPDISCOVER on eth2 to 255.255.255.255 port 67 interval 3
DHCPDISCOVER on eth2 to 255.255.255.255 port 67 interval 6
DHCPREQUEST of 192.168.1.68 on eth0 to 255.255.255.255 port 67
DHCPACK of 192.168.1.68 from 192.168.1.254
 * Reloading /etc/samba/smb.conf smbd only
   ...done.
bound to 192.168.1.68 -- renewal in 41161 seconds.
-------------------------
* VI. querying nslookup google.com...
Server:		192.168.1.254
Address:	192.168.1.254#53

Non-authoritative answer:
Name:	google.com
Address: 209.85.225.104
Name:	google.com
Address: 209.85.225.99
Name:	google.com
Address: 209.85.225.106
Name:	google.com
Address: 209.85.225.105
Name:	google.com
Address: 209.85.225.103
Name:	google.com
Address: 209.85.225.147
Output from lshw -C network

Code: Select all

*-network               
       description: Ethernet interface
       product: NetLink BCM5906M Fast Ethernet PCI Express
       vendor: Broadcom Corporation
       physical id: 0
       bus info: pci@0000:01:00.0
       logical name: eth0
       version: 02
       serial: 00:1f:16:27:34:b0
       size: 100MB/s
       capacity: 100MB/s
       width: 64 bits
       clock: 33MHz
       capabilities: pm vpd msi pciexpress bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=tg3 driverversion=3.99 duplex=full firmware=sb v3.04 ip=192.168.1.68 latency=0 link=yes multicast=yes port=twisted pair speed=100MB/s
       resources: irq:28 memory:d5600000-d560ffff
  *-network
       description: Wireless interface
       product: BCM4312 802.11b/g
       vendor: Broadcom Corporation
       physical id: 0
       bus info: pci@0000:02:00.0
       logical name: eth2
       version: 01
       serial: 00:26:82:37:73:76
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
       configuration: broadcast=yes driver=wl0 driverversion=5.10.91.9 latency=0 multicast=yes wireless=IEEE 802.11bg
       resources: irq:17 memory:d4600000-d4603fff
I've got no wireless lights showing up on my laptop, and regardless of the switch for the wireless being on the on or off position, outputs from those commands are identical.

I just restarted my computer and the mintWifi.py gave a different output:

Code: Select all

-------------------------
* I. scanning WIFI PCI devices...
  -- Broadcom Corporation BCM4312 802.11b/g (rev 01)
      ==> PCI ID = 14e4:4315 (rev 01)
-------------------------
* II. querying ndiswrapper...
-------------------------
* III. querying iwconfig...
lo        no wireless extensions.

eth0      no wireless extensions.

eth2      IEEE 802.11bg  ESSID:""  Nickname:""
          Mode:Managed  Frequency:2.412 GHz  Access Point: Not-Associated   
          Bit Rate:54 Mb/s   Tx-Power:off   
          Retry min limit:7   RTS thr:off   Fragment thr:off
          Power Managementmode:All packets received
          Link Quality=5/5  Signal level=0 dBm  Noise level=0 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

-------------------------
* IV. querying ifconfig...
eth0      Link encap:Ethernet  HWaddr 00:1f:16:27:34:b0  
          inet addr:192.168.1.68  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::21f:16ff:fe27:34b0/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:27 errors:0 dropped:0 overruns:0 frame:0
          TX packets:45 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:2781 (2.7 KB)  TX bytes:6837 (6.8 KB)
          Interrupt:16 

eth2      Link encap:Ethernet  HWaddr 00:26:82:37:73:76  
          inet6 addr: fe80::226:82ff:fe37:7376/64 Scope:Link
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:17 

eth2:avahi Link encap:Ethernet  HWaddr 00:26:82:37:73:76  
          inet addr:169.254.6.234  Bcast:169.254.255.255  Mask:255.255.0.0
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          Interrupt:17 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:13 errors:0 dropped:0 overruns:0 frame:0
          TX packets:13 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:832 (832.0 B)  TX bytes:832 (832.0 B)

-------------------------
* V. querying DHCP...
There is already a pid file /var/run/dhclient.pid with pid 2144
killed old client process, removed PID file
Internet Systems Consortium DHCP Client V3.1.2
Copyright 2004-2008 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/

Listening on LPF/eth2/00:26:82:37:73:76
Sending on   LPF/eth2/00:26:82:37:73:76
Listening on LPF/eth0/00:1f:16:27:34:b0
Sending on   LPF/eth0/00:1f:16:27:34:b0
Sending on   Socket/fallback
DHCPREQUEST of 192.168.1.68 on eth0 to 255.255.255.255 port 67
DHCPACK of 192.168.1.68 from 192.168.1.254
 * Reloading /etc/samba/smb.conf smbd only
   ...done.
bound to 192.168.1.68 -- renewal in 38077 seconds.
-------------------------
* VI. querying nslookup google.com...
Server:		192.168.1.254
Address:	192.168.1.254#53

Non-authoritative answer:
Name:	google.com
Address: 209.85.225.106
Name:	google.com
Address: 209.85.225.99
Name:	google.com
Address: 209.85.225.103
Name:	google.com
Address: 209.85.225.104
Name:	google.com
Address: 209.85.225.147
Name:	google.com
Address: 209.85.225.105
So that's where I'm at for now. I'll see if anyone has any ideas (thanks) and then go ahead and install the Broadcom proprietary STA driver and post the results of that. The bright side is otherwise my laptop works better out of the box with Mint than with a reinstall of Windows XP.
Husse

Re: Broadcom 4312

Post by Husse »

A bit contradictory - first you say you installed the STA driver, then you say you are going to install it
An apt update is necessary in a fresh install of Helena due to some bug
The only thing I did and the only thing you have to do I think is to install the restricted driver
You should not activate fwcutter if you activate the restricted driver (STA driver) which is not b43
If you do a lsmod to see what loaded modules you have you find the STA driver as wl and for the 4312 that's all that's needed from Felicia onwards (don't remember about Elyssa)
(And you will not get a new kernel from apt upgrade, you need to do apt dist-upgrade for that - thankfully)
Eric

Re: Broadcom 4312

Post by Eric »

Husse, there is a different Broadcom STA driver offered at http://www.broadcom.com/support/802.11/linux_sta.php, that was the one that I was going to try next.

I did another clean install, ran the updates, and installed just the restricted Broadcom STA driver, as per Husse's advice. Wireless networks are still greyed out in the network manager.

Output from sudo /usr/lib/linuxmint/mintWifi/mintWifi.py

Code: Select all

-------------------------
* I. scanning WIFI PCI devices...
  -- Broadcom Corporation BCM4312 802.11b/g (rev 01)
      ==> PCI ID = 14e4:4315 (rev 01)
-------------------------
* II. querying ndiswrapper...
-------------------------
* III. querying iwconfig...
lo        no wireless extensions.

eth0      no wireless extensions.

eth2      IEEE 802.11bg  ESSID:""  Nickname:""
          Mode:Managed  Frequency:2.412 GHz  Access Point: Not-Associated   
          Bit Rate:54 Mb/s   Tx-Power:off   
          Retry min limit:7   RTS thr:off   Fragment thr:off
          Power Managementmode:All packets received
          Link Quality=5/5  Signal level=0 dBm  Noise level=0 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

-------------------------
* IV. querying ifconfig...
eth0      Link encap:Ethernet  HWaddr 00:1f:16:27:34:b0  
          inet addr:192.168.1.68  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::21f:16ff:fe27:34b0/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1033 errors:0 dropped:0 overruns:0 frame:0
          TX packets:962 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:994402 (994.4 KB)  TX bytes:166330 (166.3 KB)
          Interrupt:16 

eth2      Link encap:Ethernet  HWaddr 00:26:82:37:73:76  
          inet6 addr: fe80::226:82ff:fe37:7376/64 Scope:Link
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:17 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:12 errors:0 dropped:0 overruns:0 frame:0
          TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:720 (720.0 B)  TX bytes:720 (720.0 B)

-------------------------
* V. querying DHCP...
Internet Systems Consortium DHCP Client V3.1.2
Copyright 2004-2008 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/

Listening on LPF/eth2/00:26:82:37:73:76
Sending on   LPF/eth2/00:26:82:37:73:76
Listening on LPF/eth0/00:1f:16:27:34:b0
Sending on   LPF/eth0/00:1f:16:27:34:b0
Sending on   Socket/fallback
DHCPDISCOVER on eth2 to 255.255.255.255 port 67 interval 6
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 8
DHCPOFFER of 192.168.1.68 from 192.168.1.254
DHCPREQUEST of 192.168.1.68 on eth0 to 255.255.255.255 port 67
DHCPACK of 192.168.1.68 from 192.168.1.254
 * Reloading /etc/samba/smb.conf smbd only
   ...done.
bound to 192.168.1.68 -- renewal in 33949 seconds.
-------------------------
* VI. querying nslookup google.com...
Server:		192.168.1.254
Address:	192.168.1.254#53

Non-authoritative answer:
Name:	google.com
Address: 209.85.225.106
Name:	google.com
Address: 209.85.225.147
Name:	google.com
Address: 209.85.225.103
Name:	google.com
Address: 209.85.225.105
Name:	google.com
Address: 209.85.225.99
Name:	google.com
Address: 209.85.225.104
I installed windows xp again tried getting it to work but the driver was no good there either. I'm guessing maybe I have a defective 4312 chip.
Husse

Re: Broadcom 4312

Post by Husse »

I'm guessing maybe I have a defective 4312 chip.
Maybe - but there can be slightly different chips and also depend on the "surroundings" - the other chips
I have a HP 530 laptop and for Gloria and Helena all I had to do was to activate the restricted driver
The difference was that I had to be wired to do that in Helena but I think it was included in Gloria, but I may be wrong
Eric

Re: Broadcom 4312

Post by Eric »

So is there anything at all I can do? I'm pretty much at a loss.
Gramps50

Re: Broadcom 4312

Post by Gramps50 »

Found this in the Ubuntu forums might be the problem
make sure that there IS a "b43" line in /etc/modules and make sure that there ISN"T a "blacklist b43" or "blacklist ssb" line in any of the files in "/etc/modprobe.d."
Enter in terminal
lspci -nn

The line for my Broadcom looks like this
0e:00.0 Network controller [0280]: Broadcom Corporation BCM4312 802.11b/g [14e4:4315] (rev 01)

Compare to yours maybe you have a different version of the card
Eric

Re: Broadcom 4312

Post by Eric »

I entered lspci -nn in the terminal and got the same output you did, just with 02:00.0 at the beginning instead of 0e:00.0.

I added a b43 line to /etc/modules, and straight deleted the blacklist_bcm4312.conf file in /etc/modprobe.d it was a file created by bcmwl-kernel-source package (the STA driver), and uninstalled said package. I swapped over to using the Windows driver. ndiswrapper pops up a dialog that says unable to detect hardware, but in the main part of ndiswrapper underneath the bcmwl5 driver it says that the hardware is present. Dunno what the deal with that is.

iwconfig spits out the same stuff as before, just the device is named wlan0 instead of eth2.
Husse

Re: Broadcom 4312

Post by Husse »

My 4312 has the same PCI ID as yours
But there is more to it. I have
Subsystem: Hewlett-Packard Company Device [103c:137d]
and that can vary and cause different behaviour
And I have
Kernel driver in use: wl
Kernel modules: wl, ssb
And I just found this in a topic in linuxforums
It seems that there are two Broadcom chips with the name 4312. One of them works with the b43 driver (the firmware is for that one). The other uses the Broadcom-wl driver.
So you may have the one using b43 and fwcutter
Gramps50

Re: Broadcom 4312

Post by Gramps50 »

The 1st part you mentioned being different doesn't matter all that matters is the [14e4:4315] and if that is the same then we have the same chipset and yours should work too. I have mint 8 on a desktop but not my laptop. I can't remember why I didn't run it on my laptop, had some issues. I can run Karmic just fine on it and right now I have eeeBuntu on it. After reading on linuxwireless.org it appears that I only need to run b43-fwcutter and not the STA,guess I need to do a reinstall and see excatly what I need to do, maybe I am loading more drivers that is really needed.

I did read where someone mention that when switching between Windows and Linux they had to remove their bm card and touch the pins and then put it back or it wouldn't work, go figure :?:
Husse

Re: Broadcom 4312

Post by Husse »

all that matters is the [14e4:4315]
I disagree to an extent - I did not find what the subsystem is but the immediate surroundings of any chip can have an influence and Subsystem: Hewlett-Packard Company Device [103c:137d] could mean that HP has done something to it - or not - it's very hard to tell
But it should not mean anything
switching between Windows and Linux they had to remove their bm card and touch the pins and then put it back or it wouldn't work, go figure :?:
Can be nonsense, but there is a small chance that some register in the chip is emptied by the shortcircuit
This is not an option in most cases as it probably is soldered in place
The big chance (rather risk) in this case is that the chip is destroyed by static electricity
But I think you are on the right way Gramps50
As my 4312 just works I feel I can't really come up with something :?
Gramps50

Re: Broadcom 4312

Post by Gramps50 »

Decided to try again and install lm8 on my laptop. Here's what I did
Installed LM8 amd65 off cd
Booted into new lm8 system
Using a wired connection I applied all the updates (149 in my case)
Restarted
Opened Administration/Hardware Drivers
Activated Broadcom STA wireless driver (second choice in the list)
After it downloaded and installed the files the wifi light lite and I was able to see my local network with Network Manager, entered my web key and I was connected.
Rebooted and it connected automaticly so all was good.
Eric

Re: Broadcom 4312

Post by Eric »

Perseverance paid off. I have no idea what made it work, I did absolutely nothing differently in regards to the installation process of the driver. I just downloaded the 64-bit STA driver from the Broadcom website and put it on a clean install of Linux Mint 8 x64, and presto! How bizarre. Thanks a lot for your patience and suggestions though, both of you.

The only thing I can think of that might have contributed to this was either a clean install of Windows XP were the driver worked, whereas it hadn't before. Maybe that activated something on the hardware, I dunno seems unlikely. Or afterwards when I went into the BIOS settings, restored defaults, and tried again with Linux. No idea why that would have helped either though, as wireless was already enabled in the BIOS and all I had changed was muting the start-up noise.
Eric

Re: Broadcom 4312 solved

Post by Eric »

Ok, one more small setback. I have to run these commands in terminal every time I turn on the laptop to get wireless going.

Code: Select all

cd /home/eric/.hybrid
sudo modprobe lib80211
sudo insmod wl.ko
I dunno if cd'ing to .hybrid is necessary, but that's the folder I compiled the driver in.

Is there any configuration file I can edit, or script i can create so I don't have to do this all the time? I tried adding wl to /etc/modules, didn't do anything.
Husse

Re: Broadcom 4312 solved

Post by Husse »

Code: Select all

    cd /home/eric/.hybrid
    sudo modprobe lib80211
    sudo insmod wl.ko
No need to cd to any directory and why the insmod?
Try sudo modprobe wl and it should work
Insmod is an older somewhat "stupid" command to insert a module into the kernel and it might need the .ko which should not be used with modprobe
Add

Code: Select all

modprobe lib80211
modprobe wl
in /etc/rc.local before exit 0
Eric

Re: Broadcom 4312 solved

Post by Eric »

That did it, thanks Husse. I don't really know what I'm doing when it comes to the guts of Linux, but you and Gramps50 have been great. Thanks.
Husse

Re: Broadcom 4312 solved

Post by Husse »

Well Eric you seem to be able to read what we have written and copy the code boxes into the right place
That's unfortunately more than can be said of some other forum members ....
Locked

Return to “Networking”