# iwconfig says 3com pccard wlan nic "NOT READY"

## daniel_cello

Dear friends,

I'm trying to figure out if it is my 3com officeconnect accesspoint or my Intel IPW2200 that is dropping the connection during heavy traffic (like copying a big file, for instance).

In order to do that I think I need to have two wlan nics running, right? One generating the normal traffic and the other one doing the logging (I was thinking of using kismet to capture and ethereal to analyze.) Anyhow I haven't been able to capture data in promiscous mode on the intel wlan nic.

Since I only have one computer with wlan capability (a HP/compaq nx7000 laptop) I am trying to have both the mini-pci and the pcmcia wlan nics running at the same time.

I have migrated from kernel-2.6.14-gentoo-r4 to kernel-2.6.15-gentoo-r1 to try and use the built in support for prism54 (my pcmcia nic is a 3com officeconnect 3crwe154g72 version 1.0, which should require the prism54 driver.) I have installed hotplug (it used to load the firmware of my ipw2200) and the 2.5.2.0.arm firmware that was generated from 3com drivers. Both ipw2200 and prism54 are compiled as modules and I am able to use the ipw nic. I didn't feel like installing prism54 drivers through make (as described in a prism54 howto) when I have the great ebuild system of gentoo. I saw somewhere that in kernel 2.6.15 the support for prism54 was good.

lsmod shows that the modules have loaded:

```

Module                  Size  Used by

ieee80211_crypt_tkip     8488  -

ieee80211_crypt_ccmp     5576  -

ieee80211_crypt_wep     3432  -

prism54                46352  -

i82092                  9428  -

rsrc_nonstatic         10184  -

pcmcia                 28812  -

pcmcia_core            32128  -

ipw2200                90868  -

ieee80211              26664  -

ieee80211_crypt         4328  -

```

But there are only the wired and the intel ipw nics defined when I do # ifconfig -a (and lo0 and a couple of tunnel nics for vpn use)

Nothing is printed in /var/log/messages when I insert or remove the card. Am I looking at the wrong file?

I have symlinked /etc/init.d/net.lo0 to /etc/init.d/net.eth2, but when I try to manually start eth2 it complains about no such interface. (I have added it in my /etc/conf.d/net file)

I am not 100% sure that I have the right PCMCIA bridge module (i82092), but it doesn't object when loaded manually through modprobe.

I should be able to solve this on my own, but I have spent an entire day trying to get this to work and am getting tired of it not working.

Anyone willing to push me in the right direction?

Thanks,

         /DanielLast edited by daniel_cello on Wed May 10, 2006 5:35 am; edited 2 times in total

----------

## daniel_cello

I should add that I have emerged pcmciautils and not pcmcia-cs.      

I also noticed that it must have been a while since I synced the portage tree. My reason to use kernel version 2.6.15-gentoo-r1 was simply because it was on my laptop and more recent than the 2.6.14-gentoo-r4 that I had been using. I have now done "emerge --sync" and found out that gentoo-sources is currently at 2.6.16-gentoo-r3. I will see if that will help any.

One more change is that whereas I was not previously using kernel level support for 802.11 due to wpa-supplicant (I think) not wanting it I now had to turn it on in order for prism54 and ipw2200 kernel support to be available.

Cheers,

/Daniel

----------

## daniel_cello

Update:

It was the ipw2200 e-build that needed 802.11 support disabled in the kernel - not wpa-supplicant.

Now that I am successfully using kernel support for ipw2200 I could unmerge ipw2200 and thus get 802.11 support back in the kernel. The ipw2200 is once again working like a charm. This time under 2.6.16.

The kernel 2.6.16-gentoo-r3 is functioning like 2.6.14-gentoo-r4, but still no pcmcia, i e the kernel upgrade didn't solve the problem.   :Evil or Very Mad: 

I'm still hoping that someone will be able to help me solve this. It would be greatly appreciated!

A summary is:

My pcmcia subsystem is not working (I think). I get no printout to /var/log/messages when I insert or remove the card.

There is not a network interface matching my 3com pcmcia card. This is probably because of pcmcia not working.

However, my only reason for wanting this to work is to be able to capture my own wlan packets, so if anyone can help me solve that problem I could happily ignore this one  :Wink:  . (see https://forums.gentoo.org/viewtopic-t-458836-start-0-postdays-0-postorder-asc-highlight-.html for a description of my problem!)

Cheers,

  /Daniel

----------

## NeddySeagoon

daniel_cello,

At the moment, your kernel is missing module unloading support, which is very useful for trying module parameters and various modules since it saves rebooting.

Are you sure you really have PCMCIA and not Cardbus?

Cardbus is a 32 bit PCI like bus that is backwards compatible with 16 bit PCMCIA cards. While you can fit a cardbus card into a PCMCIA slot, it won't work. Since it all works in windows, we will assume that you actually have a Cardbus (32 bit setup).

Your lsmod does not include Yenta, which is the cardbus kernel module, you may however, have it built in.

Check your kernel setup and rebuild to include Yenta, (a module is ok) and modukle unloading support. Then we will get Used by numbers.

----------

## daniel_cello

Thank you for your input Neddy, it is very much appreciated!   :Very Happy:  Not the least since this thread has been awfully silent.

I think you may be right about the pcmcia/cardbus mixup. My laptop is from around 2003 with an intel centrino chipset (from when centrino was new). I don't know if that helps establish anything. I am currently compiling a new kernel with support for module unloading and yenta. If you have any suggestions for what to try when I have rebooted with the new kernel, please let me know!

Even before your post I have tried loading yenta as a mod, but that didn't help.

See you soon! (After a reboot)

           /Daniel

----------

## daniel_cello

I'm back with a brand new kernel...   :Wink: 

My lsmod now looks like this:

```

Module                  Size  Used by

ieee80211_crypt_tkip     8896  0

ieee80211_crypt_ccmp     5888  0

ieee80211_crypt_wep     3776  0

prism54                47176  0

yenta_socket           21708  2

rsrc_nonstatic         10496  1 yenta_socket

pcmcia                 29356  0

pcmcia_core            33944  3 yenta_socket,rsrc_nonstatic,pcmcia

ipw2200               101356  0

ieee80211              26376  1 ipw2200

ieee80211_crypt         4736  4 ieee80211_crypt_tkip,ieee80211_crypt_ccmp,ieee80211_crypt_wep,ieee80211

```

I took the liberty of replacing the old driver with yenta_socket in /etc/modules.autoload.d/kernel-2.6

So, how do I use this kernel to get me any closer to having the 3com pccard wlan adapter working?

Cheers,

    /Daniel

PS. Does pccard require a cardbus-equipped computer to function? In that case I do have cardbus and not pcmcia.

----------

## daniel_cello

Wait... There is more! 

ifconfig -a shows a new interface!!!!!

The strange thing is the mac-address is not matching the one of the card...

iwconfig eth2 show this:

```

eth2      NOT READY!  ESSID:off/any

          Mode:Managed  Channel:0  Access Point: Not-Associated

          Tx-Power=31 dBm   Sensitivity=0/200

          Retry min limit:0   RTS thr=0 B   Fragment thr=0 B

          Encryption key: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

```

The card is inserted and the prism54 module is loaded. I have copied firmware to /lib/firmware.

Anyway it is great to finally have some progress!

Thanks alot!   :Very Happy: 

----------

## daniel_cello

I also should add that the green lights on the wlan pccard do not come on.

When I remove and reinsert the card I get the appropriate logs to /var/logs/messages and the interface 

disappears and reappears.

There is a lot more functionality now, than just an hour ago!

Cheers!

----------

## NeddySeagoon

daniel_cello,

Firstly, pccards must have a cardbus equipped computer to function - so we have established that you do indeed have cardbus and not PCMCIA.

Your lsmod looks much better now too

What wlan adaptors do you have ?

You mention a 3com pccard wlan adapter and the Intel centrino has iwp2000 one built in.

Please remove your plug in wireless card, run lspci and post the output. I would expect to see a WiFi interface there.

Now plug in your pccard and repeat. I think you will find you have two WiFi interfaces. This may well account for the confusion, and many of your difficulties.

----------

## daniel_cello

Yes, I do have two wlan adapters, and that is the reason for this whole exercise.

What I am trying to do is to establish why the ipw2200 card loses connection with my AP as soon as I put some load on it.

I want to use the ipw2200 interface as usual and capture the traffic during a disconnect by using the 3com interface for later analysis.

The lspci command does list the one and two wlan nics respectively with the 3com card out and in.

Is it difficult to have support for two wlan nics in the same computer? Windows manages it without complaining.

Anyways, thanks for finally giving me some momentum!

         /Daniel

----------

## NeddySeagoon

daniel_cello,

No, its not difficult, you just go throgh the setup process twice, once for each interface.

The difficult part is keeping it seperate in your head.

Choose one WiFi adaptor and make it work. Remove its kernel module and make a copy of its setup somewhere safe. Remove the setup from /etc/conf.d/ too

Now make the other card work on its own.

With each card working alone, combine the setups in /etc/conf.d/, load both kernel modules and trhey should both work.

Its like any problem, reduce it to a larger number of smaller problems until you can solve all the smaller ones on their own.

----------

## daniel_cello

Fine!

I'm not sure if I need to set up the 3com interface all the way, since I will be using it to capture, and thus do not need to associate with my AP. (essid, wep-key etc.)

I will look at it later on, since I'm off to get some sleep now.

Thank you for helping me so far! I normally should be able to solve problems like these, since I have been working with computers since before the first ibm PC was made, but the missing interface had me a little confused and I had tried every idea I could (both my own and things I found on the net). But I think I'm on the right track again now.

Cheers,

         /Daniel

----------

## NeddySeagoon

daniel_cello,

You need to set the second interface up all the way because you have no other way of testing.

If you try to capture packets and it fails, you will have no idea why.

I started with computers well before IBM got into the PC market too.

----------

## daniel_cello

New update:

When I make eth1 become eth2 and vice versa without any other reconfig I still get a connection to my wlan on the ipw2200 nic. The same nic as before. That leads me to think the problem with the 3com may be related to firmware loading. i.e. If the problem were that eth2 was not properly configured for a wlan connection, then that would still be a problem when the ipw2200 became eth2, whereas 3com would be able to function as soon as it got relocated from eth2 to eth1. Would you agree with my analysis?

This was just a quick run. I'll see what I can make of it once I start a little earlier in the evening. Now it's back to bed, once again.

Cheers,

           /Daniel

----------

## NeddySeagoon

daniel_cello,

With the firmware not loaded, I would be surprised if ifconfig -a shows the interface at all.

Rename/move the firmware file so it can't load to test.

----------

## daniel_cello

Hmmm...

I renamed the firmware file so it could not be found, but no change! 

The interface still is there whenever the card is plugged in and iwconfig still says "not ready" about the interface. The fact that the MAC address still is wrong could indicate that the firmware is used to extract the true mac address.

Just to make sure: The firmware should be in /lib/firmware shouldn't it? That is where I have the ipw firmware, and that works as it should.

I don't think I needed to configure the hotplug to load the ipw firmware and for prism54 the name isl3890 is hardcoded in the driver code.

I'm using wpa_supplicant -D wext for the prism54-based 3com nic. That should be right, shouldn't it, considering I have kernel support?

btw, NeddySeagoon, since the cardbus is working now, maybe you could move this post to the network & security forum? I am changing the subject to reflect the current problem.

Cheers!

edits: added the -D wext question

----------

## NeddySeagoon

Moved from Kernel & Hardware to Networking & Security.

by NeddySeagoon in response to titile change and request from OP.

You should probably have started a new thread.

----------

