linksys WAG56G Access Point not reachable via NDIS/WUSB54G adapter
Hiya all,
Spec is suse 9.3 kernel 2.6.11.4-20a-default, ndiswrapper-1.4rc1, xp adapter driver WUSB54Gv4_20050321(driver name rt2500usb), Wireless usb network adapter Linksys WUSB54Gv4. WAG54G Wireless Router / access point. The config *appears* ok (correct me if i'm wrong..) :confused: , and I think (?) the adapter can get the broadcast ESSID, but it just can't connect to it. To keep things simple, there is not security on the WAG54G. I also know the xp network driver and usb adapter hardware work perfectly together - got them going in winblows in 1 minute flat, talking perfectly to the WAG54G. Trace as below. Other things I have tried: a) other ndiswrappers (1.2, 1.4rc3), but they go into a nasty loop when attempting the modprobe. b) gazing pensively into the mid-distance in strokey-beard stylee for many hours c) ramming my head against a brick wall at high velocity Any ideas please ? I'm almost there.. I can feel it in my bones. Those that aren't smashed to pieces from c) above, that is. Thanks in advance, (advanced geek-speak below..) ---------------------------------------------------------------------- Code:
# ndiswrapper -l So, iwlist succeeds in getting the ESSID of the access point 'linksys', but iwconfig then reports all '0's for the address, and a susbsequent ping to this site fails (boo-hisss...). I have set the ESSID to 'any' (rather than the real essid) to prove that iwscan is indeed picking up the correct id from the network... which it is. |
Quote:
dhclient wlan0 It also may use dhcpcd, in which case the command would be dhcpcd wlan0 Setting a static IP is a touch more complicated, but basically you set the IP address with ifconfig, and then you need to set a gateway (your router essentially) using the route command. By the way, of the other approaches you've tried, I'd try to cut back on C unless you own stock in pain relief companies. |
Hangdog - many thanks for taking the time to reply :-). I have now (using yast) explicitly set the ESSID 'linksys' , and now iwconfig shows the new value 'linksys'. However, the Access Point address still showing zeros (is this normal !?)...
sit0 no wireless extensions. eth0 no wireless extensions. Warning: Driver for device wlan0 recommend version 18 of Wireless Extension, but has been compiled with version 17, therefore some driver features may not be available... wlan0 IEEE 802.11g ESSID:"linksys" Nickname:"linux" Mode:Auto Frequency:2.462 GHz Access Point: 00:00:00:00:00:00 Bit Rate=11 Mb/s Tx-Power:20 dBm Sensitivity=-121 dBm RTS thr=2347 B Fragment thr=2346 B Encryption key:off Power Management:off Link Quality:100/100 Signal level:-34 dBm Noise level:-256 dBm Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:0 Missed beacon:0 iwlist is still sure something is out there though.. # iwlist wlan0 scanning Warning: Driver for device wlan0 recommend version 18 of Wireless Extension, but has been compiled with version 17, therefore some driver features may not be available... wlan0 Scan completed : Cell 01 - Address: 00:13:10:0C:8F:81 ESSID:"linksys" Protocol:IEEE 802.11g Mode:Managed Frequency:2.462 GHz (Channel 11) Quality:0/100 Signal level:-34 dBm Noise level:-256 dBm Encryption key:off Bit Rate:1 Mb/s Bit Rate:2 Mb/s Bit Rate:5.5 Mb/s Bit Rate:11 Mb/s Bit Rate:6 Mb/s Bit Rate:9 Mb/s Bit Rate:12 Mb/s Bit Rate:18 Mb/s Bit Rate:24 Mb/s Bit Rate:36 Mb/s Bit Rate:48 Mb/s Bit Rate:54 Mb/s Extra:bcn_int=100 Extra:atim=0 Having configured the yast wireless to tell it that for this device, get the IP from a dhcp server, ifup seems to start a dhcp client automatically for me, which then gets bored as it can't get one. #ifup wlan0 wlan0 wlan0 configuration: wlan-bus-usb wlan0 warning: using NO encryption Starting DHCP Client Daemon on wlan0... . . . . . no IP address yet... backgrounding. Finally, the messages log is showing some interested ndiswrapper messages, not sure if these are relevant or not. They appear one every few seconds. i've googled them and come up with nothing at all. Oct 2 16:05:48 linux kernel: ndiswrapper (NdisAllocateBuffer:1079): pool d1be1be0 is full: 253(36) Oct 2 16:05:48 linux kernel: ndiswrapper (NdisAllocatePacket:1303): pool d1be1c00 is full: 253(33) Oct 2 16:05:48 linux kernel: ndiswrapper (NdisAllocateBuffer:1079): pool d1be1be0 is full: 254(36) Oct 2 16:05:48 linux kernel: ndiswrapper (NdisAllocatePacket:1303): pool d1be1c00 is full: 254(33) Oct 2 16:05:48 linux kernel: ndiswrapper (NdisAllocateBuffer:1079): pool d1be1be0 is full: 255(36) Oct 2 16:05:48 linux kernel: ndiswrapper (NdisAllocatePacket:1303): pool d1be1c00 is full: 255(33) Oct 2 16:05:49 linux kernel: ndiswrapper (NdisAllocateBuffer:1079): pool d1be1be0 is full: 256(36) Oct 2 16:05:49 linux kernel: ndiswrapper (NdisAllocatePacket:1303): pool d1be1c00 is full: 256(33) Oct 2 16:05:52 linux kernel: ndiswrapper (NdisAllocateBuffer:1079): pool d1be1be0 is full: 257(36) Oct 2 16:05:52 linux kernel: ndiswrapper (NdisAllocatePacket:1303): pool d1be1c00 is full: 257(33) Oct 2 16:05:53 linux kernel: ndiswrapper (NdisAllocateBuffer:1079): pool d1be1be0 is full: 258(36) Oct 2 16:05:53 linux kernel: ndiswrapper (NdisAllocatePacket:1303): pool d1be1c00 is full: 258(33) Oct 2 16:05:55 linux kernel: ndiswrapper (NdisAllocateBuffer:1079): pool d1be1be0 is full: 259(36) Oct 2 16:05:55 linux kernel: ndiswrapper (NdisAllocatePacket:1303): pool d1be1c00 is full: 259(33) Oct 2 16:05:57 linux kernel: ndiswrapper (NdisAllocateBuffer:1079): pool d1be1be0 is full: 260(36) Oct 2 16:05:57 linux kernel: ndiswrapper (NdisAllocatePacket:1303): pool d1be1c00 is full: 260(33) Oct 2 16:05:58 linux kernel: wlan0: no IPv6 routers present Oct 2 16:06:00 linux kernel: ndiswrapper (NdisAllocateBuffer:1079): pool d1be1be0 is full: 261(36) Oct 2 16:06:00 linux kernel: ndiswrapper (NdisAllocatePacket:1303): pool d1be1c00 is full: 261(33) Oct 2 16:06:16 linux kernel: ndiswrapper (NdisAllocateBuffer:1079): pool d1be1be0 is full: 262(36) Oct 2 16:06:16 linux kernel: ndiswrapper (NdisAllocatePacket:1303): pool d1be1c00 is full: 262(33) Any further thoughts please ? |
Quote:
I'm also going to suggest that for now, you don't use Yast. Graphical front-ends like Yast can cover up valuable information. From a console, su to root and try to set the SSID with iwconfig. You also might try switching to mode from Auto to Managed (also done using iwconfig). Sometimes (and I haven't really figured out why) trying to set the SSID a few times in a row fails at first, but then sets it. You might try issuing the command 2 or 3 times and see if that gets it to pick up the access point. By the way, I'm assuming you're not running WEP encryption on the access point. Is that true or do we need to set a WEP key? I'm also going to suggest that you use an older version of ndiswrapper. My personal opinion is that the last couple of rc versions have caused more problems than they have solved. I'd start with 1.2 and see if that works better. If you do this, make sure you uninstall the rc version before installing the older version. I believe make uninstall works for ndiswrapper (at least after 1.0 or 1.1), but there are also uninstall instructions on the ndiswrapper wiki (see my sig for the link). |
Excellent - many thanks. I'll plough through that lot now.
|
I tried bypassing yast and doing it from the command line (using iwconfig to set SSID and mode), multiple times to get it to 'hook in', but to no avail.
I did a full deinstall as per ndis wiki site, then installed ndis1.2. This fails at an earler stage. I am able to register the driver successfully, but modprobe goes into an infinite loop spewing out messages like these at 3 per second. Oct 2 18:08:30 linux kernel: ndiswrapper: unsupported module, tainting kernel. Oct 2 18:08:30 linux kernel: ndiswrapper version 1.2 loaded (preempt=no,smp=no) Oct 2 18:08:30 linux kernel: ndiswrapper: driver rt2500usb (Linksys,01/07/2005, 2.00.00.0000) loaded Oct 2 18:08:30 linux kernel: usb 3-5: reset high speed USB device using ehci_hcd and address 2 Oct 2 18:08:31 linux kernel: usb 3-5: reset high speed USB device using ehci_hcd and address 2 Oct 2 18:08:31 linux kernel: usb 3-5: reset high speed USB device using ehci_hcd and address 2 Oct 2 18:08:31 linux kernel: usb 3-5: reset high speed USB device using ehci_hcd and address 2 .. .. It such a shame that device vendors (are you listening cisco/linksys?) do not support their drivers natively on linux, and we have to resort to a quite ingenious re-purposing of existing windows drivers (dnis is very clever, lets face it), but whose configuration is bordering on witchcraft, unfortunately, especially if it doesnt work 'straight away'. I've spent a week trying to get wlan working, ended up upgrading to suse 9.3, then get it *almost* working. About to give up, and run a long cable around the house instead ;-) Any final ideas please? Thanks. |
Quote:
Quote:
Quote:
|
Nice one hangdog! It finally works! Many thanks for your time and effort,
For newbies sake (like me), it's nice to have everything in one place. So once I've got it working automatically on bootup, I'll post the download/configuration process for my config, in it's entirety, as a reply to this thread. Thanks again hangdog. Excellent. |
As mentioned above, here are the specifics of the specific config not covered in Linux Questions NDIS Wrapper , which is a good starting point.
>> Obtaining the win xp wireless driver ndis wiki card list shows my best candidates is: Quote:
Note: v4 of this adapter using a different chipset to v1 and v2. These instructions are for WUSB54Gv4 only! (check your adapter model..) >> Obtaining the v1.2 ndiswrapper Download from somewhere and drop in a dir you create eg. /usr/local/src/ndis1_2. ndis wiki page only seems to have newer versions.. which I (and others) have had problems with. So we're going with 1.2, which works in our config. NDISWrapper Installation as per above link. >> Registering the driver with ndiswrapper Code:
# ndiswrapper -l Code:
# ndiswrapper -i rt2500usb.inf Code:
#ndiswrapper -l Code:
Oct 3 11:52:17 linux kernel: usb 3-5: new high speed USB device using ehci_hcd and address 3 Code:
# ndiswrapper -l Code:
# modprobe -r ehci-hcd Code:
Oct 3 11:54:05 linux kernel: ndiswrapper: unsupported module, tainting kernel.
The 'Link' light should start blinking now ie. everything should be working. iwconfig will show the newly configured access point now has non-zero mac address, and the ESSID: and Mode: match our config parameters above Code:
# iwconfig wlan0 Code:
# ping 192.168.1.1 Code:
# wget linuxquestions.org Code:
# ndiswrapper -m Code:
# modprobe -r ehci-hcd Code:
#! /bin/sh After doing the above, reboot, dive into a browser and all should be working straight off without typing any further commands. ie it should just 'work'. Bootup log shows nice startup Setting up network interfaces: Code:
lo |
That is one truly excellent how-to. You know you might want to put a summary of this, or a link to this post, in the HCL and/or the ndiswrapper link you gave. A description like this is worth its weight in gold to someone struggling with this wireless rig so making it available in a few places is a good idea.
One minor suggestions is that you may want to investigate how Suse loads modules on system boot. In Slackware there is a start up script that loads them and can be customized. If you could load the usb-hcd module with the proper flags from the get-go it would save you a step in your script. The only reason I suggest that is that some kernels haven't enabled module removal (don't ask me why, but the option is there) in which case your procedure is going to run into trouble. But as I said, it is a very minor suggestion. Congrats! <edit> One more thing, old ndiswrapper versions are available at the ndiswrapper sourceforge site. You just need to click on the "Show all files" link to see it. For reasons that escape me, the ndiswrapper crew insists on hiding the older versions. </edit> |
All times are GMT -5. The time now is 09:06 AM. |