/i4oled

Helper for setting OLED icons on Wacom Intuos4 tablet family

Primary LanguageCGNU General Public License v3.0GPL-3.0

i4oled is a simple helper for setting and rendering OLED icons on Intuos4
family tablets. It uses cairo/pango library to render text and some 'logic'
to split text nicely if it's too long to fit in one line. The main goal
of the project it to develop solutions (splitting text, rendering, png handling,
OLED preparing/writing) that can be used to implement proped OLED handling in
gnome, but it's also a fully independent command line tool.

i4oled accepts text, PNG images or base64 encoded string as input. It can set
the OLED icon directly on tablet, create PNG image or base64 string for later use.
Expected PNG format is:

PNG image file, has to be 64 x 32, 8-bit/color RGBA, non-interlaced

See 'icons' directory for some examples.

Base64 string is used internally by gnome, so strings generated by i4oled can be
used as described here:
http://blog.firszt.eu/index.php?post/2014/02/17/How-to-change-OLED-label-on-Intuos4-tablets-on-gnome

Typical usage:

Render text "Ctrl+Alt A" and set OLED icon on Button0:

i4oled --text "Ctrl+Alt A" --device  /sys/bus/usb/drivers/wacom/[Dev #]/wacom_led/button0_rawimg

Set OLED icon using existing PNG file:

i4oled --image icons/play.png --device /sys/bus/usb/drivers/wacom/[Dev #]/wacom_led/button0_rawimg

Render text to PNG file:

i4oled --text "Shift-Meta-X" --output Shift-Meta-X.png

IMPORTANT NOTE No.1! Make sure OLED brightness is set for the tablet, otherwise icons will remain invisible!
(black on black). It can be done i.e. in this way:

echo 200 > /sys/bus/usb/drivers/wacom/[Dev #]/wacom_led/buttons_luminance

Enjoy!

Ubuntu users: if you get an error "cannot find pangocairo" try this:

sudo apt-get install build-essential automake autoconf libtool pkg-config
libcurl4-openssl-dev intltool libxml2-dev libgtk2.0-dev libnotify-dev
libglib2.0-dev libevent-dev checkinstall

as suggested here:
http://ubuntuforums.org/showthread.php?t=1380744&page=32&p=12579689#post12579689

Fedora users: if you see something like during configure stage:
[..]
configure: error: Package requirements (pangocairo >= 1.29.0) were not met:

No package 'pangocairo' found
[..]

install pango-devel.

sudo yum install autoconf automake gcc pango-devel