Welcome to the lptMon homepage!

About | Configuring | Downloading | Hardware | Contact
LEDs connected to parallel port


lptMon is a program written in C++ designed to show useful information by lighting up various pins on the parallel port. Ideally, one connects an LED to each pin, to clearly indicate its status. The program uses the four central pins to show CPU load (each pin represents up to 25% load), with each two edge pins being used to represent a new item (designed for new email or RSS but could be used for anything really, such as a new IM).
It's made up of one source file, and the resulting binary can either be run in daemon mode, where by it will show the CPU usage and status of new items, or with one of the following arguments, used to tell the program there is a new item:

Pressing a push switch connected to pin 10 (input 1) will clear both statuses.
If you don't have some LEDs to connect to the parallel port, the program will also output to the console, like so:
lptmon outputs to the console


Basically, configuration involves getting the main program to run at startup (must be run as root, so you could setUID the program with "sudo chmod a+s lptmon" then "sudo chown root lptmon"), then having your email / RSS clients call the program with the "newemail" or "newrss" arguments when you have new email/new RSS, and having them call it with "noemail" or "norss" when there's nothing new. For instance, KMail can be configured like this (don't forget to press the "Advanced" button!).


There are two main ways to download the lptMon program.
Option one is to download the source yourself and compile it, which involves downloading the lptmon.cpp file, then running "g++ -olptmon lptmon.cpp" (make sure you've got everything you need to compile programs, on ubuntu you need to install "build-essential" via apt-get or similar).
Option two is to download a pre-compiled binary, which you can just run. This is easiest, but the binaries may not work on your system. They were compiled on 32bit Ubuntu and 64bit Ubuntu, so should work fine with Ubuntu systems, and will probably work fine with other distros, but I can't test that.
Anyway, the download links are:
Source code
32 bit binary
64 bit binary


The hardware used with this program is fairly simple to setup.
You'll need 8 LEDs, 8 330 ohm resistors (plenty of slack here, you can use anything from 200 ohm to 500ohm really), a parallel port cable and optionally a switch. Also useful is a DB-25 type connector which lets you solder to the parallel cable easily.
You then setup the circuit like this:
circuit diagram


lptMon is written by Adam Greig. The best place to get contact information is the Contact section of my website: http://randomskk.net/site/contact If you have any queries, or want support in using the program (to a basic extent), feel free to email me with your question.
Besides that, I hope you enjoy using lptMon, and that it's a useful program for you!