Saturday, July 08, 2006

I went off to the computer fair, to buy some memory for my Jornada.

There was stacks of fake memory sticks there.

I didn't see any fake SanDisk stuff, in fact I only saw one place with SanDisk stuff.

I wanted a 2GB CF Ultra II, but they didn't have any, only 1GB. They had 2 GB, but not Ultra II.

I couldn't find anyone else with SanDisk stuff, so I decided to get the 1 GB Ultra II. I looked at the packet carefully, noticed that it had the hologram on the box, and even though the card was in the pack upside down, the protective case didn't look like the one I'd seen fake ones in, and the sticker on the card had rounded corners.

I paid for it, and before leaving the table, I checked the manual in the box, it was the proper booklet with staples in it, not a folded photocopy. I moved away, took the card out, and checked the serial number, it looked legit, and it has the country it was made printed on it too.

I couldn't get a memory stick, they were all fake, except for one, which was only 512, and they wanted $72 for.

I also bought a usb wireless adapter for the machine I keep in the garage, so I won't have to drag cat5 over the balcony all the time, I got a CR2032 battery for the Jornada, and I got a PATA -> SATA adapter, to try to get a SATA disk working in a tivo.

I decided to test the usb wireless adapter in my laptop, even though I don't need it to work. It's a Dlink DWL-G122, which I've had working on my laptop before.

I plugged it in, and got:
[7275503.493000] usb 5-1: new high speed USB device using ehci_hcd and address 22

and nothing else.

The other one was version B1 though, and this is version C1, and the chipset has been changed.

I found this page which I used before, when I got the B1 version working.

I found references to the C1 version being based on the RT73 chipset (here). I went to the RA Link Tech support page but found no references to RT73 drivers.

I found people providing links to the drivers directly, but they resulted in a 404.

I googled around a bit more, found a cache of the page, and the RT73 was referred to with (RT2571W) following it.

On the current page, there's reference to "RT2571W/RT2671" and the link is to this file

I downloaded that, compiled it, copied the firmware and config file to the appropriate location, and inserted the kernel module.

Dmesg said:
[7278672.174000] rtusb init ====>
[7278672.175000] usbcore: registered new driver rt73

and nothing else.

No interface (rausb0) appeared.

I found this page where the guy has the same problem.

I also found this blog with the same deal, but this guy's got a Linksys device.

Apparently the reference drivers from RA Link Tech don't know about the USB device IDs attached to the adapter.

I used lsusb, and got:
Bus 005 Device 023: ID 07d1:3c03 D-Link System

confirming the same IDs.

I edited the rtmp_def.h file, but it's changed from the style both pages above referenced.

I added the following line:
{USB_DEVICE(0x07d1,0x3c03)}, /* Dlink */ \

right near the end of the file (before the end marker line)

I recompiled the driver/module, removed the old one, and inserted the new one.

Dmesg said:

[7279568.294000] rtusb init ====>
[7279568.296000] idVendor = 0x7d1, idProduct = 0x3c03
[7279568.297000] usbcore: registered new driver rt73
[7279599.257000] rt73 driver version - 1.0.3.6
[7279610.391000] rausb0: no IPv6 routers present


I then did "sudo ifconfig", but there was no sign of rausb0. I tried "sudo ifconfig rausb0":
rausb0    Link encap:Ethernet  HWaddr 00:00:00:00:00:00
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)


Ok, looking good. I tried "sudo iwconfig rausb0":
rausb0    RT73 WLAN  ESSID:""
Mode:Auto Frequency=1 MHz Bit Rate=54 Mb/s
RTS thr:off Fragment thr:off
Encryption key:off
Link Quality=0/100 Signal level:-121 dBm Noise level:-115 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0


Good. "sudo iwconfig rausb0 essid any", "sudo iwconfig rausb0":
rausb0    RT73 WLAN  ESSID:"squigley.net"
Mode:Managed Channel=6 Access Point: 00:13:10:92:27:FD
Bit Rate=54 Mb/s
RTS thr:off Fragment thr:off
Encryption key:off
Link Quality=91/100 Signal level:-48 dBm Noise level:-79 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0


Connected, link light on device is on, all working.

3 Comments:

Anonymous Anonymous said...

You have written:

"I recompiled the driver/module, removed the old one, and inserted the new one."

How exactly did you do that? I have done

sudo rmmod rt73.ko

and then

sudo insmod rt73.ko

and absolutely no new messages show up in /var/log/dmesg, though

usbcore: deregistering driver rt73
<==== rtusb exit

and

rtusb init ====>
usbcore: registered new driver rt73

show up in /var/log/syslog.


I ask because I have done all the other step you mention, but get nothing from

iwconfig rausb0 essid any


So your blog has got me wondering if the lack of messages is indicative of the reason why iwconfig is so unresponsive.


Thanks,

Grugs.

3:46 pm  
Blogger Simon Quigley said...

Hmm, I'm not sure then. If you put the config file and the firmware in the right place, and recompiled the driver with the correct USB IDs in it, then it should work.

What happens when you plug the device in? do you see anything about a new USB device in dmesg?

That happened in mine, before I did anything in regards to the driver.

Perhaps I had to remove and replug the device after I removed and reinserted the module, I don't recall.

Also, I think that "rmmod rt73" is what you want, rather than "rt73.ko", you usually only need to specify the full file name when loading modules, not unloading, but I'm not sure if that makes a difference.

Feel free to email me about this, and I'll see if I can help you more.

8:10 pm  
Anonymous Anonymous said...

I think I figured it out.

On one occassion, before running the insmod command, I ran the lsmod command and was surprised to see something (a "module", I guess) named "rt2570". I don't know if this something that came with the OS (Ubuntu Dapper) or if it was a left-over from my earlier efforts to get the USB stick working with a driver from rt2x00.serialmonkey.com.

Either way, the trick was to first run

sudo rmmod rt2570

before then running

sudo insmod rt73.ko

I was then able to run

sudo ifconfig rausb0 up

(without the computer freezing up) and then

sudo iwconfig rausb0 essid ....

to my heart"s content.

To remove the rt2570 permanently, and to make life a little more interesting, I have removed Ubuntu Dapper and replaced it with Debian Etch. I remain able to insert the rt73 (no sign of any rt2570) and the USB stick seems to be working well.

Thanks for your help.

12:31 pm  

Post a Comment

<< Home