(Phil) It works! So, I'll commit it. Here's the skinny:
There is only one file 'disp'. To send bytes (like chars to be displayed)
you send a series of unsigned base-10 values separated by spaces.
For example:
echo "hi there" | perl -e \
'$_=<STDIN>; while (/(.)/gc) { print ord($1)," "; }' \
> /proc/sys/dev/sensors/matorb*/disp
This is equivelent to doing:
echo "104 105 32 116 104 101 114 101" > /proc/sys/dev/sensors/matorb*/disp
I was going to create more files for doing things like clearing the screen,
but it is easier and probably better to do this in user-space. For example,
to clean the screen, you can do:
echo "254 88" > /proc/sys/dev/sensors/matorb*/disp
(As documented in the manual from Matrix-Orbital)
If the folks at Matrix-Orbital added device ID on a read (we talked about
this), then I will add an ID file to indicate that info.
TODO: finish detection. Right now it looks for a device at a particular
address and assumes it is a display.