Documentation
Getting Started
Install Instructions:
The following assumes a 2.6 Linux kernel build
from source. The following reference describes the
build process:
http://osdn.dl.sourceforge.net/sourceforge/souptonuts/README_26.txt
STEP 1:
Edit the Makefile inserting the correct location of the 2.6
source. Double check "/lib/modules/$(shell uname -r)/build".
KDIR := /lib/modules/$(shell uname -r)/build
If the above is not the correct location for the source,
make the necessary adjustments.
STEP 2:
$ make
STEP 3:
Load the module as root.
$ su -
$ /sbin/insmod delcom806006.ko
STEP 4:
Verify the module was loaded correctly,
"delcom806006 6656 0 - Live .." should appear in the
following directory:
$ cat /proc/modules
And "delcom806006" should also be listed after the following:
$ ls /sys/bus/usb/drivers/
STEP 5:
Commands to turn on the USB device:
$ echo 80 > /sys/bus/usb/drivers/delcom806006/3-2\:1.0/minor
$ echo 1 > /sys/bus/usb/drivers/delcom806006/3-2\:1.0/lsb
Note, "3-2\:1.0" is the particular USB port my
device is plugged into (Bus 3). You're probably using (Bus 1)
or (Bus 2).
For a listing of all active devices,
$ cat /proc/bus/usb/devices
STEP 6:
After making changes to the "mybus" variable, the following
programs should display the time on the USB device:
See "./user_land/bash/time"
See "./user_land/C/prog1.cc"
See "./user_land/perl/time.pl"
Also checkout programming the device in raw mode
Raw mode setting for the display
***(1)***
* *
(32) (2)
* *
*==(64)=*
* *
(16) (4)
* *
***(8)***
* (128)
To display an "A" .. (change 3-2:1.0 to location of device).
echo "1+2+4+16+32+64 "|bc > /sys/bus/usb/drivers/delcom806006/3-2:1.0/zero
STEP 7: (Programming your own kernel modules)
Sometimes it's nice to write to the active tty device. For a simple example
of this checkout the latest version of procreadwrite:
http://sourceforge.net/project/showfiles.php?group_id=79066&package_id=80379
special note: "current->tty" was replaced with "current->signal->tty" in
the 2.6.6 and greater kernels. Fedora Core 2 uses 2.6.6+. Downloading the
above will demonstrate and further explain this.