Archive for the ‘tech’ Category

horst version 3.0

Tuesday, February 15th, 2011
horst-spec1

horst version 3.0 is now officially released. It contains various improvements over the last release (2.0-rc1):

  • Spectrum Analyzer window for an overview of all channels
  • More realistic Usage (“AirTime”) calculation
  • Improved client/server support
  • Show retries
  • Fixes for big endian platforms
  • Deal with drivers which don’t report noise (mac80211)

The most important addition is the Spectrum Analyzer window which I have written about before. In this mode horst changes channels and shows an overview of the signal level, number of stations and usage for each channel – something like a rough spectrum analyzer.

Usage (what has also been called AirTime or busy time) calculation is now much more realistic, as it takes account of inter-frame spaces and the contention window now. Before the maximum usage was around 60% on a 100% busy channel, now it shows correctly as around 100%.

Networking (client/server) support is now usable. You can start horst in server mode on the device (e.g. horst -C -q) and connect from another device to see the horst interface via the network. Only one client is allowed at a time at the moment.

I also tried to clean up the user-interface a bit by removing some useless information and added retries instead. A high number of retries are a good indication of problems in a WLAN as they can eat up the available bandwith pretty fast.

More information on my horst page and download here.

Spectrum Analyzer for ‘horst’

Saturday, December 4th, 2010

One of the main initial goals of writing the horst tool (a small wireless lan analyzer) about 5 years ago was to have something like a poor-man’s “Spectrum Analyzer”, which can show the signal strength (and noise) of each wireless channel. Of course this is not a real Spectrum Analyzer, but close enough as it can give a good overview of what is going on on each channel. This information can be used to choose a good channel for a specific site, to optimize antenna placements and to debug interference from neighbouring channels or nodes. Unfortunately, allthough making small steps into this direction, I never got around to actually implement it so far, but recently David Rowe from the Dili Village Telco and Mesh Potato project picked up horst to implement the same idea. He extended horst, sent me the patches and wrote a nice and long blog article on his Mesh Potato Spectrum Analyser. I have now integrated his ideas into the horst code and added some of my own. Finally horst has as Spectrum Analyzer window!

And here is another view, which shows the MAC and IP address of each node.

This feature is still work in progress and I expect to make a few improvements and cleanups in the near future. Ideas and suggestions welcome! And finally, with this addition and some other improvements I made in the last few month (most notably the AirTime / Usage calculation is much more realistic now) I plan to make a stable release within the next two month.

As always, the latest version of horst can be downloaded here or followed by git.

Geany instead of KScope

Thursday, April 22nd, 2010

Since they killed KScope i had to search for another editor which suited my needs. KScope was a great KDE based source-editor with very good code C/C++ code cross-referencing and it was able to handle large projects like the linux kernel with about 20.000 files. Unfortunately KScope was “lost” during the KDE4 transition, it seems mostly due to the KDE / Kate developers not caring enough to keep it supported. It’s a shame actually, and one of the examples where open-source didn’t work well…

Most other IDE’s just can’t handle projects of this size well and slow down too much or crash when building the symbol cross-references. It seems most kernel developers still use vi or Emacs, but i want something more visual. Kate just keeps getting worse, and misses some small features which i need to work efficiently, like a good integrated ‘Find in files’ function and symbol cross-references.

After trying a lot of different editors and IDEs i finally found Geany – which it can do almost everything i want from an editor, while still being lean, fast and efficient. It’s GTK2 based and not KDE, but who cares? Allthough it does not cross-reference all symbols for the whole kernel, it does so for all opened files, and has a good integrated ‘Find in files’ function, so this is usually enough for working on drivers. It’s a good compromise between a full-featured, “heavy” IDE and a fast text-editor.

Anyhow i still want my KScope back…