Tree [e3b1c0] default tip /
History



File Date Author Commit
include 2014-07-28 Lukas Jirkovsky Lukas Jirkovsky [bb034a] Fix an outdated doxygen comment.
libeilin 2014-07-28 Lukas Jirkovsky Lukas Jirkovsky [e3b1c0] Replace the default model configuration in eili...
qeilin 2014-07-28 Lukas Jirkovsky Lukas Jirkovsky [e3b1c0] Replace the default model configuration in eili...
.hgtags 2014-07-02 Lukas Jirkovsky Lukas Jirkovsky [a88e3e] Added tag eilin-3.1.2 for changeset 70ea61c0a2bd
.kateconfig 2014-05-18 Lukas Jirkovsky Lukas Jirkovsky [6e9e44] Add .kateconfig file with basic formatting sett...
51-eizo.rules 2014-05-19 Lukas Jirkovsky Lukas Jirkovsky [ac66a6] Add udev rule that can be used to avoid running...
CMakeLists.txt 2014-05-20 Lukas Jirkovsky Lukas Jirkovsky [baa287] Improve CMake build system:
LICENSE 2010-09-01 Lukas Jirkovsky Lukas Jirkovsky [54d37c] Initial commit.
NEWS 2014-07-28 Lukas Jirkovsky Lukas Jirkovsky [e3b1c0] Replace the default model configuration in eili...
NOTES 2014-07-16 Lukas Jirkovsky Lukas Jirkovsky [2c869e] Add a NOTES file containing various notes.
README 2014-07-16 Lukas Jirkovsky Lukas Jirkovsky [9bd76f] Update NEWS and README
eilin.c 2014-07-17 Lukas Jirkovsky Lukas Jirkovsky [ee87ee] Fix the device number in eilin -l
eilin.xml 2014-07-28 Lukas Jirkovsky Lukas Jirkovsky [e3b1c0] Replace the default model configuration in eili...

Read Me

About:
------
eilin is a Linux library and an utility to control settings of EIZO monitors.
eilin also provides a (optional) Qt-based GUI called "qeilin".

Tested Monitors:
----------------
- S1931
- S2031W
- S2242W
- S2243
- SX2262W
- S2431W (R/G/B not supported)

If your monitor is not listed you can try setting any of supported monitors
(using --type option). However this is unsafe and generally not recommended.

If it works please let me know what monitor you are using and what settings
works for you and I'll add it to the list of supported monitors.

If it doesn't work you can still get the monitor working. See How Can I Help
section below.

Requirements:
-------------
GNU/Linux
C compiler
CMake 2.8
libusb 1.x

GUI requirements (optional)
----------------
C++ compiler
Qt 4

Compiling:
----------
In order to compile eilin run following commands within the source directory.

cmake .
make
make install

Running under non-root user
---------------------------
eilin accesses the USB directly using the libusb. However this requires that the user
has enough privileges to access USB. Because of that, eilin is installed with setuid
root by default.

Other option is to use udev rule to allow non-root access to the device. To do that,
you must do the following:
1. create a group named eilin:
    groupadd eilin
2. copy the supplied file "51-eizo.rules" to "/etc/udev/rules.d/"
3. add all users that are allowed to control monitors to the "eilin" group
    usermod -a -G eilin USERNAME
4. compile and install eilin without setuid by passing
    -DINSTALL_SETUID=OFF
to cmake

Usage:
------
To print possible options run eilin without any parameters. eilin tries to determine
the monitor model automatically. The detected model can be overridden using the
-T (--type) switch or in the configuration file.

Note that some settings are not available in all modes. For example, in srgb mode
only brightness and contrast can be changed.

GUI usage
---------
The Qt GUI creates an icon in the system tray. The application can be run only in
one instance.

By clicking on the icon, the mode is changed. Double click on the icon, or right
click and choosing settings, opens the detailed settings window.

To quit the application, right click on the system tray icon and select quit.

Configuration
-------------
If the monitor model is not explicitly set using the -T (--type) option (applies
to eilin commandline utility only), eilin tries to determine the monitor model
automatically. If the model cannot be determined, or it is not supported, eilin
tries to use the default monitor model from the eilin.xml config file (see below).
If the default monitor is not set, nothing is done.

eilin uses rather self-descriptive xml configuration. The configuration is read
from eilin.xml, ~/.eilin.xml and /etc/eilin.xml in that order.

Most of it's content are "magic" numbers needed for eilin to work. These numbers
are monitor-specific. Every monitor has it's <monitor> entry.

To select the default monitor change the <default monitor="TYPE" /> line to match
the type from <monitor type="TYPE"> tag. This monitor type will be used when you
call eilin without -t (--type) parameter.

Known Bugs
----------
Sometimes there are off-by-one bugs in setting/reading numeric values. That's because
the real range of values differ from the one reported by monitor. eilin uses one
function to convert between the two representations but due to rounding the values
reported by eilin may differ a bit (personally I never saw difference bigger than 1)

How Can I help?
---------------
If your monitor doesn't work you can help by catching the USB communication of
the official Eizo control utility with adding necessary information what was done.

If you know the basics of how USB works it should not be a problem for you to get the
necessary "magic numbers" and update configuration file accordingly.
Otherwise send me sniffed communication, where you describe exactly what you did
with every tested feature in separate file.