# [solved] ipw2200 wifi problem

## Il turisto

Hi, I have a problem with my wifi card

I have emerged ipw2200 and I'm sure that this is the driver for my card

But when I do modprobe ipw2200 I have the following error :

Warning : Error inserting ieee80211 (/lib/modules..../ieee80211.ko): Unknown symbol in module, or unknow parameter (see dmesg)

Warning: Error inserting firmware_class (/lib/modules/2.6..../firmware_class.ko): Invalid module format

FATAL: Error inserting ipw2200 (/lib/modules/2.6.../ipw2200.ko): Unknown symbol in module, or unkwnown parameter (see dmesg)

/etc/init.d/coldplug start

... can't load module ipw2200

missing kernel or user mode driver ipw2200Last edited by Il turisto on Wed Jun 22, 2005 4:34 pm; edited 1 time in total

----------

## fredgt

When u compiled the driver was /usr/src/linux pointing to the correct kernel?

Do you have wireless support in you´re kernel and do you have the correct encryption support in the kernel?

For the correct kernel settings take a look at.

http://gentoo-wiki.com/HARDWARE_ipw2200

The drivers should work fine, since two weeks it even has monitor mode.

----------

## Il turisto

 *fredgt wrote:*   

> When u compiled the driver was /usr/src/linux pointing to the correct kernel?

 

Yes

 *fredgt wrote:*   

> Do you have wireless support in you´re kernel and do you have the correct encryption support in the kernel?

 

Yes

 *fredgt wrote:*   

> For the correct kernel settings take a look at.
> 
> http://gentoo-wiki.com/HARDWARE_ipw2200
> 
> The drivers should work fine, since two weeks it even has monitor mode.

 

I've unmerged modutils and emerged module-init-tools and the problem is the same.

My kernel is 2.6.11-gentoo-r9

Pentium M processor.

----------

## fredgt

What files are in /lib/modules/2.6.11-gentoo-r9/net/

For me these are.

```
$ ll /lib/modules/2.6.11-gentoo-r8/net/

total 2061

-rw-r--r--  1 root root 989056 May 24 18:17 ieee80211.ko

-rw-r--r--  1 root root 141798 May 24 18:17 ieee80211_crypt.ko

-rw-r--r--  1 root root 145959 May 24 18:17 ieee80211_crypt_ccmp.ko

-rw-r--r--  1 root root 153860 May 24 18:17 ieee80211_crypt_tkip.ko

-rw-r--r--  1 root root 141115 May 24 18:17 ieee80211_crypt_wep.ko

-rw-r--r--  1 root root 527353 May 24 18:17 ipw2200.ko

```

Also don't forget "modules-update" after installing the modules.

I've got the 2.6.11-gentoo-r8 kernel so it will problably workt with the r9 kernel to

I'm have a Pentium-M [on a ATI-IXP mobo (Asus M6R)]

----------

## Il turisto

thanks for help.

nothing work with modprobe so i have made a fresh install and at boot from live cd there is two network card detect.

The first time therr was only one card detect.

ps : sinon tu vis ou en belgique?

----------

## Il turisto

hmmm sorry for "flooding" but I have another problem.

My wifi card work perfectly at work but at home I can't have ip by dhcp.

I have an acess point at 00:00:00 ... when I do iwconfig

Can you help me?

----------

## fredgt

How do you start you're wireless network. Did you configure it in /etc/conf.d/wireless or do you start it manually. 

Check that you can see you're network with

"iwlist eth1 scanning"

This should give a nice list of all available networks.

Also, if you're nework is encrypted don't forget to set the encryption key. 

There are some AP's that don't allow you to connect using "any" essid so also try to speciffy the correct ESSID.

----------

## Il turisto

at work i have just done : iwconfig channel 6 key mykey and it work

here I have tryed and it does not work so I have done a little configuration in /etc/conf.d/net

I have tried some things but I can't have any ip and any mac address from my routeur

here I have also tried 

iwconfig channel 6 essid myssid key s:mykey 

and nothing new

but I habe a bad routeur. It is a d-link 624+. If you have the choice don't buy this routeur

ps : au fait temps que Belge tu dois parler français no?

----------

## Il turisto

now it work but how can I manage in automatically 2 network (1 at work and 1 at home)?

----------

## jakubc

hi,

all the settings you need are in your /etc/conf.d/wireless.example if you don't have this file, then make sure you have baselayout version 1.11.?  (masked) these have wireless support.  For emerging all the up-to-date stuff use: HOWTO.  With this baselayout you can configure your stuff automatically for any given number of intefraces and AP's.

Best of luck!

----------

## Il turisto

thanks for the tutorial but after installing all things I have no wireless example.

can you post yours please?

----------

## jakubc

strage... it should be there... are you positively sure you emerged the masked package?

/etc/conf.d/wireless.example

```

# /etc/conf.d/wireless:

# Global wireless config file for net.* rc-scripts

##############################################################################

# IMPORTANT

# linux-wlan-ng is not supported as they have their own configuration program

# ensure that /etc/conf.d/net has the entry "!iwconfig" in it's modules line

# Try and use an alternative driver if you need to use this - hostap-driver

# supports non-usb linux-wlan-ng driven devices

##############################################################################

##############################################################################

# HINTS

##############################################################################

# Remember to change eth0 to your wireless interface which may be

# eth0, eth1, wlan0, ath0 - you get the idea. If you're not sure

# you can type "iwconfig" at the command prompt and it will tell you which

# interfaces are wireless.

# Say that your wireless interface is ath0 - the line

#      #essid_eth0="any"

# becomes

#      #essid_ath0="any"

#

# Remember to change ESSID to your ESSID.

# Say that your ESSID is My NET - the line

#      #key_ESSID="s:passkey"

# becomes

#      #key_My_NET="s:passkey"

# Notice that the space has changed to an underscore - do the same with all

# characters not in a-z A-Z (english alphabet) 0-9. This only applies to

# variables and not values.

#

# Any ESSID's in values like essid_eth0="My NET" may need to be escaped

# This means placing the character \ before the character

# \" need to be escaped for example

# So if your ESSID is

#      My "\ NET

# it becomes

#      My \"\\ NET

# for example

#      #essid_eth0="My\"\\NET"

#

# So using the above we can use

#      #dns_domain_My____NET="My\"\\NET"

# which is an invalid dns domain, but shows the how to use the variable

# structure

#

# As a final note, most users will just need to set the following options

# key_ESSID1="s:yourkeyhere enc open" # s: means a text key

# key_ESSID2="aaaa-bbbb-cccc-dd"      # no s: means a hex key

# preferred_aps=( "ESSID1" "ESSID2" )

#

# Clear? Good. Now configure your wireless network below

#########################################################

##############################################################################

# SETTINGS

##############################################################################

# Hard code an ESSID to an interface - leave this unset if you wish the driver

# to scan for available Access Points

# Set to "any" to connect to any ESSID - the driver picks an Access Point

# This needs to be done when the driver doesn't support scanning

# This may work for drivers that don't support scanning but you need automatic

# AP association

# I would only set this as a last resort really - use the preferred_aps

# setting at the bottom of this file

# However, using ad-hoc (without scanning for APs) and master mode

# do require the ESSID to be set - do this here

#essid_eth0="any"

# Set the mode of the interface (managed, ad-hoc, master or auto)

# The default is auto

# If it's ad-hoc or master you also may need to specify the channel below

#mode_eth0="auto"

# If managed mode fails, drop to ad-hoc mode with the below ESSID?

#adhoc_essid_eth0="WLAN"

#Channel can be set (1-14), but defaults to 3 if not set.

#

# The below is taken verbatim from the BSD wavelan documentation found at

# http://www.netbsd.org/Documentation/network/wavelan.html

# There are 14 channels possible; We are told that channels 1-11 are legal for

# North America, channels 1-13 for most of Europe, channels 10-13 for France,

# and only channel 14 for Japan. If in doubt, please refer to the documentation

# that came with your card or access point. Make sure that the channel you

# select is the same channel your access point (or the other card in an ad-hoc

# network) is on. The default for cards sold in North America and most of Europe

# is 3; the default for cards sold in France is 11, and the default for cards

# sold in Japan is 14.

#channel_eth0="3"

# Setup any other config commands. This is basically the iwconfig argument

# without the iwconfig $iface

#iwconfig_eth0=""

# Set private driver ioctls. This is basically the iwpriv argument without

# the iwpriv $iface

#iwpriv_eth0=""

# Seconds to wait before scanning

# Some drivers need to wait until they have finished "loading"

# before they can scan - otherwise they error and claim that they cannot scan

# or resource is unavailable. The default is to wait zero seconds

#sleep_scan_eth0="1"

# Seconds to wait until associated. The default is to wait 10 seconds

#sleep_associate_eth0="5"

# By default a successful association in Managed mode sets the MAC

# address of the AP connected to. However, some drivers (namely

# the ipw2100) don't set an invalid MAC address when association

# fails - so we need to check on link quality which some drivers

# don't report properly either.

# So if you have connection problems try flipping this setting

# Valid options are MAC, quality and all - defaults to MAC

#associate_test_eth0="MAC"

# Some driver/card combinations need to scan in Ad-Hoc mode

# After scanning, the mode is reset to the one defined above

#scan_mode_eth0="Ad-Hoc"

# Below you can define private ioctls to run before and after scanning

# Format is the same as the iwpriv_eth0 above

# This is needed for the HostAP drivers

#iwpriv_scan_pre_eth0="host_roaming 2"

#iwpriv_scan_post_eth0="host_roaming 0"

# Define a WEP key per ESSID or MAC address (of the AP, not your card)

# The encryption type (open or restricted) must match the

# encryption type on the Access Point

# You can't use "any" for an ESSID here

#key_ESSID="1234-1234-1234-1234-1234-1234-56"

# or you can use strings. Passphrase IS NOT supported

# To use a string, prefix it with s:

# Note - this example also sets the encryption method to open

# which is regarded as more secure than restricted

#key_ESSID="s:foobar enc open"

#key_ESSID="s:foobar enc restricted"

# If you have whitespace in your key, here's how to set it and use other

# commands like using open encryption.

#key_ESSID="s:'foo bar' enc open"

# WEP key for the AP with MAC address 001122334455

#mac_key_001122334455="s:foobar"

# Here are some more examples of keys as some users find others work

# and some don't where they should all do the same thing

#key_ESSID="open s:foobar"

#key_ESSID="open 1234-5678-9012"

#key_ESSID="s:foobar enc open"

#key_ESSID="1234-5678-9012 enc open"

# You may want to set muliple keys - here's an example

# It sets 4 keys on the card and instructs to use key 2 by default

#key_ESSID="[1] s:passkey1 key [2] s:passkey2 key [3] s:passkey3 key [4] s:passkey4 key [2]"

# You can also override the interface settings found in /etc/conf.d/net

# per ESSID - which is very handy if you use different networks a lot

#config_ESSID=( "dhcp" )

#dhcpcd_ESSID="-t 5"

#routes_ESSID=()

#fallback_ESSID=()

# Setting name/domain server causes /etc/resolv.conf to be overwritten

# Note that if DHCP is used, and you want this to take precedence then

# please put -R in your dhcpcd options

#dns_servers_ESSID=( "192.168.0.1" "192.168.0.2" )

#dns_domain_ESSID="some.domain"

#dns_search_domains_ESSID="search.this.domain search.that.domain"

# Please check the man page for resolv.conf for more information

# as domain and search (searchdomains) are mutually exclusive and

# searchdomains takes precedence

# You can also set any of the /etc/conf.d/net variables per MAC address

# incase you use Access Points with the same ESSID but need different

# networking configs. Below is an example - of course you use the same

# method with other variables

#mac_config_001122334455=( "dhcp" )

#mac_dhcpcd_001122334455="-t 10"

#mac_dns_servers_001122334455=( "192.168.0.1" "192.168.0.2" )

# Map a MAC address to an ESSID

# This is used when the Access Point is not broadcasting it's ESSID

# WARNING: This will override the ESSID being broadcast due to some

# Access Points sending an ESSID even when they have been configured

# not too!

# Change 001122334455 to the MAC address and ESSID to the ESSID

# it should map to

#mac_essid_001122334455="ESSID"

# This lists the preferred ESSIDs to connect to in order

# ESSID's can contain any characters here as they must match the broadcast

# ESSID exactly.

# Surround each ESSID with the " character and seperate them with a space

# If the first ESSID isn't found then it moves onto the next

# If this isn't defined then it connects to the first one found

#preferred_aps=( "ESSID 1" "ESSID 2" )

# You can also define a preferred_aps list per interface

#preferred_aps_eth0=( "ESSID 3" "ESSID 4" )

# You can also say whether we only connect to preferred APs or not

# Values are "any", "preferredonly", "forcepreferred", "forcepreferredonly" and "forceany"

# "any" means it will connect to visible APs in the preferred list and then any

# other available AP

# "preferredonly" means it will only connect to visible APs in the preferred list

# "forcepreferred" means it will forceably connect to APs in order if it does not find

# them in a scan

# "forcepreferredonly" means it forceably connects to the APs in order and does not bother

# to scan

# "forceany" does the same as forcepreferred + connects to any other available AP

# Default is "any"

#associate_order="any"

#associate_order_eth0="any"

# You can define blacklisted Access Points in the same way

#blacklist_aps=( "ESSID 1" "ESSID 2" )

#blacklist_aps_eth0=( "ESSID 3" ESSID 4" )

# If you have more than one wireless card, you can say if you want

# to allow each card to associate with the same Access Point or not

# Values are "yes" and "no"

# Default is "yes"

#unique_ap="yes"

#unique_ap_eth0="yes"

# IMPORTANT: preferred_only, blacklisted_aps and unique_ap only work when

# essid_eth0 is not set and your card is capable of scanning

# NOTE: preferred_aps  list ignores blacklisted_aps - so if you have

# the same ESSID in both, well, you're a bit silly :p

##############################################################################

# ADVANCED CONFIGURATION

# 

# Two functions can be defined which will be called surrounding the

# associate function.  The functions are called with the interface

# name first so that one function can control multiple adapters.

#

# The return values for the preassociate function should be 0

# (success) to indicate that configuration or deconfiguration of the

# interface can continue.  If preassociate returns a non-zero value, then

# interface configuration will be aborted.

#

# The return value for the postassociate function is ignored

# since there's nothing to do if it indicates failure.

#preassociate() {

#   # The below adds two configuration variables leap_user_ESSID

#   # and leap_pass_ESSID. When they are both confiugred for the ESSID

#   # being connected to then we run the CISCO LEAP script

#

#   local user pass

#   eval user=\"\$\{leap_user_${ESSIDVAR}\}\"

#   eval pass=\"\$\{leap_pass_${ESSIDVAR}\}\"

#

#   if [[ -n ${user} && -n ${pass} ]]; then

#      if [[ ! -x /opt/cisco/bin/leapscript ]]; then

#         eend "For LEAP support, please emerge net-misc/cisco-aironet-client-utils"

#         return 1

#      fi

#      einfo "Waiting for LEAP Authentication on \"${ESSID//\\\\//}\""

#      if /opt/cisco/bin/leapscript ${user} ${pass} | grep -q 'Login incorrect'; then

#         ewarn "Login Failed for ${user}"

#         return 1

#      fi

#   fi

#

#   return 0

#}

#postassociate() {

#   # This function is mostly here for completeness... I haven't

#   # thought of anything nifty to do with it yet ;-)

#   # Return 0 always

#   return 0

#}

```

Also please double check that your /etc/init.d/net.YOUR_EXTENTION is symlinked to /etc/init.d/net.lo ... just to presolve any problems with the config not working...

I again wish you good luck  :Smile: 

----------

## Il turisto

Thanks for the luck.

This time it work.

I have emerged again all the things and now I have the wireless example.

So I will read it for configure my wifi.

Thanks again

----------

## jakubc

Glad I could help, and hope it works... if it does don't forget to add a [solved] to the title:-)

----------

## Il turisto

Yes it works thank you.

----------

