# Broadcom 4318 Wireless Help

## CrEsPo

I'm looking for support for the Broadcom 4318 wireless card. I just bought an HP Pavilion dv8000 laptop and I'm doing some reserch before installing Linux onto the laptop. After looking into it the only thing I'm not sure about how to install is the wireless card listed above. I did some searching around the forum and found this old HOWTO. That HOWTO says it is outdated, so I'm wondering if I would install the drivers the same way or is their a newer way to install them?

My second concern is with WPA encryption. I'm using WPA as my encryption for my wireless connection, and I've been reading about some wpa_supplement that is needed. Does anyone have any insight on this? I tried Googling, but couldn't find up with a homepage. I'm not totally lost when it comes to Linux, but I am when it comes to wireless connections. I just recently got my first wireless connection so I'm not that good with getting around it yet, even in Windows. Wireless is my only concern before installing Gentoo on my system.

One more thing, does anyone know where I could get the 64-bit drivers for the Broadcom 4318 wireless card? I've looked everywhere with no luck, Broadcom's homepage only has the 44xx and the 57xx drivers and the HP website has the 32-bit drivers bundled with what ever HP included so those probably wont work good with the ndiswrapper method.

Any help is greatly appreciated. If things go to plan I tend to start installing Gentoo tomorrow night.

----------

## jpl888

Hi CrEsPo,

There is an in-kernel driver for the bcm4318, but it is only in kernel 2.6.17 and above. If you use that and your using Gentoo 64 bit you will get a 64 bit version of the driver.

As to how to configure it depends largely on what you want to do. Personally I am using ad-hoc mode and that isn't supported in the kernel driver so I ended up using ndis-wrapper and managed to get a 64bit version of the Windows driver from some web page (think it was Dell).

The other thing you were talking about is actually "wpa_supplicant" and I haven't used it so somebody else would be a better bet there.

You probably have more questions now than when you started, but at least I have got you going eh?

----------

## Monkeh

And if, for whatever reason, the in-kernel driver fails, this should work with ndiswrapper: ftp://ftp.support.acer-euro.com/notebook/ferrari_4000/driver/winxp64bit/80211g.zip

----------

## CrEsPo

Thanks for the replies guys.

jpl888, is the following what you're talking about: Native Airport Extreme Drivers?

Thanks for the information on wpa_supplicant, searching for the proper name I found this in the Wiki. Helps to search for the correct term, don't know where I got wpa_supplement from.

Thanks for the link Monkeh, downloaded that driver in case the in-kernel driver fails. I appreciate the link, hopefully I wont have to use it  :Smile: .

----------

## jpl888

Well that is MAC specific but it will certainly help you and most of it will be the same. I certainly looked at it a few times before arriving at the ndiswrapper solution.

----------

## TenPin

I'm trying to get ny broadcom 4318 minipci card working.

I tried using kernel 2.6.17 with the built in driver but it just couldn't connect to anything.

If I use the bcm43xx-20060329 driver in portage and kernel 2.16.25 then it works perfectly with non secure networks.

Has anyone managed to get their 4318 working with a WPA network using wpa_supplicant because wpa_supplicant 0.48 and 0.54 fail for me.

Thanks.

----------

## CrEsPo

Ok, I finally upgraded to 2.6.17.6 and I'm having some problems.

eth0 is a wired connection

eth1 is the wireless connection

When I boot up the system eth0 works, I then connect to the wireless device using the following method:

ifconfig eth# up

iwlist eth# scan

iwconfig eth# channel #

iwconfig eth# essid "AP_ESSID" 

Once I do that I use ifconfig eth0 down to close eth0 so I can see if eth1 works with a ping. When I ping I get an unknown host error. Once this happens, if I try another iwlist eth1 scan it tells me there are no results.

Any ideas on what's going on?

----------

## wynn

 *Quote:*   

> Once I do that I use ifconfig eth0 down to close eth0 so I can see if eth1 works with a ping. When I ping I get an unknown host error. 

  It could be that eth0 is being setup by dhcp, if so, then the gateway will be one that is accessible via eth0. If you remove eth0 and the routes remain the same, eth1 will not be able to connect.

After eth0 is up and you can get out though it, run "route" and see what it says. Now if you take down eth0, look at eth1's IP address and compare it to the gateway in the output of route.

Please let us know what you find.

----------

## CrEsPo

You're right, I have setup eth0 to be setup by dhcp. Here is the route with eth0 up and running fine:

```

Destination        Gateway         Genmask             Flags       Metric     Ref         Use     Iface

192.168.1.0       *                    255.255.255.0      U            0             0           0        eth0

loopback           localhost         255.0.0.0              UG          0            0          0         lo

default              192.168.1.1      0.0.0.0                UG          0           0             0       eth0

```

With eth0 down and eth1 up I get the follow:

```

Destination        Gateway         Genmask             Flags       Metric     Ref         Use     Iface

loopback           localhost         255.0.0.0              UG          0            0          0         lo

```

Seems like it's not even going up even though I'm using the ifconfig eth1 up command. Any ideas on what I'm doing wrong?

----------

## wynn

I don't know your setup and whether this is possible but if you can run dhcp on eth1 (and it works) you should get an IP for it and a corresponding route.

I think you will have to chose one or the other as your connection to the great wide world, I don't think (no guru here) that you can have both setup at the same time. I'd be very happy to be corrected on this one   :Very Happy: 

(Pinched from a developer's post:)

```
dhcpcd eth1

ifconfig eth1

route -n 
```

 or, of course, one of the other DHCP clients.

----------

## CrEsPo

How do I take off DHCP for eth0 if that's the problem?

I tried dhcpcd eth1 and it gets stuck in an infinite loop.

Do you need any more information? I'm totally lost with this, I could always get wired connections to work, but this is my first time using wireless so I'm so clueless right now.

----------

## wynn

 *Quote:*   

> How do I take off DHCP for eth0 if that's the problem? 

  You probably don't need to take it off, for dhcpcd you can add (in /etc/conf.d/net) arguments to dhcpcd which stop it from setting the gateway so the gateway returned by your wireless NIC will not be overwritten.

 *Quote:*   

> I tried dhcpcd eth1 and it gets stuck in an infinite loop.

  Tireless lttle things, computers   :Smile:   It's probably trying to get a response to its request "broadcasting DHCP_DISCOVER".

To find out what it's doing, use

```
dhcpcd -d eth1
```

 which will give you something like (but this is a successful one)

```
MAC address = 00:0f:3d:ae:c4:e7

broadcasting DHCP_DISCOVER

broadcastAddr option is missing in DHCP server response. Assuming 192.168.0.255

dhcpIPaddrLeaseTime=36000 in DHCP server response.

DHCP_OFFER received from  (192.168.0.50)

broadcasting DHCP_REQUEST for 192.168.0.64

dhcpIPaddrLeaseTime=36000 in DHCP server response.

DHCP_ACK received from  (192.168.0.50)

broadcasting ARPOP_REQUEST for 192.168.0.64

verified 192.168.0.64 address is not in use

your IP address = 192.168.0.64

orig hostname = lightfoot
```

 It's possible that the wireless bit (router? access point?) isn't set up for DHCP in which case after DHCP_DISCOVER it will timeout.

----------

## CrEsPo

This is my /etc/conf.d/net file:

```

#Wired

config_eth0=( "192.168.1.103 netmask 255.255.255.0 brd 192.168.1.0" )

routes_eth0=( "default gw 192.168.1.1" )

#Wireless

config_eth1=( "dhcp" )

dhcp_eth1="nodns nontp nonis"

```

The eth0 works fine, eth1 isn't working. As for the dhcpcd -d eth1 command, you're right in that it times out at DHCP_DISCOVER. I know the router is setup for DHCP because just before moving to Gentoo I had the wireless working in Windows. Nothing with the router setup has changed.

----------

## wynn

I hadn't realized you were using net-misc/dhcp, I'd assumed net-misc/dhcpcd (because that's what's here   :Smile:  )

In this case, to find out what's going on, you need to run

```
dhclient -d eth1
```

 The man page says that it looks for a config file at /etc/dhcp/dhclient.conf and creates /var/lib/dhcp/dhclient.leases where it stores the leases it has obtained.

Here there's only /etc/dhcp/dhclient.conf.sample. See if /var/lib/dhcp/dhclient.leases has been created and contains anything.

The man page says that it puts its messages into the normal system log, probably /var/log/messages in your case. There might be something illuminating there.

I suppose you only have one of net-misc/dhcpcd, net-misc/dhclient, net-misc/udhcpc or net-misc/pump installed?

```
$ equery list dhcp

[ Searching for package 'dhcp' in all categories among: ]

 * installed packages

[I--] [  ] net-misc/dhcp-3.0.3-r9 (0)

[I--] [  ] net-misc/dhcpcd-2.0.5 (0)
```

 Two here.

To avoid overwriting the gateway set up for eth0 you will need to add "nogateway" to 

```
dhcp_eth1="nodns nontp nonis"
```

Unless a stray alpha particle strikes before your next post, that's it  :Sad: 

----------

## CrEsPo

Sorry, I am using dhcpcd, but I probably didn't do the right settings in the configuration file.

I now have the wireless working. I knew there were two methods, one with the native bcm43xx driver and one using the ndiswrapper. I tried using the ndiswrapper and using the exact same method to connect as I did with the bcm43xx driver it works. Even the WEP works as when I tried with the bcm43xx it told me it was broken.

I appreciate all the help, it looks like we were right from the beginning, just that the driver was broken.

----------

## pldg

 *TenPin wrote:*   

> I'm trying to get ny broadcom 4318 minipci card working.
> 
> I tried using kernel 2.6.17 with the built in driver but it just couldn't connect to anything.
> 
> If I use the bcm43xx-20060329 driver in portage and kernel 2.16.25 then it works perfectly with non secure networks.
> ...

 

I'm running 2.6.16-gentoo-r13 on an Acer Ferrari (BCM4318). I just got it to work with WPA, but I still don't know the logic of it, since my .config came from a previous kernel version and in the process the config file lost much of what I normally choose (just found out that). The lesson learned is, every few copies of .config, a full check is needed. 

Anyway, I spent the morning trying to get the wireless card to work with ndiswrapper and WPA, as it has been with iwconfig and WEP. Another machine with 94306 worked and I just copied the solution, to no avail. With debug on, It kept complaining with "Driver does not support WPA". The command I used to debug was:

```
 wpa_supplicant -iwlan0 -Dndiswrapper -c/etc/wpa_supplicant.conf -dd -K -t
```

Google found me a hint from someone running Fedora. I tried and it worked straight away:

```
 wpa_supplicant -iwlan0 -Dwext -c/etc/wpa_supplicant.conf -dd -K -t
```

My /etc/wpa_supplicant.conf file has only:

```
network={

        ssid="my AP name"

        psk=<lengthy key...>

}

```

Hope this helps...

----------

