Linux Wireless at U of T

U of T is moving towards ubiquitous wireless access on the downtown campus. That means you want access, but the University doesn’t want iSquatters™. To that end they are using WEP and MAC address authentication. I want access via Linux, but the myopic twits are afraid to support anything for fear that it won’t work. Better to inconvenience everyone rather than risk having one unhappy student with a screwball setup. So, in the interest of promoting wireless access at U of T, I wrote up these instructions for accessing the Campus Wireless Network under Linux.

1. Make sure your wireless card is supported in your running kernel.
Contrary to the documentation provided by the Campus Wireless network,
any card supported by Linux and capable of WEP and 802.11b will work.

If your kernel does not support your wireless card, but it is supported
under Linux, you will need to recompile your kernel. This is beyond the
scope of these instructions, so get on the Internet and get some advice.

2. Note the output of iwconfig. It may look something like this:

lo        no wireless extensions.

eth0      IEEE 802.11-DS  ESSID:"UTORwin"  Nickname:"Prism  I"
          Mode:Managed  Frequency:2.412 GHz  Access Point: 00:01:F4:6B:0E:CC
          Bit Rate:11 Mb/s   Tx-Power=15 dBm   Sensitivity:1/3
          Retry min limit:8   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality=46/92  Signal level=-78 dBm  Noise level=-149 dBm
          Rx invalid nwid:0  Rx invalid crypt:15  Rx invalid frag:2
          Tx excessive retries:2  Invalid misc:0   Missed beacon:0

The key fields are ESSID, Access Point, and Link Quality and the name of
the interface (eth0, eth1, etc.). If the Access Point field is
44:44:44:44:44:44 and the Link Quality is reasonably high, then you have
not been authenticated by the Access Point.

3. As root, log onto an access point with the following command:
iwconfig eth0 essid UTORwin enc s:UToronto1home
The only difference will be the interface name. You may wish to alias
this command to something convenient, or set it as the default for the
interface.

4. Log onto a web browser, and any page you receive will redirect you
to the Campus Wireless Network, where you will have to register the
MAC address of your wireless card and then authenticate yourself based
on your UTORID.

Getting a UTORID I leave as an exersize for the reader.

SD Cards

I a similar vein, I’ve been looking around for a portable storage solution and an MP3 player, and I found a great combination in the RCA Lyra and SD Cards. I got the 64Mb model Lyra, because it was very cheap, and I put a 1Gb SD card in it, which is similarly cheap. I get 200 tracks on the card, leaving 350-odd Mbs free for files.

I did have a little trouble getting it working on Linux, but once I determined that the card was being mounted as /dev/sda1 (hurray for tail -f /var/log/messages) it was pretty easy. One other wrinkle was that the card is formatted as FAT16, which has an allocation-block limit of something silly, like 512 blocks in the root of the drive. I tried to fill the card with music, and got stopped at 90-odd files, about half-full, and I couldn’t figure it out. Eventually TLUG came to my rescue, and I learned that FAT16 breaks long filenames into blocks of a set size, so the 90-something files with long names became 512 full blocks. I created a directory on the card, dumped all the songs into it, and was able to fill the card. It seems that the limit is only for the root of the device. I’d love to use a better format, but I want it to work on any system I encounter – including the MP3 player, so I’m stuck for now. There is a 4Gb limit to FAT16 too, but I don’t think that’ll be a problem in the next year or two.

Resolved: 2.6.8 and USB

Well, I got things sorted. I got them sorted quite a while ago, but I have just emerged from the cave of my Masters and I resolve to begin catching up on my blogging – I haven’t been hibernating, I just haven’t done any reporting on my activities.

Okay, back to the kernel – I went through the process again, and I still had USB issues, but everything else worked. I got a bit of help from TLUG and discovered that my problems went away if I typed sudo modprobe ehci_hcd and sudo modprobe uhci_hcd, which are the modules for USB 2.0 and USB 1.1 respectively. After a bit more looking, I found that the reason I had some old, unused modules loading was that they were in /etc/modules. So, I extrapolated, put the USB modules in and commented the obsoleted ones out, and Bob’s your uncle, everything works.