TuxLCD Code
Status: Pre-Alpha
Brought to you by:
uk_dave
Overview ======== TuxLCD is designed to display system stats and information on character based LCD displays such as those from Matrix Orbital (http://www.matrixorbital.ca/). The program is for Linux systems and is designed to run as a daemon with plugins providing various statistics such as CPU and RAM usage, Hard disk and GPU temperatures, email count, Seti progress, XMMS song title, etc. I used to run Windows under which I ran a program called LCDC (http://www.lcdc.cc/) which performed this task. However, now that I run Linux I have been unable to find an appropriate alternative. My TuxLCD project is currently at a pre-alpha stage. I have the basic daemon working and a couple of plugins providing basic system information and another providing temperature and fan information from libsensors. These plugins are dynamically loaded at runtime allowing other developers to create their own plugins and release them for use with TuxLCD. Additionally, although I only have a Matrix Orbital LCD screen available, TuxLCD is designed to use a plugin system for LCD display drivers allowing other developers to create drivers for different LCD displays. A text-based screen configuration file allows the user to define the various screens they want displayed on their LCD. This includes any custom characters (graphical icons), text, and data from plugins as well as defining how long the screen should be displayed for and what transition to use when changing screen. At the moment this file has to be edited by hand and although an example screen definition file is provided, I intend to create a GUI to allow the user to easily create and edit their screen definitions. Prerequisites ============= For TuxLCD: * libpopt (apt-get install libpopt0 libpopt-dev) * GLib 2.x (apt-get install libglib2.0-0 libglib2.0-dev) For Driver_LK202: none For Plugin_SysInfo * GLib 2.x (apt-get install libglib2.0-0 libglib2.0-dev) * LibGTop 2.x (apt-get install libgtop2-7 libgtop2-dev)) For Plugin_Sensors * GLib 2.x (apt-get install libglib2.0-0 libglib2.0-dev) * lm-sensors (apt-get install lm-sensors libsensors3 libsensors-dev) * hddtemp OPTIONAL (apt-get install hddtemp) * nvidia-settings OPTIONAL (apt-get install nvidia-glx) Installation ============ Default installation paths are: Binaries: /usr/local/bin/ Config files: /etc/tuxlcd/ Custom chars: /usr/local/share/tuxlcd/customchars Drivers: /usr/local/share/tuxlcd/drivers Plugins: /usr/local/share/tuxlcd/plugins These paths can be changed by editing "Makefile". Easy way: make sudo make install Longer way: make tuxlcd make drivers make plugins sudo make install_tuxlcd sudo make install_drivers sudo make install_plugins Configuration ============= Global config: tuxlcd.conf Screen definitions: screens.conf Event definitions: events.conf Contact Info ============= David Bull <david@uk-dave.com> http://www.uk-dave.com