# Tutorial:wireless ipw2200 setup on Dell D810

## jcbray

Alright, setting up wireless devices always seems to be an issue around here, so I figured another HOW-TO guide wouldn't be too far amiss. This guide is about setting up the ipw2200 ONLY, it might apply for others, but if your ipw2100 or anything else doesn't work by following this guide, please don't ask me why not, in all likelyhood I'll have no idea myself.

My Gentoo installation is on a Dell D810 if it's of any significance.

Step 1  Preparing the way

 Before you can get to installing your wireless card, you have to do some peripheral jobs to pave the way.

 To start off, we need to remove the ieee80211 subsystem from your kernel. If you built yours without it, move on, if you don't know, or used genkernel, keep reading, because you'll have to do this. I'll describe the method using genkernel.

1.Open a terminal and type 

```
genkernel --menuconfig all
```

2.Navigate the menu's to Networking > Generic IEEE 802.11 Networking subsystem. Everything that is part of this subsystem needs to be unchecked. You might not be able to uncheck the Generic IEEE 802.11 Networking Stack because of dependancies. These will have to be removed. I will assume there is a conflict, especially if you used genkernel. Press ESC.

             Navigate to Device Drivers > Network Device Support > Wireless LAN (non ham-radio) and uncheck everything there, you don't need it, we'll be getting the latest ipw2200 drivers later on, so just remove the old junk. Navigate back to the IEEE subsystem. You should now be able to remove it completly.

3. Keep pressing ESC to leave Genkernel, it will automatically rebuild your kernel. If you didn't use genkernel, rebuild your kernel how you've been told.

 Step 2  Emerging what's needed

1.There are Three thigns you will need to emerge

2.

```
emerge ieee80211
```

*

3.

```
emerge ipw2200-firmware
```

4.

```
emergeipw2200
```

*You may encounter an error during this emerge saying that you need to remove the ieee80211 from the kernel first. We already did this. The output will also give a command to remove the old files that confused it. Type in the command

```
 /bin/sh /usr/portage/net-wireless/ieee80211/files/remove-old /usr/src/linux
```

 and press y to the files it finds to remove them.

 Step 3  The last yards

 Congratulations! You now have your drivers installed.

1. You need an interface to be able to connect to your network through, and to do that we'll use wpa_supplicant.

```
 emerge wpa_supplicant
```

 Take note of where the example.conf file is stored to.

 2. In order to set up wpa_supplicant, we have to set up your network interface. Navigate to /etc/conf.d/net and open the file in your text editor.

 You'll have to add an interface for your wireless card. I have used eth1, seen as eth0 is my lan connection. If you're eth1 is already being used, just make it eth2 or whatever makes you giddy.

 add a line 

```
 iface_eth1=dhcp 
```

That line might be redundant actually, but I can't be bothered proving myself right or wrong.

Now we need to set up eth1 for wpa_supplicant, so add the following.

```

modules=( "wpa_supplicant" )      # use wpa_supplicant for TKIP secure network

wpa_supplicant_eth1="-Dwext"  # wpa_supplicant use -Dwext module for the network card

config_eth1=( "dhcp" )               # get an ip using dhcp 

```

Once those lines are added, save the file and close it.

3.Although you're referencing eth1, it doesn't exist yet, so we'll do that now. Open a terminal and type 

```
ln -fs /etc/init.d/net.lo /etc/init.d/net.eth1
```

4.Now it's time to set up wpa_supplicant. The only configuration you need for this is wpa_supplicant.conf

           For most people this setup is straight forward

```
# Simple case: WPA-PSK, PSK as an ASCII passphrase, allow all valid ciphers

network={

   ssid="YOURSSID"

   psk="YOURPASSWORD"

   priority=5

}

```

 Save the doc and exit. Look through the example.conf file to see if any other options apply to your situation. Seen as there are quite a few possibilites, I won't go into them here.

            Seen as you likely want to run your wireless all the time, add it to the default run level so it starts at boot

```
rc-update add net.eth1 default
```

You're done!

  run 

```
/etc/init.d/net.eth1 start
```

 to start your wireless.

----------

## BigBaaadBob

Question:  I have CONFIG_IEEE80211 unset in my config but the ieee80211 ebuild still complains about an "incompatible in-kernel ieee80211 subsystem" being detected.  Is this a bug in the ebuild?

----------

## jcbray

is it asking you to enter this code? 

```
/bin/sh /usr/portage/net-wireless/ieee80211/files/remove-old /usr/src/linux
```

???

 You can rebuild the kernel without the ieee80211 subset, but files are left over that need to be deleted, this should fix it up.

----------

## BigBaaadBob

 *jcbray wrote:*   

> is it asking you to enter this code? 

  Yes.  That's my point: either it shouldn't be asking or it should just go do the deletion (perhaps qualified by a use flag).  As it is right now it breaks my automated kernel rebuild process.  Seems like a bug, doesn't it?

----------

## jcbray

It's 11 am and I've just woken up after a oarty last night...that's my excuse for not really understanding what you're getting at  :Wink:  You see that bit of code as a bug because the ebuild should just delete it automatically? Would be more efficient, and probably cause less problems for some people, but then their might be an argument for not automatically deleting such files.

 As for the automated kernel rebuild process - is that genkernel, or just a script you've set up? if genkernel's breaking, what sort of error are you getting??

----------

## BigBaaadBob

 *jcbray wrote:*   

> It's 11 am and I've just woken up after a oarty last night...that's my excuse for not really understanding what you're getting at  

 

's ok.  I'm recovering from traveling from a skating competition in Romania.  :Wink: 

 *jcbray wrote:*   

> You see that bit of code as a bug because the ebuild should just delete it automatically? Would be more efficient, and probably cause less problems for some people, but then their might be an argument for not automatically deleting such files.

  That's why I thought it might be qualified by a local use flag that says "Just doo it, don't bother me".  That way the innocent wouldn't be harmed and the fearless wouldn't be annoyed!

 *jcbray wrote:*   

> 
> 
> As for the automated kernel rebuild process - is that genkernel, or just a script you've set up? 

 

It's a script I have that uses "module-rebuild".

----------

