Included files: =============== Source files (./src): --------------------- eject.c - eject_xbox source fan.c - Fanctl source led.c - A renamed 'blink' source temp.c - Xboxtemp source testi2c.c - Tests if i2c is writable/ if it exists video.c - Code to detect the video chip you have loadmonitor.c - Set the LED depending on system load i2c-dev.h - Header files for i2c xbox.h - Contains various registers Script files (./script): ------------------------ blink - A wrapper for LED (specifically for Gentoox) randblink - A wrapper for LED to make the colour change randomly Gentoox Script files (./script/Gentoox): ---------------------------------------- fanctl.rc - An init script for Gentoox (move to /etc/init.d/fanctl) fanctl.conf - The config file for the init script (move to /etc/conf.d/fanctl). Edit this file to suit your needs loadmonitor.rc - An init script for Gentoox (move to /etc/init.d/loadmonitor). loadmonitor.conf - The config file for the init script (move to /etc/conf.d/loadmonitor). Edit this file to suit your needs. After installing these Gentoox scripts, run "rc-update add XXXX default" to make the daemons start upon boot. To run them straight away execute "/etc/init.d/XXXX start". (where XXXX is the name of the rc script). static_bins.tbz2 file: ---------------------- This file contains precompiled, static binaries that should work on any xbox-linux distribution without the needs for shared libraries. Using the wizard: ================= Compiling: ---------- ./wizard build Cleaning: --------- ./wizard clean Installing: ----------- ./wizard install You must have compiled first! Uninstalling: ------------- ./wizard uninstall Programs: ========= testi2c: -------- This programme will return exitcode(1) if the i2c device cant be opened, and exitcode(2) if the address cant be connected to. This is very handy for making wrapper scripts (if [ $? != 0 ]; then fail...) eject_xbox: ----------- Ejects/ injects Xbox dvd tray using the PIC. See --help for details. fanctl: ------- This program sets your fan speed depending on Xbox temperature. Its HIGHLY recommended that you read --help. This programme also has the capability of instantly shutting down your Xbox if the temperature gets too high. These shutdown temperatures are hardcoded for safety reasons. !!HIGHLY IMPORTANT!! Remember, the source allows you to set the fan to ANY speed between 0 and 50. If you edit the source to allow 0 speed, you risk ruining your Xbox. Since this software is GNU/GPL, you cannot claim damages from me. You have been warned. By default, the source only allows speeds 5-50, 10 is the Xbox's default speed. Note that the verbose setting determines if activity is logged in syslog or not. Poll interval is how long the daemon waits before checking the temperatures again and then taking action. It is safe to run fanctl as "fanctl --help", this will not start the daemon, it will only display a usage screen. This programme is now auto-calibrating. If the speed the fan is running at does not seem to cool the CPU/ board enough, it will step up the speed gradually up to a maximum 40% boost. The "-b" option lets you specify when this boost level should be reset. You might want to reset this every 6 hours e.g. if you are doing some heavy compiling, this boost value will get maxed out, but after the compiling is done the boost level will be inappropriate, so it should be reset. The boostlocks can be reset at any time with SIGUSR1. led: ---- This program lets you set the Xbox LED colour sequence. r = red g = green o = orange x = off Each sequence MUST consist of 4 colours, but they dont all have to be different. Example: ./led rgox == cycling through red, green, orange, off xboxtemp: --------- This program prints back your Xbox's system and CPU temperature in °C and °F. It also prints back the fan speed in %. It has no options. video: ------ This programme prints back your Xbox's video encoder type. This can be either Conexant or Focus. loadmonitor: ------------ This monitors the Xbox's load and changes the LED appropriately. See the --help screen for full usage details. Scripts: ======== blink: ------ The blink script allows you to set a running and halting LED pattern. The running pattern is loaded on startup and the halting pattern is executed when you shutdown the Xbox. This script only works with Gentoox but with a little bit of poking around, you should be able to change it to suit your distro. randblink: ---------- This script sets your LED to random colours and executes until the PID is killed. Notes: ====== * The directory must be called shallaxs_i2c_stuff for compilation/ cleaning to work. * After building everything, the binaries will be placed in './bin/'. * The install feature puts everything in /bin with the correct permissions. These permissions allow any user to execute xboxtemp, but none of the other applications (which could be used maliciously by users). Executing xboxtemp should be totally safe. * Nothing should need changing in any source files for it to compile and work. * Only tested in Gentoox, use in other distros at your own risk. * You can discover the wizard's usage by running it with no arguments. Changelog: ========== 21/02/2007 ---------- * Made all tools check for both devfs and non-devfs i2c device nodes. 25/07/2006 ---------- + Turned loadmonitor into a proper C written daemon rather than a script to be run via cron. 31/08/2004 ---------- * Wizard prettification. 18/12/2003 ---------- * Daemonised fanctl * Merged emergencyheat into fanctl. * Updated loadmonitor script (now only controls LED). + Added Gentoox init script and conf. * Minor document reformatting. 05/10/2003 ---------- + Added LED scripts: blink and randblink. + Added fantest script * Totally rewritten eject.c * Cosmetic changes to README. * Changes to the wizard script to fix double build error. 04/10/2003 ---------- * Initial release