THIS IS EXPERIMENTAL SOFTWARE AND HARDWARE. USE AT YOUR OWN RISK. THE MAINTAINER(S) OF THESE PAGES AND THE DEVELOPER(S) OF SOFTWARE AND HARDWARE PRESENTED ON THESE PAGES CAN NOT BE HELD LIABLE UNDER ANY CIRCUMSTANCES FOR DAMAGE TO HARDWARE OR SOFTWARE, LOST DATA, OR OTHER DIRECT OR INDIRECT DAMAGE RESULTING FROM THE USE OF THIS SOFTWARE OR HARDWARE. IF YOU DO NOT AGREE TO THESE CONDITIONS, YOU ARE NOT PERMITTED TO USE OR FURTHER DISTRIBUTE THIS SOFTWARE OR TO USE ANY TEMPLATES FOR BUILDING HARDWARE PRESENTED HERE.
L4M320T is a colour display module with a touchscreen and optional support for IR-decoding of certain remote controls and is developed by linux4media.
resolution | 240x320 |
colours | 64k (16bit) |
controller | display: Himax HX8347-D(T) + Cypress CY8C24894 USB microcontroller |
adjustable contrastr | yes |
name in serdisplib | "L4M320T" (example: serdisp_open(sdcd, "L4M320T", "");) |
availability |
SVN trunk (2.x): yes SVN 1.98.x branch: yes SVN 1.97.x branch: no |
the controller board is not claimed by any standard kernel module and no kernel module providing ioctl is existing yet. thus only libusb
is supported at the moment.
ee20
, firmware versions with support for IR have productID ee21
. dlopen()
). 4243
. replace with 23ae
if required. ee21
. replace with ee20
if required. USB:4243/ee21
'configuration in lcd4linux
Display SerDispLib { Driver 'serdisplib' Port 'USB:4243/ee21' Model 'L4M320T' }
configuration in graphlcd
[serdisp] Driver=serdisp Device=USB:4243/ee21 Controller=l4m320t
calling test program testserdisp
testserdisp -n l4m320t -p 'USB:4243/ee21' testserdisp -n l4m320t -p 'USB:4243/ee21' -o 'BRIGHTNESS=50;ROTATE=90'
using the third parameter of serdisp_init()
, driver specific options can be set.
common information about passing options can be found in a separate document.
examples:
serdisp_init(sdcd, "L4M320T", "INVERT=YES;ROTATE=90"); serdisp_init(sdcd, "L4M320T", "BRIGHTNESS=80");
identifier
short
remark
default
CONTRAST
set display contrast
5
ALARMHOUR
ALHOUR
alarm hour
0
ALARMMINUTE
ALMIN
alarm minute
0
ALARMDAYS
ALDAY
alarm days (bitmask: %X6543210
: bit 6: saturday, bit 5: friday, ..., bit 0: sunday)
0
TOUCHSKIP
skip a defined amount of initial touch events (improves accuracy)
4
BRIGHTNESS
sets brightness of display (by dimming current contrast level)
100
ALARMMODE
when to set alarm (right at the beginning or when quitting the driver)
0
identifier
range
aliases
CONTRAST
0, 10
ALARMHOUR
0 - 23
ALARMMINUTE
0 - 59
ALARMDAYS
0 - 0x7F
OFF=0,ALL=127
TOUCHSKIP
0 - 10
OFF=0,DEFAULT=4
BRIGHTNESS
0 - 100
ALARMMODE
0 - 3
POST=0,IMMEDIATE=1,POSTDELAY=2,IMMEDDELAY=3
examples for alarm:
"alhour=23;almin=30;alday=0x71"
alarm at 23:30; 0x71
= %01110001
=> alarm at saturday, friday, thursday, and sunday
"alhour=23;almin=30;alday=all"
alarm at 23:30; all
= all days
"alhour=23;almin=30;alday=0"
alarm de-activated (because of alday=0
)
this small utility is automatically compiled if serdisplib is configured with support for l4m320t-modules. it supports the following features:
the utility can be found in tools/
after compiling the library.
some options only work with recent firmware versions!
l4m320t_tool [<options>] Options: (default values in squared brackets) -p dev|port output device or port, default: 'USB:4243/ee21' -i print firmware version information and serial number -B id [0] show a stored bootlogo; id=[0, 2] -c value [5] contrast / brightness; value=[0, 10] -a "HH:MM" set alarm time -d "%6543210" set alarm days (bit field, to be entered as hexadecimal or decimal) bit 6: saturday bit 5: friday bit 4: thursday bit 3: wednesday bit 2: tuesday bit 1: monday bit 0: sunday examples: -d 0x7F: %1111111 -> all days -d 0x41: %1000001 -> saturday and sunday -d 0: de-activate alarm -f imagefile(s) change up to three bootlogos (240x320, readable by libgd) -u firmwarefile update firmware (.hex or .bin) -C calibrate touchscreen -y enforce certain actions (e.g. overwrite newer firmware version with older one -1 display module with firmware version < '90D' -v verbose (-v repeated: <= 2: log to syslog, >= 3: log to stderr, >= 5: log to stdout) -V version information
l4m320t_tool # show default (= first) bootlogo l4m320t_tool -B 1 # show second bootlogo l4m320t_tool -i # print firmware version and calibration information l4m320t_tool -p "USB:4243/ee21" -i # same, but set custom device path l4m320t_tool -1 # add -1 for firmware version without IR-support (prodID ee20) l4m320t_tool -C # calibrate touchscreen l4m320t_tool -u firmware.hex # flash new firmware (.hex or .bin, .bin additionally requires option -y) l4m320t_tool -y # force an action refused by the tool (eg. downgrading firmware) l4m320t_tool -f bootlogo.png # change first bootlogo l4m320t_tool -f bl0.png bl1.png bl2.png # change all three bootlogos l4m320t_tool -a "23:30" -d 0x41 # set alarm at 23:30, saturday (bit6) and sunday (bit0) l4m320t_tool -a "23:30" -d 0x7F # set alarm at 23:30, all days l4m320c_tool -a "23:30" -d all # set alarm at 23:30, all days (all = alias for '0x7F') l4m320c_tool -d 0 # de-activate alarm
l4m320t_tool
2010-10-17
: first release of documentation