1LCDd(8)                          LCDproc suite                         LCDd(8)
2
3
4

NAME

6       LCDd - LCDproc server daemon
7
8

SYNOPSIS

10       LCDd  [-hf]  [-c  config] [-d driver] [-i bool] [-a addr] [-p port] [-u
11       user] [-w time] [-r level] [-s bool]
12
13

DESCRIPTION

15       LCDd is the server part of LCDproc, a deamon which listens to a certain
16       port  (normally  13666) and displays information on an LCD display.  It
17       works with several types and sizes of displays.
18
19       Most settings of LCDd are configured  through  its  configuration  file
20       /etc/sysconfig/lcdproc/LCDd.conf,  some  of them can be overriden using
21       command line options.  Before running LCDd you  should  carefully  read
22       through  that  file  and modify everything neccessary according to your
23       needs.  Otherwise you might encounter LCDd not running properly on your
24       system.
25
26       To  make  full use of LCDd, a client such as lcdproc(1), lcdexec(1), or
27       lcdvc is required.
28
29

OPTIONS

31       Available options are:
32
33       -h     Display help screen
34
35       -c config
36              Use  a  configuration  file   other   than   /etc/sysconfig/lcd‐
37              proc/LCDd.conf
38
39       -d driver
40              Specify  a  driver to use (output only to first), overriding the
41              Driver parameter in the config file's [Server] section.
42
43       -f     Run in the foreground, overriding the  Foreground  parameter  in
44              the  config file's [Server] section.  The default, if not speci‐
45              fied in the config file, is to daemonize LCDd as it is  intended
46              to operate in the background.
47
48       -i bool
49              Tell  whether  the to enable (1) or disable (0) showing the LCD‐
50              proc server screen in n the screen rotation, overriding  Server‐
51              Screen in the config file's [Server] section.
52
53       -w waittime
54              Time  to pause at each screen (in seconds), overriding the Wait‐
55              Time parameter in the config file's [Server] section.
56
57       -a addr
58              Bind to network address addr, overriding the Bind  parameter  in
59              the config file's [Server] section.
60
61       -p port
62              Listen  on  port  port  for incoming connections, overriding the
63              Port parameter in the config file's [Server] section.
64
65       -u user
66              Run as user user, overriding the User parameter  in  the  config
67              file's [Server] section.
68
69       -s bool
70              Output  messages  to syslog (1) or to stdout (0), overriding the
71              ReportToSyslog parameter in the config file's [Server] section.
72
73       -r level
74              Set reporting level to level, overriding th ReportLevel  parame‐
75              ter in the config file's [Server] section.
76
77
78   SUPPORTED DRIVERS
79       Currently supported display drivers include:
80
81       bayrad BayRAD LCD modules by EMAC Inc.
82
83       CFontz CrystalFontz CFA-632 and CFA-634 serial LCD displays
84
85       CFontz633
86              CrystalFontz CFA-633 serial/USB LCD displays
87
88       CFontzPacket
89              CrystalFontz  CFA-631,  CFA-633  and CFA-635 serial/USB LCD dis‐
90              plays
91
92       curses Standard video display using the (n)curses library
93
94       CwLnx  serial/USB displays by Cwlinux (http://www.cwlinux.com)
95
96       ea65   VFD front panel display on Aopen XC Cube EA65 media barebone
97
98       EyeboxOne
99              LCD display on the EyeboxOne (http://www.rightvision.com)
100
101       g15    LCD display on the Logitech G15 keyboard
102
103       glcdlib
104              graphical LCDs supported by graphlcd-base
105
106       glk    Matrix Orbital GLK Graphic Displays
107
108       hd44780
109              Hitachi HD44780 LCD displays.  This driver supports the  follow‐
110              ing sub-drivers (a.k.a. connection types):
111
112              4bit   LCD 4bit-mode, connected to a PC parallel port
113
114              8bit   LCD 8bit-mode, connected to a PC parallel port
115
116              serialLpt
117                     LCD in 4bit-mode through a 4094 shift register
118
119              winamp LCD  in  8bit-mode using WinAmp-wiring, connected to a PC
120                     parallel port
121
122              picanlcd
123                     LCD driven by a PIC-an-LCD chip/board by Dale Wheat, con‐
124                     nected to a serial port
125
126              lcdserializer
127                     LCD  driven  by  a  PIC16C54-based piggy-back board, con‐
128                     nected to a serial port
129
130              los-panel
131                     LCD driven by an Atmel AVR based board,  connected  to  a
132                     serial port
133
134              vdr-lcd
135                     ???, connected to a serial port
136
137              vdr-wakeup
138                     VDR-Wake   module  by  Frank  Jepsen  (http://www.jepsen
139                     net.de/vdr/)
140
141              pertelian
142                     Pertelian X2040 module (http://pertelian.com/)
143
144              lis2   LIS2 from VLSystem (http://www.vlsys.co.kr), connected to
145                     USB
146
147              mplay  MPlay  Blast from VLSystem (http://www.vlsys.co.kr), con‐
148                     nected to USB
149
150              bwctusb
151                     USB-to-HD44780 converter by BWCT (http://www.bwct.de)
152
153              lcd2usb
154                     Till  Harbaum's   open   source/open   hardware   LCD2USB
155                     (http://www.harbaum.org/till/lcd2usb/)
156
157              uss720 USS-720 USB-to-IEEE 1284 Bridge (Belkin F5U002 USB Paral‐
158                     lel Printer Adapters)
159
160              i2c    LCD in 4-bit mode driven by PCF8574(A) / PCA9554(A), con‐
161                     nected via I2C bus
162
163              ftdi   USB connection via a FTDI FT2232D chip in bitbang mode
164
165              ethlcd TCP  connection  using  open  source/open hardware ethlcd
166                     (http://manio.skyboo.net/ethlcd/)
167
168              usblcd LCD device from Adams IT Services (http://www.usblcd.de/)
169
170       i2500vfd
171              140x32 pixel VFD Display of the Intra2net Intranator 2500 appli‐
172              ance
173
174       icp_a106
175              ICP A106 alarm/LCD board in 19" rack cases by ICP
176
177       imon   iMON   IR/VFD  modules  in  cases  by  Soundgraph/Ahanix/Silver‐
178              stone/Uneed/Accent
179
180       imonlcd
181              iMON  IR/LCD  modules  in  cases  by   Soundgraph/Ahanix/Silver‐
182              stone/Uneed/Accent/Antec
183
184       irtrans
185              IRTrans IR/VFD modules in cases by Ahanix (e.g. MCE303) and pos‐
186              sibly        others         May         require         irserver
187              (http://www.irtrans.de/en/download/linux.php)  to be running for
188              connectivity.
189
190       IOWarrior
191              Code Mercenaries IOWarrior
192
193       irman  IrMan infrared (input)
194
195       joy    Joystick driver (input)
196
197       lb216  LB216 LCD displays
198
199       lcdm001
200              kernelconcepts.de 20x4 serial LCD displays
201
202       lcterm serial   LCD   terminal   from   Helmut    Neumark    Elektronik
203              (http://www.neumark.de)
204
205       lirc   Infrared (input)
206
207       lis    L.I.S MCE 2005 20x2 VFD (http://vlsys.co.kr)
208
209       MD8800 VFD displays in Medion MD8800 PCs
210
211       ms6931 MSI-6931 displays in 1U rack servers by MSI
212
213       mtc_s16209x
214              MTC_S16209x LCD displays by Microtips Technology Inc
215
216       MtxOrb Matrix Orbital displays (except Matrix Orbital GLK displays)
217
218       mx5000 LCD display on the Logitech MX5000 keyboard
219
220       NoritakeVFD
221              Noritake VFD Device CU20045SCPB-T28A
222
223       picolcd
224              Mini-box.com USB LCD (PicoLCD 20x4 & picoLCD 20x2)
225
226       pyramid
227              LCD displays from Pyramid (http://www.pyramid.de)
228
229       sed1330
230              SED1330/SED1335 (aka S1D13300/S1D13305) based graphical displays
231
232       sed1520
233              122x32 pixel graphic displays based on SED1520 controllers
234
235       serialPOS
236              Driver for Point Of Sale ("POS") devices using various protocols
237              (currently AEDEX only)
238
239       serialVFD
240              Text VFDs of various manufacturers, see LCDproc  user-documenta‐
241              tion for further details.
242
243       shuttleVFD
244              Shuttle VFD (USB-based)
245
246       sli    Wirz SLI driver (unknown)
247
248       stv5730
249              STV5730A on-screen display chip
250
251       svga   VGA monitors using svgalib
252
253       t6963  Toshiba T6963 based LCD displays
254
255       text   Standard "hard-copy" text display
256
257       tyan   LCD module in Tyan Barebone GS series
258
259       ula200 ULA-200 device from ELV (http://www.elv.de)
260
261       xosd   On Screen Display on X11
262
263       Multiple  drivers  can  be  used  simultaneously;  thus, for example, a
264       Matrix Orbital display (MtxOrb driver) can be combined with an infrared
265       driver (irmanin driver).
266
267

INVOCATION

269              LCDd -d MtxOrb -d joy
270       The  invocation example above will start LCDd reading its configuration
271       from the default  configuration  file  /etc/sysconfig/lcdproc/LCDd.conf
272       but  overriding  the  drivers specified therein with the Matrix Orbital
273       driver and the Joystick input driver.
274
275

LCDPROC CLIENT-SERVER PROTOCOL

277       There is a basic sequence:
278
279       1. Open a TCP connection to the LCDd server port (usually 13666).
280
281       2. Say "hello"
282
283       3. The server will return some information on the type
284              of display available.
285
286       4. Define (and use) a new screen and its widgets.
287
288       5. Close the socket when done displaying data.
289
290   CLIENT COMMANDS
291       There are many commands for the client to send to the LCDd server:
292
293       hello  This starts a client-server session with the  LCDd  server;  the
294              server  will  return a data string detailing the type of display
295              and its size.
296
297       client_set -name name
298              Set the client's name.
299
300       screen_add #id
301              Add a new screen to the display.
302
303       screen_del #id
304              Remove a screen from the display.
305
306       screen_set #id [-name name ]  [-wid  width]  [-hgt  height]  [-priority
307       prio]  [-duration  int]  [-timeout  int]  [-heartbeat mode] [-backlight
308       mode] [-cursor mode] [-cursor_x xpos] [-cursor_y ypos]
309              Initialize a screen, or reset its data.
310
311       widget_add #screen #id type [-in #frame]
312              Add a widget of type type to screen #screen.
313
314       widget_del #screen #id
315              Delete widget #id from screen #screen.
316
317       widget_set #screen #id data
318              Set the data used to define a particular widget  #id  on  screen
319              #screen.
320
321
322   HEARTBEAT MODES
323       Valid heartbeat mode values (for the screen_set command) are:
324
325       on     Display pulsing heart symbol.
326
327       off    No heartbeat display.
328
329       open   Use client's heartbeat setting. This is the default.
330
331
332   BACKLIGHT MODES
333       Valid heartbeat mode values (for the screen_set command) are:
334
335       on     Turn backlight on.
336
337       off    Turn backlight off
338
339       toggle Turn backlight off when it is on and vice versa.
340
341       open   Use client's backlight setting. This is the default.
342
343       blink  Blinking backlight
344
345       flash  Flashing blacklight
346
347
348   Priorities
349       Valid  priority  settings  (used in the screen_set command) are as fol‐
350       lows:
351
352       input  The client is doing interactive input.
353
354       alert  The screen has an important message for the user.
355
356       foreground
357              an active client
358
359       info   Normal info screen, default priority.
360
361       background
362              The screen is only visible when no normal info screens exists.
363
364       hidden The screen will never be visible.
365
366       For compatibility with older versions of clients a mapping  of  numeric
367       priority values is also supported:
368
369       1 - 64 foreground
370
371       65 - 192
372              normal
373
374       193 - (infinity)
375              background
376
377       An example of how to properly use priorities is as follows:
378
379       Imagine  you're  making  an  mp3  player  for  lcdproc.   When the song
380       changes, it's nice to display the new name immediately.  So, you  could
381       set  your  screen's priority to foreground, wait for the server to dis‐
382       play (or ignore) your screen, then set the screen back to normal.  This
383       would  cause the mp3 screen to show up as soon as the one on screen was
384       finished, then return to normal priority afterward.
385
386       Or, let's say your client monitors the health of hospital patients.  If
387       one of the patients has a heart attack, you could set the screen prior‐
388       ity to alert, and it would be displayed immediately.  It wouldn't  even
389       wait  for  the previous screen to finish.  Also, the display would stay
390       on screen most of the time until the user did something about it.
391
392
393   WIDGET TYPES
394       Widgets can be any of the following:
395
396       string A text string to display (as is).
397
398       hbar   A horizontal bar graph.
399
400       vbar   A vertical bar graph.
401
402       title  A title displayed across the top of the display, within  a  ban‐
403              ner.
404
405       icon   A graphic icon.
406
407       scroller
408              A  scrolling text display, scrolling either horizontally or ver‐
409              tically.
410
411       frame  A container to contain other widgets, permitting them to be ref‐
412              ered  to  as  a  single unit.  A widget is put inside a frame by
413              using the -in #id parameter, where #id refers to the id  of  the
414              frame.
415
416       num    Displays a large decimal digit
417
418       Widgets are drawn on the screen in the order they are created.
419
420
421   SETTING WIDGET DATA
422       In the widget_set command, the data argument depends on which widget is
423       being set.  Each widget takes  a  particular  set  of  arguments  which
424       defines its form and behavior:
425
426       string x y text
427              Displays text at position (x,y).
428
429       title text
430              Uses text as title to display.
431
432       hbar x y length
433              Displays  a  horizontal  bar  starting at position (x,y) that is
434              length pixels wide.
435
436       vbar x y length
437              Displays a vertical bar  starting  at  position  (x,y)  that  is
438              length pixels high.
439
440       icon x y name
441              Displays the icon name at position (x,y).
442
443       scroller left top right bottom direction speed text
444              The  text  defined  will scroll in the direction defined.  Valid
445              directions are h  (horizontal)  and  v  (vertical).   The  speed
446              defines  how many "movements" (or changes) will occur per frame.
447              A positive number indicates frames per movement; a negative num‐
448              ber indicates movements per frame.
449
450       frame left top right bottom wid hgt dir speed
451              Frames  define  a  visible "box" on screen, from the (left, top)
452              corner to the (right, bottom) corner.  The actual  data  may  be
453              bigger,  and is defined as wid (width) by hgt (height); if it is
454              bigger, then the frame will scroll in the  direction  (dir)  and
455              speed defined.
456
457       num x int
458              Displays  large  decimal digit int at the horizontal position x,
459              which is a normal character x coordinate on  the  display.   The
460              special value 10 for int displays a colon.
461
462

BUGS

464       If  LCDd seems not to work as expected, try to run it in the foreground
465       with reporting level set to maximum and reporting to stderr.  This  can
466       be  achieved  without  changes  to the config file by using the command
467       line:
468              LCDd -f -r 5 -s 0
469
470

FILES

472       /etc/sysconfig/lcdproc/LCDd.conf, LCDd's default configuration file
473
474

SEE ALSO

476       lcdproc-config(5), lcdproc(1), lcdexec(1)
477
478

AUTHOR

480       LCDd was originally written by William Ferrell (wwf@splatwerks.org) and
481       Scott Scriven (scriven@cs.colostate.edu).
482
483       Since that time various people have contributed to LCDproc.
484
485       The newest version of LCDd should be available from here as part of the
486       lcdproc package:
487
488                       http://www.lcdproc.org/
489
490
492       The lcdproc package is released as "WorksForMe-Ware".  In other  words,
493       it is free, kinda neat, and we don't guarantee that it will do anything
494       in particular on any machine except the ones it was developed on.
495
496       It is technically released under the GNU GPL license (you  should  have
497       received   the   file,   "COPYING",   with   LCDproc)  (also,  look  on
498       http://www.fsf.org/ for more information), so you  can  distribute  and
499       use  it  for free -- but you must make the source code freely available
500       to anyone who wants it.
501
502       For any sort of real legal information, read the GNU GPL  (GNU  General
503       Public License).  It's worth reading.
504
505
506
507
508
509LCDproc                           14 May 2009                          LCDd(8)
Impressum