Broadcom 3406 configuration problem

Hello,
I’ve upgraded from suse10.2 to suse 11.1 a few weeks ago.
My machine has a wired card and a wireless one.
In suse10.2 I’ve got the Broadcom BC4306 working with ndiswrapper. Haven’t used wireless for ages (too slow), now I tried it with suse11.1 and Networkmanager.
I’ve run install_bcm43xx_firmware, seems like it worked, nothing strange in /var/log/boot.msg.
This is how far I’ve got it working:

  • in networkmanager, set encryption key, and static ip (192.168.1.10).
    Use of dhcp results in wait for ip forever.
  • make the connection, iwconfig shows the right ssid of my accesspoint, it’s associated, key is correct, ip is 192.168.1.10
  • ping 192.168.1.1 (the accesspoint) does not work
  • command dhcpcp wlan0_rename_re assigns ip 192.168.1.104
    (sometimes I got to kill old dhcpcp processes)
  • ping 192.168.1.1 to the accesspoint works fine
  • I can even login to the accesspoint via Firefox
  • but… can’t browse the internet
  • can’t ping 195.121.1.34 ( nameserver)

How should I configure the wireless interface?
Yast is no option as it says the interface is configured via Networkmanager.

I guess that some configuration files are more or less ‘corrupted’.

Any help appreciated.

Disabled ipv6 ? It sometimes causes this.Also, did you set up the connection with network manager or ifup ? With network manager you need to right-click & select new connection & fill in the missing pieces.

Andy

There is one other possibility with a BCM4306. Some of the PCI versions (not
Cardbus) have SPROM programming errors. This lets the device receive, but not
transmit. The problem was not present with bcm43xx, but is with b43. To tell if
yours is one of them, run the command ‘/sbin/lspci -nnv’ and post the
FIRST_TWO_LINES for the BCM4306. I need to see the subvendor codes.

Sorry for the shouting, but I have asked for this information before and gotten
the entire lspci output.

Larry

ipv6 has was already disabled (Yast, general tab).
I set the connection from networkmanager, use manual ip, the wheel starts turning, when it stops I’ve got signal. The access point says the card is associated, but I can’t ping the accesspoint.
Strange but true: when I do: dhcpcd wlan0_rename_re, I get a new ip (that’s 192.168.1.104) and I can ping to the accesspoint and even use samba from another wired machine.

This is what lspci shows:

00:0a.0 Network controller [0280]: Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller [14e4:4320]
(rev 03)
Subsystem: Linksys Device [1737:0015]
Flags: bus master, fast devsel, latency 32, IRQ 10
Memory at d8000000 (32-bit, non-prefetchable) [size=8]
Kernel driver in use: b43-pci-bridge
Kernel modules: ssb[/size]

chris vos wrote:
> ipv6 has was already disabled (Yast, general tab).
> I set the connection from networkmanager, use manual ip, the wheel
> starts turning, when it stops I’ve got signal. The access point says the
> card is associated, but I can’t ping the accesspoint.
> Strange but true: when I do: dhcpcd wlan0_rename_re, I get a new ip
> (that’s 192.168.1.104) and I can ping to the accesspoint and even use
> samba from another wired machine.

Your card is working, but if you have something like “wlan0_rename_re”, then
your udev rules are messed up. Please go to the file
/etc/udev/rules.d/70-persistent-net.rules and find a rule that mentions b43 as
the driver. The rule should look like

SUBSYSTEM==“net”, ACTION==“add”, DRIVERS==“b43”, ATTR{type}==“1”,
KERNEL==“wlan*”, NAME=“wlan0”

It should be on one line. The critical part is the ATTR{type}==“1”, clause. What
is happening now is that your current rule is renaming the master device to
wlan0, and it is choking on renaming the real interface.

If you cannot figure it out, post the contents of that file, and I’ll tell you
what you need.

Larry

The contents of file /etc/udev/rules.d/70-persistent-net.rules is not as expected, there 's no bc in it at all:
(Note: 00:0f:66:6d:03:90 is the wireless card)

This file was automatically generated by the etc/sysconfig/network/scripts/convert_persistent_name_rules

program, probably run by the persistent-net-generator.rules rules file.

You can modify it, as long as you keep each rule on a single line.

converted ‘rename_netiface’ rule

SUBSYSTEM==“net”, DRIVERS=="?*", ATTRS{address}==“00:0f:66:6d:03:90”, NAME=“eth0”

converted ‘rename_netiface’ rule

SUBSYSTEM==“net”, DRIVERS=="?*", ATTRS{address}==“00:40:f4:6d:a8:2e”, NAME=“eth1”

You should make the following rule be the first one in the file.

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="b43", ATTR{type}=="1", KERNEL=="wlan*", NAME="wlan0"

After you do this, the ‘/usr/sbin/iwconfig’ command should show something like:


lo        no wireless extensions.

eth1      no wireless extensions.  ( This one may not be here.)

wmaster0  no wireless extensions.

wlan0     IEEE 802.11bg  ESSID:""
          Mode:Managed  Frequency:2.412 GHz  Access Point: Not-Associated
          Tx-Power=20 dBm
          Retry min limit:7   RTS thr:off   Fragment thr=2352 B
          Power Management:off
          Link Quality:0  Signal level:0  Noise level:0
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

Compare that to the old code.

iwconfig now shows after adding the line subsystem= … and rebooting and make connect:
lo no wireless extensions.
eth1 no wireless extensions.
eth0 no wireless extensions.

wlan0 IEEE 802.11bg ESSID:“linksys253”
Mode:Managed Frequency:2.462 GHz Access Point: 00:14:C1:30:E5:75
Bit Rate=54 Mb/s Tx-Power=27 dBm
Retry min limit:7 RTS thr:off Fragment thr=2352 B
Encryption key:DBF9-7430-D619-51FE-XXXX-XXXX-DD Security mode:open
Power Management:off
Link Quality=90/100 Signal level:-43 dBm Noise level=-68 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0

ipconfig:
wlan0 Link encap:Ethernet HWaddr 00:0F:66:6D:03:90
inet addr:192.168.1.104 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:304 errors:0 dropped:0 overruns:0 frame:0
TX packets:269 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:51833 (50.6 Kb) TX bytes:55807 (54.4 Kb)

Still not able to ping the access point at 192.168.1.1 at that moment (obtained ip via dhcp),
after command dhcpcd wlan0 the access point can be pinged.

Are you using ifup to control the device rather than NetworkManager?

I use kNetworkmanager for ‘normal’ connect.

In order to solve the wireless problem, I try a other things like dhcpcp to see what happens.

chris vos wrote:
> I use kNetworkmanager for ‘normal’ connect.
>
> In order to solve the wireless problem, I try a other things like
> dhcpcp to see what happens.

In your “try a other things”, you must have messed up DHCP. Normally, once the
interface authenticates and associates, then getting an IP is straight forward.