You are not logged in.

#1 2010-04-26 12:06:01

Noxic
Member
Registered: 2010-04-26
Posts: 18

[SOLVED] Broadcom BCM4312 802.11b/g, works first boot

This thursday I got a new laptop (new compared to my old machine, anyway), and has been waiting for a new computer to switch from Ubuntu to Archlinux. I used a wired connection to install things, and it mostly worked fine, although resizing the partitions led to Windows 7 breaking (minor issue). I ran 'pacman -Syy; pacman -Syu', installed yaourt (thinking of switching that though), etc.

Then I installed the wireless drivers.

I'm using an eMachines E525 laptop with the Intel G45 chipset, and a Broadcom BCM4312 802.11b/g wireless card.
I followed the Wireless Setup page on the Wiki and installed the broadcom-wl package, which didn't really work at all (reading here has told me that package is deprecated in my kernel), so I tried the b43-firmware-newest package.

At first it worked fine. I disconnected the wired internet, installed alsa, xorg, fluxbox and mplayer, and then I rebooted. I didn't connect automaticly after booting, "So what", I thought, "I'll just do it manually for now".

[root@LillNy ~]: ifconfig wlan0 up
[root@LillNy ~]: dhcpcd wlan0
dhcpcd: version 5.2.2 starting
dhcpcd: wlan0: waiting for carrier
dhcpcd: timed out

From there, things went downhill. Finally I decided to use the wired connection to install the broadcom-wl package again, but it still didn't work. Then I installed the b43-firmware-newest package again, and it worked!
Until the next reboot, where I started having the same problem again, which I will describe now.

After a fresh reboot, making sure wlan0 doesn't connect automatically, I may run 'iwlist wlan0 scan', which shows the network I'm using. Then I run

[root@LillNy ~]: ifconfig wlan0 up; iwconfig wlan0 essid dlink; sleep 1; iwconfig wlan0; sleep 5; iwconfig wlan0

The first 'iwconfig wlan0' would tell me I have a fully working connection, but then I would apparently get disconnected because the second 'iwconfig wlan0' would tell me I'm not connected.

Another option is to, after a fresh reboot, run 'dhcpcd wlan0' in one console, switch to another, and run 'iwconfig wlan0 essid dlink' (specifically after dhcpcd has put wlan0 up in ifconfig). Doing that, dhcpcd establishes a connection but then immediately drops it as it forks into background, or sometimes before, saying the carrier was lost.

Running 'iwlist wlan0 scan' after any of these options would give no results, and running 'iwconfig wlan0 essid dlink' would indeed change wlan0's ESSID into "dlink", but not connect to the access point at all. Nor would it even if I specified which channel, frequency, bitrate etc it should be on.

Looking at dmesg after doing any of these things I find a message saying first that a probe was found (my router), after which it would give me a "Fatal DMA error", saying I should enable "CONFIG_B43_FORCE_PIO" in my kernel. I don't know how to do that, but searching these forums have told me it won't work anyway. After giving these messages, it says that it's disconnecting because the probe hasn't responded for 300ms.

I've spent very much time trying to find a solution to this, the most similiar problem I've found is on this thread, but that thread apparently never solved it, and buying a new card isn't an option for me.
How much goat blood do I need to drink to establish a stable connection?

Last edited by Noxic (2010-04-27 08:04:02)

Offline

#2 2010-04-26 13:18:21

Emeric
Member
From: France
Registered: 2009-03-18
Posts: 30
Website

Re: [SOLVED] Broadcom BCM4312 802.11b/g, works first boot

The thing is, depending on your bcm4312 card revision, b43 with b43firmware can work well, work sometimes, or not work at all. This card is a pain...

You can use broadcom-wl-patched, wich work with 2.6.33 kernels.
I get it to work using a custom script, take me some time to figure this one out... The script have to be manually launch after each boot (if I put it in rc.local, no effects... weird)

#!/bin/bash

rmmod b43-legacy b43 ssb wl lib80211_crypt_tkip lib80211
sleep 1

modprobe lib80211_crypt_tkip
modprobe wl
sleep 1

ifconfig eth1 up
iwlist scan

But I just switch today to a intel wl5100, 15€ on ebay, work out of the box. You really should do the same !


"If you're not a part of the solution, there's good money to be made in prolonging the problem"

Offline

#3 2010-04-26 16:03:37

Noxic
Member
Registered: 2010-04-26
Posts: 18

Re: [SOLVED] Broadcom BCM4312 802.11b/g, works first boot

Thank you *very* much, I'll try this ASAP.

EDIT:
It works better than before, because iwlist scan doesn't stop working after using dhcpcd. Then again, now it doesn't connect to the network to begin with, but atleast it can see it so I'll try a few more times. I'll post again if I make any progress.

EDIT2:
It works! I'm currently writing this from my laptop via lynx, after three reboots. The only problems I'm having now are the swapping of interfaces (I've read that there are solutions for that) and making it connect at boot.
By the way, it worked without your script :S All I had to do was 'ifconfig up', 'iwconfig eth1 essid dlink', and finally 'dhcpcd eth1'.

Last edited by Noxic (2010-04-26 16:50:28)

Offline

#4 2010-04-26 22:52:34

mits
Member
From: Bucharest/Romania
Registered: 2008-01-10
Posts: 129

Re: [SOLVED] Broadcom BCM4312 802.11b/g, works first boot

For avoid swapping of interfaces with Broadcom BCM4312 is must to see http://wiki.archlinux.org/index.php/Broadcom_BCM4312.
I have same card on Dell 1555 and with that trick is no problem.

Offline

#5 2010-04-27 08:03:41

Noxic
Member
Registered: 2010-04-26
Posts: 18

Re: [SOLVED] Broadcom BCM4312 802.11b/g, works first boot

Thanks! smile I'll rename the thread so it's viewed as solved now.

Offline

#6 2010-04-27 10:23:03

Emeric
Member
From: France
Registered: 2009-03-18
Posts: 30
Website

Re: [SOLVED] Broadcom BCM4312 802.11b/g, works first boot

Weird on my laptop I was unable to do "ifconfig up" without unloading and reloading the kernel modules...
This driver is not good anyway, better off without it !


"If you're not a part of the solution, there's good money to be made in prolonging the problem"

Offline

Board footer

Powered by FluxBB