Assorted Wireless Ethernet Things

The signal level server and clients are available here, I hope people find this useful, latest release on 25/10/99.

There is a change to the sl_xclient so it has a smothing mechanism built in it now looks a lot better (especially when the signal is changing a lot) and it is also now in 1 pixel changes instead of 3 to further smooth it.

Read the README file in the tar ball for a description of what each program does and why each is included.

The linux kernel has Wireless Extensions available that work with all wireless network cards that have drivers in the kernel. There is now minimal support for this software to be used with any card that has a driver supporting the wavelan extensions. I plan to do more with this in the future. (a tad busy just now). Use the jwesl_server instead of the plain sl_server for now if you do not have the Tridge hacked wavelan driver mentioned below.

The kernel Wireless Extensions are written and maintained by Jean Tourrilhes who has also written The Linux Wireless LAN Howto. This Howto and links from it are a definite must read for people interested in and using wireless ethernet equipment on linux.

Originally this software was written for use with a wavelan driver Andrew Tridgell hacked from a kernel back around version 2.2.2. This hack adds a /proc/wavelan extension with information about the card. The driver is available at ftp://samba.org/pub/tridge/misc/wavelan.tgz

We found this page very useful when construction our rather bodgy aerials. Chapter 2 and 4 also seem useful we didn't look at anything else there though.
2 sl_xclient's in the blackbox slit

Details about the sl_programs

First off I suggest reading the changelog as it sort of mentions why I did certain things. however I believe some clarification is needed on the reasons in some places.

The mmc file in the proc interface leaves the numbers there since the last update even when there has been no update for a long while. Previously I just kept sending out whatever this old signal was. Now I check for the no new message flag and send 0 0 when there has been no new message. This brings in a new problem though, if you are not sending traffic all the time or only pinging (once a second) this isn't enough to keep the numbers form being 0 the other three times a second. so when there is no new message it now takes a second or so for it to be realised in the data being sent. I consider this a valid decision as it smoothes the graph of signal levels and stays accurate for the data you are transmitting.
It will of course go to zero if you stop transmitting, however you can run a client connected to the other end of the link or just ping the other end to keep a nice steady signal.

I also changed the sl_sclient as it used to only beep when signal was above 4, it now beeps on any non zero signal and also because the sl_server now will send 0 0 when there is no signal it does die off when you lose a signal. This has some very good features, it means you can stand on the roof and aim listening to a beep from a machine in the roof and actually aim accurately, and also if you have some antennas that will once in a while get a signal but not much of one it will actually beep. Of course the beeps are on the common musical scale also so it sounds like some cute little song is playing when you listen to the beeps.

I personally found all this code really really handy while I was getting the link working and am today at last writing a simple dock app (like wmload) to display signal strength (we notice it does in fact vary by 1 or 2 all the time up and down) And I hope other people can use it also.


Steven Hanley <sjh@wibble.net>
Last modified: Tue Oct 26 16:07:42 1999