Macintosh PowerBook


Apple Macintosh PowerBook G3


How-to
Partition your hard disk
Configure X windows
Configure AfterStep
Make the PowerBook sleep
Set up the modem for PPP
HotSync a Palm Pilot via IrDA
Go wireless!



Lucent Technologies' ORiNOCO PC Card


Links
Access at Dana Street Roasting Company
Information about the setup at Dana Street Roasting Company from the guy who set it up.
FreeBase
Free Windows AirPort base station configurator application.
Java-based AirPort configurator
Free Java-based, hence cross-platform, AirPort base station configurator application.
Linux PCMCIA Information Page
Links to project information and PCMCIA kernel module.
Wireless LAN resources for Linux
Lots of information here plus a link to Wireless Tools.
wmwave
A graphical wireless connection monitor.


Apple's AirPort base station

For you information, an AirPort base station has an ORiNOCO Silver card inside it. Apple just put it into a nice package, added an ethernet port, a modem, and some software.

Go Wireless!

I wanted to be able to connect to the Internet wirelessly since Dana Street Roasting Company in downtown Mountain View (where I hang out a lot) started offering free wireless networking. Additionally, I also got an Apple AirPort base station for home so I can be online with the PowerBook while sitting on the couch.

There are several steps to get wireless networking up and running:

Having kernel support
In order to do wireless networking, you need to have support for it in your kernel by having CONFIG_NET_RADIO set to Y. (It's found under "Network device support" in kernel configuration.) I recommend kernel 2.2.19 (for 2.2 series kernels) since earlier versions had issues compiling with recent versions of the PCMCIA kernel module.

You don't need any specific drivers selected. Note that the WaveLAN driver that may be listed there is for the old WaveLAN (non-IEEE 802.11 compliant) card, so don't select it.


Getting a wireless networking PCMCIA card
In order to do wireless networking, you need a need a supported PCMCIA card. (Check the PCMCIA project page for a list.) Because of its popularity (which translates into better support), I chose Lucent Technologies' ORiNOCO PC Card (Silver) (formerly the WaveLAN Turbo 11Mb PC Card). (Yes, the new name is dumb.)
Note: for the network at Dana Street Roasting Company (which establishes an IBSS network), an ORiNOCO card must be running Lucent's "station firmware" version 6.04 (or later). Unfortunately, the there is only a Windows version of the firmware update tool so you'd have to find a friend with a laptop running Windows who can do the update for you.

Note: for newer PowerBook 2000 and Titanium models, or the new iBooks, you'd probably be happier using Apple's AirPort card since it's entirely contained inside the case. However, you need to use the AirPort card driver.


Compiling and installing the PCMCIA kernel module
I'm using version 3.1.29 of the PCMCIA kernel module. (Versions prior to 3.1.27 didn't work out of the box on a PowerPC and required a patch.) Simply follow the directions for compiling and installing it. (You can accept all the default values during configuration.)


Configuring PCMCIA options
The configuration options for PCMCIA cards are set in:
/etc/pcmcia/config.opts
    # System resources for PCMCIA devices
    include memory 0x80000000-0x80ffffff
    include port 0x100-0x1ff
            
It is necessary to adjust the memory range and ports the card can use when on a PowerBook.


Configuring wireless options
First, you need to install the Wireless Tools software.

The PCMCIA software allows you to have different "schemes," that is different sets of configurations. (This is similar to what the Location Manager under MacOS allows.) To have one scheme for home and another for the café, you need to edit:
/etc/pcmcia/wireless.opts
    home,*,*,00:60:1D:*|home,*,*,00:02:2D:*)
        INFO="Wavelan IEEE (PJL-Home network)"
        ESSID="PJL-Home"
        MODE="Managed"
        KEY="01234567890"
        ;;

    dsrc,*,*,00:60:1D:*|dsrc,*,*,00:02:2D:*)
        INFO="Wavelan IEEE (Live.com network)"
        ESSID="LIVE.COM"
        MODE="Managed"
        ;;
            
First, delete the section labeled "SECTION TO REMOVE." Next, create one section per scheme. Above are two schemes: one for home and one for the café (dsrc = Dana Street Roasting Company). ESSID is the network name and KEY is the encryption key. Replace the value of KEY with the "Network Equivalent Password" that is found using Apple's AirPort Admin Utility under the "Base Station" menu.
Note: the network at Dana Street Roasting Company doesn't use encryption.

Note: for the café, the MODE should be Ad-Hoc and not Managed; however, for whatever reason in my configuration, it works only when Managed.


Configuring network options
Just as with wireless options, network options allows different schemes. On my home LAN, I assign the PowerBook a static IP address; at the café, I must use a DHCP client (dhcpcd) to obtain an IP address.

To configure networking, you need to edit:
/etc/pcmcia/network.opts
    home,*,*,*)
        INFO="Wavelan IEEE"
        # Host's IP address, netmask, network address, broadcast address
        IPADDR="10.0.1.202"
        NETMASK="255.255.255.0"
        BROADCAST="10.0.1.255"
        # Gateway address for static routing
        GATEWAY="10.0.1.254"
        # Things to add to /etc/resolv.conf for this interface
        DOMAIN="pacbell.net"
        DNS_1="206.13.28.12"
        DNS_2="206.13.31.12"
        ;;

    dsrc,*,*,*)
        INFO="Wavelan IEEE"
        DHCP="Y"
        DHCP_HOSTNAME=`hostname`
        ;;
            
Naturally, replace the values above with those for your own network.


Bringing PCMCIA up and down
A start/stop script is included as part of the PCMCIA kernel module. I found I had to make a couple of modifications because I occasionally got "Device or resource busy" errors preventing the module from being unloaded, shutting down the card, and the card from being removed.

I discovered that the thing that was keeping the "device busy" was the fact that the DHCP client daemon (dhcpcd) was still running; hence the modification was to add the two lines shown below immediately after the stop line in the script:
/etc/init.d/pcmcia
    stop)
        killall -q dhcpcd
        rm -f /etc/resolv.conf /etc/resolv.conf.sv
            
I also added the same two lines after the start line to kill off any dhcpcd that may have been left over running for the wired ethernet interface so the new one could start.

With those modifications made, you are now ready to try this all out. Until you get this working, you probably want to do a:
    tail -f /var/log/messages
in a separate window to see what's going on. To establish the wireless connection:
  1. Insert the ORiNOCO card.
  2. As root, type:
        SCHEME=home /etc/init.d/pcmcia start
    replacing "home" with whichever scheme you want to use at a given time. (Schemes are "sticky" in that the last used scheme is remembered, even across reboots, so that it need be specified only if changing schemes.)

You should hear two beeps and the light on the card closest to you should remain illuminated green. To test, try pinging some host.

To shut down the wireless connection and remove the card:
  1. Quit all applications that are using the network (ftp, ssh, ICQ, IRC, ntpd, etc.).
  2. As root, type: /etc/rc.d/init.d/pcmcia stop
    (You should hear one beep and both lights on the card should go out.)
  3. Eject the ORiNOCO card with the manual eject button.
Apparently, there are still some issues with the card management software since ejecting the card without shutting down the PCMCIA software first will crash your machine.


Monitoring the wireless connection
To monitor the strength of the wireless connection, you can use wmwave in AfterStep's Wharf. (Even though it's a WindowMaker Dock application, it works with AfterStep's Wharf.)


[Personal] [Résumé] [Software] [Contact]
Last updated: October 6, 2001