1LCDd(8) LCDproc suite LCDd(8)
2
3
4
6 LCDd - LCDproc server daemon
7
8
10 LCDd [-hf] [-c config] [-d driver] [-i bool] [-a addr] [-p port] [-u
11 user] [-w time] [-r level] [-s bool]
12
13
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/LCDd.conf, some of them can be overriden using command line
21 options. Before running LCDd you should carefully read through that
22 file and modify everything neccessary according to your needs. Other‐
23 wise you might encounter LCDd not running properly on your system.
24
25 To make full use of LCDd, a client such as lcdproc(1), lcdexec(1), or
26 lcdvd is required.
27
28
30 Available options are:
31
32 -h Display help screen
33
34 -c config
35 Use a configuration file other than /etc/LCDd.conf
36
37 -d driver
38 Specify a driver to use (output only to first), overriding the
39 Driver parameter in the config file's [Server] section.
40
41 -f Run in the foreground, overriding the Foreground parameter in
42 the config file's [Server] section. The default, if not speci‐
43 fied in the config file, is to daemonize LCDd as it is intended
44 to operate in the background.
45
46 -i bool
47 Tell whether the to enable (1) or disable (0) showing the LCD‐
48 proc server screen in n the screen rotation, overriding Server‐
49 Screen in the config file's [Server] section.
50
51 -w waittime
52 Time to pause at each screen (in seconds), overriding the Wait‐
53 Time parameter in the config file's [Server] section.
54
55 -a addr
56 Bind to network address addr, overriding the Bind parameter in
57 the config file's [Server] section.
58
59 -p port
60 Listen on port port for incoming connections, overriding the
61 Port parameter in the config file's [Server] section.
62
63 -u user
64 Run as user user, overriding the User parameter in the config
65 file's [Server] section.
66
67 -s bool
68 Output messages to syslog (1) or to stdout (0), overriding the
69 ReportToSyslog parameter in the config file's [Server] section.
70
71 -r level
72 Set reporting level to level, overriding th ReportLevel parame‐
73 ter in the config file's [Server] section.
74
75
76 SUPPORTED DRIVERS
77 Currently supported display drivers include:
78
79 bayrad BayRAD LCD modules by EMAC Inc.
80
81 CFontz CrystalFontz CFA-632 and CFA-634 serial LCD displays
82
83 CFontz633
84 CrystalFontz CFA-633 serial/USB LCD displays
85
86 CFontzPacket
87 CrystalFontz CFA-631, CFA-633 and CFA-635 serial/USB LCD dis‐
88 plays
89
90 curses Standard video display using the (n)curses library
91
92 CwLnx serial/USB displays by Cwlinux (http://www.cwlinux.com)
93
94 ea65 VFD front panel display on Aopen XC Cube EA65 media barebone
95
96 EyeboxOne
97 LCD display on the EyeboxOne (http://www.rightvision.com)
98
99 g15 LCD display on the Logitech G15 keyboard
100
101 glcdlib
102 graphical LCDs supported by graphlcd-base
103
104 glk Matrix Orbital GLK Graphic Displays
105
106 hd44780
107 Hitachi HD44780 LCD displays. This driver supports the follow‐
108 ing sub-drivers (a.k.a. connection types):
109
110 4bit LCD 4bit-mode, connected to a PC parallel port
111
112 8bit LCD 8bit-mode, connected to a PC parallel port
113
114 serialLpt
115 LCD in 4bit-mode through a 4094 shift register
116
117 winamp LCD in 8bit-mode using WinAmp-wiring, connected to a PC
118 parallel port
119
120 picanlcd
121 LCD driven by a PIC-an-LCD chip/board by Dale Wheat, con‐
122 nected to a serial port
123
124 lcdserializer
125 LCD driven by a PIC16C54-based piggy-back board, con‐
126 nected to a serial port
127
128 los-panel
129 LCD driven by an Atmel AVR based board, connected to a
130 serial port
131
132 vdr-lcd
133 ???, connected to a serial port
134
135 vdr-wakeup
136 VDR-Wake module by Frank Jepsen (http://www.jepsen‐
137 net.de/vdr/)
138
139 pertelian
140 Pertelian X2040 module (http://pertelian.com/)
141
142 lis2 LIS2 from VLSystem (http://www.vlsys.co.kr), connected to
143 USB
144
145 bwctusb
146 USB-to-HD44780 converter by BWCT (http://www.bwct.de)
147
148 lcd2usb
149 Till Harbaum's open source/open hardware LCD2USB
150 (http://www.harbaum.org/till/lcd2usb/)
151
152 i2c LCD in 4-bit mode driven by PCF8574(A) / PCA9554(A), con‐
153 nected via I2C bus
154
155 icp_a106
156 ICP A106 alarm/LCD board in 19" rack cases by ICP
157
158 imon iMON IR/VFD modules in cases by Soundgraph/Ahanix/Silver‐
159 stone/Uneed/Accent
160
161 IOWarrior
162 Code Mercenaries IOWarrior
163
164 irman IrMan infrared (input)
165
166 joy Joystick driver (input)
167
168 lb216 LB216 LCD displays
169
170 lcdm001
171 kernelconcepts.de 20x4 serial LCD displays
172
173 lcterm serial LCD terminal from Helmut Neumark Elektronik
174 (http://www.neumark.de)
175
176 lirc Infrared (input)
177
178 MD8800 VFD displays in Medion MD8800 PCs
179
180 ms6931 MSI-6931 displays in 1U rack servers by MSI
181
182 mtc_s16209x
183 MTC_S16209x LCD displays by Microtips Technology Inc
184
185 MtxOrb Matrix Orbital displays (except Matrix Orbital GLK displays)
186
187 NoritakeVFD
188 Noritake VFD Device CU20045SCPB-T28A
189
190 picolcd
191 Mini-box.com USB LCD (picoLCD 20x2)
192
193 pyramid
194 LCD displays from Pyramid (http://www.pyramid.de)
195
196 sed1330
197 SED1330/SED1335 (aka S1D13300/S1D13305) based graphical displays
198
199 sed1520
200 122x32 pixel graphic displays based on SED1520 controllers
201
202 serialVFD
203 NEC (FIPC8367 based) and FUTABA VFDs
204
205 sli Wirz SLI driver (unknown)
206
207 stv5730
208 STV5730A on-screen display chip
209
210 svga VGA monitors using svgalib
211
212 t6963 Toshiba T6963 based LCD displays
213
214 text Standard "hard-copy" text display
215
216 tyan LCD module in Tyan Barebone GS series
217
218 ula200 ULA-200 device from ELV (http://www.elv.de)
219
220 xosd On Screen Display on X11
221
222 Multiple drivers can be used simultaneously; thus, for example, a
223 Matrix Orbital display (MtxOrb driver) can be combined with an infrared
224 driver (irmanin driver).
225
226
228 LCDd -d MtxOrb -d joy
229 The invocation example above will start LCDd reading its configuration
230 from the default configuration file /etc/LCDd.conf but overriding the
231 drivers specified therein with the Matrix Orbital driver and the Joy‐
232 stick input driver.
233
234
236 There is a basic sequence:
237
238 1. Open a TCP connection to the LCDd server port (usually 13666).
239
240 2. Say "hello"
241
242 3. The server will return some information on the type
243 of display available.
244
245 4. Define (and use) a new screen and its widgets.
246
247 5. Close the socket when done displaying data.
248
249 CLIENT COMMANDS
250 There are many commands for the client to send to the LCDd server:
251
252 hello This starts a client-server session with the LCDd server; the
253 server will return a data string detailing the type of display
254 and its size.
255
256 client_set -name name
257 Set the client's name.
258
259 screen_add #id
260 Add a new screen to the display.
261
262 screen_del #id
263 Remove a screen from the display.
264
265 screen_set #id [-name name ] [-wid width] [-hgt height] [-priority
266 prio] [-duration int] [-timeout int] [-heartbeat mode] [-backlight
267 mode] [-cursor mode] [-cursor_x xpos] [-cursor_y ypos]
268 Initialize a screen, or reset its data.
269
270 widget_add #screen #id type [-in #frame]
271 Add a widget of type typeto screen #screen.
272
273 widget_del #screen #id
274 Delete widget #id from screen #screen.
275
276 widget_set #screen #id data
277 Set the data used to define a particular widget #id on screen
278 #screen.
279
280
281 HEARTBEAT MODES
282 Valid heartbeat mode values (for the screen_set command) are:
283
284 on Display pulsing heart symbol.
285
286 off No heartbeat display.
287
288 open Use client's heartbeat setting. This is the default.
289
290
291 BACKLIGHT MODES
292 Valid heartbeat mode values (for the screen_set command) are:
293
294 on Turn backlight on.
295
296 off Turn backlight off
297
298 toggle Turn backlight off when it is on and vice versa.
299
300 open Use client's backlight setting. This is the default.
301
302 blink Blinking backlight
303
304 flash Flashing blacklight
305
306
307 Priorities
308 Valid priority settings (used in the screen_set command) are as fol‐
309 lows:
310
311 input The client is doing interactive input.
312
313 alert The screen has an important message for the user.
314
315 foreground
316 an active client
317
318 info Normal info screen, default priority.
319
320 background
321 The screen is only visible when no normal info screens exists.
322
323 hidden The screen will never be visible.
324
325 For compatibility with older versions of clients a mapping of numeric
326 priority values is also supported:
327
328 1 - 64 foreground
329
330 65 - 192
331 normal
332
333 193 - (infinity)
334 background
335
336 An example of how to properly use priorities is as follows:
337
338 Imagine you're making an mp3 player for lcdproc. When the song
339 changes, it's nice to display the new name immediately. So, you could
340 set your screen's priority to foreground, wait for the server to dis‐
341 play (or ignore) your screen, then set the screen back to inormal.
342 This would cause the mp3 screen to show up as soon as the one onscreen
343 was finished, then return to normal priority afterward.
344
345 Or, let's say your client monitors the health of hospital patients. If
346 one of the patients has a heart attack, you could set the screen prior‐
347 ity to alert, and it would be displayed immediately. It wouldn't even
348 wait for the previous screen to finish. Also, the display would stay
349 on screen most of the time until the user did something about it.
350
351
352 WIDGET TYPES
353 Widgets can be any of the following:
354
355 string A text string to display (as is).
356
357 hbar A horizontal bar graph.
358
359 vbar A vertical bar graph.
360
361 title A title displayed across the top of the display, within a ban‐
362 ner.
363
364 icon A graphic icon.
365
366 scroller
367 A scrolling text display, scrolling either horizontally or ver‐
368 tically.
369
370 frame A container to contain other widgets, permitting them to be ref‐
371 ered to as a single unit. A widget is put inside a frame by
372 using the -in #id parameter, where #id refers to the id of the
373 frame.
374
375 Widgets are drawn on the screen in the order they are created.
376
377
378 SETTING WIDGET DATA
379 In the widget_set command, the data argument depends on which widget is
380 being set. Each widget takes a particular set of arguments which
381 defines its form and behavior:
382
383 string x y text
384 Displays text at position (x,y).
385
386 title text
387 Uses text as title to display.
388
389 hbar x y length
390 Displays a horizontal bar starting at position (x,y) that is
391 length pixels wide.
392
393 vbar x y length
394 Displays a vertical bar starting at position (x,y) that is
395 length pixels high.
396
397 icon x y name
398 Displays the icon name at position (x,y).
399
400 scroller left top right bottom direction speed text
401 The text defined will scroll in the direction defined. Valid
402 directions are h (horizontal) and v (vertical). The speed
403 defines how many "movements" (or changes) will occur per frame.
404 A positive number indicates frames per movement; a negative num‐
405 ber indicates movements per frame.
406
407 frame left top right bottom wid hgt dir speed
408 Frames define a visible "box" on screen, from the (left, top)
409 corner to the (right, bottom) corner. The actual data may be
410 bigger, and is defined as wid (width) by hgt (height); if it is
411 bigger, then the frame will scroll in the direction (dir) and
412 speed defined.
413
414 num x int
415 Displays large decimal digit int at the horizontal position x,
416 which is a normal character x coordinate on the display. The
417 special value 10 for int displays a colon.
418
419
421 If LCDd seems not to work as expected, try to run it in the foreground
422 with reporting level set to maximum and reporting to stderr. This can
423 be achieved without changes to the config file by using the command
424 line:
425 LCDd -f -r 5 -s 0
426
427
429 /etc/LCDd.conf, LCDd's default configuration file
430
431
433 lcdproc-config(5), lcdproc(1), lcdexec(1)
434
435
437 LCDd was originally written by William Ferrell (wwf@splatwerks.org) and
438 Scott Scriven (scriven@cs.colostate.edu).
439
440 Since that time various people have contributed to LCDproc.
441
442 The newest version of LCDd should be available from here as part of the
443 lcdproc package:
444
445 http://www.lcdproc.org/
446
447
449 The lcdproc package is released as "WorksForMe-Ware". In other words,
450 it is free, kinda neat, and we don't guarantee that it will do anything
451 in particular on any machine except the ones it was developed on.
452
453 It is technically released under the GNU GPL license (you should have
454 received the file, "COPYING", with LCDproc) (also, look on
455 http://www.fsf.org/ for more information), so you can distribute and
456 use it for free -- but you must make the source code freely available
457 to anyone who wants it.
458
459 For any sort of real legal information, read the GNU GPL (GNU General
460 Public License). It's worth reading.
461
462
463
464
465
466LCDproc 18 September 2006 LCDd(8)