Antec Fusion v2 Black LCD
From Fox Media Systems
Contents |
Antec Fusion Black LCD Configuration
Many people have had trouble setting up the Antec Fusion Black Case Devices (LCD, Knob, IR Receiver). To that end I have worked through this process from several posts in the forums and blogs and now have a successful install path. This install path has been tested and verified within the Mythbuntu Community.
Requirements
Hardware Requirements
This is article is designed for the Antec Fusion v2 Black Micro ATX case. It has been tested on the SoundGraph Inc. iMON PAD Remote Controller model ffdc with Ubuntu 8.10 (Intrepid Ibex)
To determine if you have the correct hardware do the following:
~$ lsusb
This should output something similar to the following:
Bus 001 Device 004: ID 15c2:ffdc SoundGraph Inc. iMON PAD Remote Controller
The important piece to note here is 15c2:ffdc as this provides the hardware model. While other models may work, this wiki is focused and tested on this model.
Software Requirements
The following software packages are required:
- lirc: 0.8.3-0ubuntu2 (or newer, this has been tested with lirc 0.8.4a as well)
- lcdproc: 0.5.2
- lcdproc 0.5.2 imonlcd patch
- build-essential
- autoconf
Installation
- Ensure Apt Cache is up-to-date
~$ sudo apt-get update
- Install Required Packages
~$ sudo apt-get install lirc build-essential autoconf
- Note: If you already have lirc installed ensure you are using the lirc_imon remote module
Configure Lirc
- Edit the hardware.conf file, you can copy and paste the version below or modify it by hand.
Before making changes to any configuration file ensure it is backed up
~$ cd /etc/lirc/ ~$ sudo mv hardware.conf hardware.conf.save ~$ sudo mv lircd.conf lircd.conf.save ~$ sudo nano hardware.conf
hardware.conf
# /etc/lirc/hardware.conf # #Chosen Remote Control REMOTE="Soundgraph iMON IR/LCD" REMOTE_MODULES="lirc_dev lirc_imon" REMOTE_DRIVER="" REMOTE_DEVICE="/dev/lirc0" REMOTE_LIRCD_CONF="imon/lircd.conf.imon" REMOTE_LIRCD_ARGS="" #Chosen IR Transmitter TRANSMITTER="None" TRANSMITTER_MODULES="" TRANSMITTER_DRIVER="" TRANSMITTER_DEVICE="" TRANSMITTER_LIRCD_CONF="" TRANSMITTER_LIRCD_ARGS="" #Enable lircd START_LIRCD="true" #Don't start lircmd even if there seems to be a good config file #START_LIRCMD="false" #Try to load appropriate kernel modules LOAD_MODULES="true" # Default configuration files for your hardware if any LIRCMD_CONF="" #Forcing noninteractive reconfiguration #If lirc is to be reconfigured by an external application #that doesn't have a debconf frontend available, the noninteractive #frontend can be invoked and set to parse REMOTE and TRANSMITTER #It will then populate all other variables without any user input #If you would like to configure lirc via standard methods, be sure #to leave this set to "false" FORCE_NONINTERACTIVE_RECONFIGURATION="false" START_LIRCMD=""
lircd.conf
# Please make this file available to others
# by sending it to <lirc@bartelmus.de>
#
# this config file was automatically generated
# using lirc-0.8.3pre1(default) on Fri Mar 28 16:50:18 2008
#
# contributed by John Baab <john.baab@gmail.com>
#
# brand: AntecFusionMCE.conf
# model no. of remote control:
# devices being controlled by this remote:
#
begin remote
name AntecFusionMCE.conf
bits 32
eps 30
aeps 100
one 0 0
zero 0 0
gap 203989
toggle_bit_mask 0x8000
begin codes
tv_power 0x800F0465
power 0x800F040C
pause 0x800F0418
record 0x800F0417
stop 0x800F0419
play 0x800F0416
fastforward 0x800F0414
rewind 0x800F0415
replay 0x800F041B
skip 0x800F041A
back 0x800F0423
more 0x800F040F
up 0x800F041E
down 0x800F041F
ok 0x800F0422
right 0x800F0421
left 0x800F0420
vol_up 0x800F0410
vol_down 0x800F0411
ch_up 0x800F0412
ch_down 0x800F0413
menu 0x800F040D
mute 0x800F040E
dvd_menu 0x800F0424
live_tv 0x800F0425
guide 0x800F0426
recorded_tv 0x800F0448
1 0x800F0401
2 0x800F0402
3 0x800F0403
4 0x800F0404
5 0x800F0405
6 0x800F0406
7 0x800F0407
8 0x800F0408
9 0x800F0409
0 0x800F0400
# 0x800F041C
* 0x800C041D
CLEAR 0x800F040A
enter 0x800F040B
knob_left 0x01000000
knob_right 0x00010000
end codes
end remote
begin remote
name ClickWheel
bits 24
eps 30
aeps 100
one 0 0
zero 0 0
post_data_bits 8
post_data 0xFF
gap 131993
toggle_bit 0
begin codes
VOLDOWN 0x010000
VOLUP 0x000100
WheelClick 0x000008
end codes
end remote
- Note: This can also be pasted into its own file and included by adding the include statement
include /path/to/conf/file.conf
Configure lirc_imon module options
- Edit the modprobe options file:
sudo nano /etc/modprobe.d/options
- Add the following lines at the end of the file:
# Enable Soundgrpah LCD in lirc_imon module options lirc_imon is_lcd=1
Install LCDproc
Currently LCDproc requires a patch for the imonlcd driver. So you will need to grab the source and apply the patch.
Change to the Source Directory
~$ cd /usr/src/
Download LCDproc source and patch
Note: sudo is required here because of the permissions on the source directory
~$ sudo wget http://downloads.sourceforge.net/lcdproc/lcdproc-0.5.2.tar.gz ~$ sudo wget http://codeka.com/blogs/imon/lcdproc-0.5.2-imonlcd-0.3.patch
Unpack the Tarball and apply the patch
~$ sudo tar -zxvf lcdproc-0.5.2.tar.gz ~$ cd lcdproc-0.5.2 ~$ sudo patch -p1 < ../lcdproc-0.5.2-imonlcd-0.3.patch
Build and Installation
Modify main.h RENDER_FREQ
~$ cd server/ ~$ sudo nano main.h
Now you will need to change this line:
#define RENDER_FREQ 8
--to--
#define RENDER_FREQ 2
The return to the root of the lcdproc directory:
~$ cd ../
Configure / Make / Install
Note: Your almost done, hang in there.
sudo aclocal && sudo autoconf && sudo automake
This will likely produce an output that looks like and error but can be ignored.
server/drivers/Makefile.am:80: compiling `IOWarrior.c' with per-target flags requires `AM_PROG_CC_C_O' in `configure.in'
Now its time to configure, make, and install lcdproc:
sudo ./configure --enable-drivers=imonlcd && sudo make && sudo make install
Note: Again since we are working in the /usr/src directory sudo permissions are required where they are normally not for the ./configure and make scripts
If the process does not present any errors you have successfully installed LCDproc from source. Now you will just need to configure lcdproc and MythTV to use the LCD device.
Configure LCDproc
Edit the LCDd.conf file to handle the new LCD device:
Cheaters Method
- Move the LCDd.conf to a backup copy and replace it with the posted one:
~$ sudo mv /usr/local/etc/LCDd.conf /usr/local/etc/LCDd.conf.save
- Create the new File:
~$ sudo nano /usr/local/etc/LCDd.conf
- Copy and Paste the conf file posted below:
# LCDd.conf -- configuration file for the LCDproc server daemon LCDd
#
# This file contains the configuration for the LCDd server.
#
# The format is ini-file-like. It is divided into sections that start at
# markers that look like [section]. Comments are all line-based comments,
# and are lines that start with '#' or ';'.
#
# The server has a 'central' section named [server]. For the menu there is
# a section called [menu]. Further each driver has a section which
# defines how the driver acts.
#
# The drivers are activated by specifiying them in a driver= line in the
# server section, like:
#
# Driver=curses
#
# This tells LCDd to use the curses driver.
# The first driver that is loaded and is capable of output defines the
# size of the display. The default driver to use is curses.
# If the driver is specified using the -d <driver> command line option,
# the Driver= options in the config file are ignored.
#
# The drivers read their own options from the respective sections.
## Server section with all kinds of settings for the LCDd server ##
[server]
# Tells the server to load the given drivers. Multiple lines can be given.
# The name of the driver is case sensitive and determines the section
# where to look for further configuration options of the specific driver
# as well as the name of the dynamic driver module to load at runtime.
# The latter one can be changed by giving af File= directive in the
# driver specific section.
#
# The following drivers are supported:
# bayrad, CFontz, CFontz633, CFontzPacket, curses, CwLnx, ea65,
# EyeboxOne, g15, glcdlib, glk, hd44780, icp_a106, imon, IOWarrior,
# irman, joy, lb216, lcdm001, lcterm, lirc, MD8800, ms6931, mtc_s16209x,
# MtxOrb, NoritakeVFD, picolcd, pyramid, sed1330, sed1520, serialPOS,
# serialVFD, sli, stv5730, svga, t6963, text, tyan, ula200, xosd
Driver=imonlcd
# Tells the driver to bind to the given interface
Bind=127.0.0.1
# Listen on this specified port; defaults to 13666.
Port=13666
# Sets the reporting level; defaults to 2 (warnings and errors only).
#ReportLevel=3
# Should we report to syslog instead of stderr ? Default: no
#ReportToSyslog=yes
# Sets the default time in seconds to displays a screen.
WaitTime=5
# User to run as. LCDd will drop its root priviledges,
# if any, and run as this user instead.
User=nobody
# If yes, the the serverscreen will be rotated as a usual info screen. If no,
# it will be a background screen, only visible when no other screens are
# active.
#ServerScreen=no
# The server will stay in the foreground if set to true.
#Foreground=no
# Where can we find the driver modules ?
# IMPORTANT: Make sure to change this setting to reflect your
# specific setup! Otherwise LCDd won't be able to find
# the driver modules and will thus not be able to
# function properly.
# NOTE: Always place a slash as last character !
DriverPath=/usr/local/lib/lcdproc/
# GoodBye message: each entry represents a display line; default: builtin
#GoodBye="Thanks for using"
#GoodBye=" LCDproc!"
# The "...Key=" lines define what the server does with keypresses that
# don't go to any client.
# These are the defaults:
ToggleRotateKey=Enter
PrevScreenKey=Left
NextScreenKey=Right
#ScrollUpKey=Up
#ScrollDownKey=Down
# If you have only 4 keys, you can choose to use this:
#ToggleRotateKey=Enter
#PrevScreenKey=Up
#NextScreenKey=Down
# If you have only 3 keys, you can choose to use this:
#ToggleRotateKey=Enter
#PrevScreenKey=Up
## The menu section. The menu is an internal LCDproc client. ##
[menu]
# You can configure what keys the menu should use. Note that the MenuKey
# will be reserved exclusively, the others work in shared mode.
# The following works excellent with 4 keys or more.
MenuKey=Escape
EnterKey=Enter
UpKey=Up
DownKey=Down
# If you have 6 keys you may define these as well
#LeftKey=Left
#RightKey=Right
# If you have only 3 keys, you could use something like this:
#MenuKey=Escape
#EnterKey=Enter
#DownKey=Down
### Driver sections are below this line, in alphabetical order ###
## IMON LCD driver added by xxx 5Sept08 ##
[imonlcd]
Device=/dev/lcd0
Contrast=200
## EMAC BayRAD driver ##
[bayrad]
# Select the output device to use [default: /dev/lcd]
Device=/dev/lcd
# Set the communication speed [default: 9600; legal: 1200, 2400, 9600, 19200]
Speed=9600
## CrystalFontz driver (for CF632 & CF634) ##
[CFontz]
# Select the output device to use [default: /dev/lcd]
Device=/dev/ttyS0
# Select the LCD size [default: 20x4]
Size=20x4
# Set the initial contrast [default: 560; legal: 0 - 1000]
Contrast=350
# Set the initial brightness [default: 1000; legal: 0 - 1000]
Brightness=1000
# Set the initial off-brightness [default: 0; legal: 0 - 1000]
# This value is used when the display is normally
# switched off in case LCDd is inactive
OffBrightness=0
# Set the communication speed [default: 9600; legal: 1200, 2400, 9600, 19200 or 115200]
Speed=9600
# Set the firmware version (New means >= 2.0) [default: no; legal: yes, no]
NewFirmware=no
# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
# normally you shouldn't need this
Reboot=no
## CrystalFontz633 driver (for CF633 only) ##
[CFontz633]
# Select the output device to use [default: /dev/lcd]
Device=/dev/ttyS0
# Select the LCD type (size) [default: 16x2]
Size=16x2
# Set the initial contrast [default: 560; legal: 0 - 1000]
Contrast=350
# Set the initial brightness [default: 1000; legal: 0 - 1000]
Brightness=1000
# Set the initial off-brightness [default: 0; legal: 0 - 1000]
# This value is used when the display is normally
# switched off in case LCDd is inactive
OffBrightness=50
# Set the communication speed [default: 9600; legal: 1200, 2400, 9600, 19200, 115200]
Speed=19200
# Set the firmware version (New means >= 2.0) [default: no; legal: yes, no]
# Currently this flag is not in use, there is no such thing as NewFirmware. ;=)
#NewFirmware=no
# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
# I want to reboot the LCD to make sure we start from a known state
Reboot=yes
## CrystalFontz packet driver (for CF631, CF633 & CF635) ##
[CFontzPacket]
# Select the LCD model [default: 633; legal: 631, 633, 635]
Model=635
# Select the output device to use [default: /dev/lcd]
Device=/dev/ttyUSB0
# Select the LCD size [default: depending on model: 635: 20x4, 631: 20x2, 633: 16x2]
Size=20x4
# Set the initial contrast [default: 560; legal: 0 - 1000]
Contrast=350
# Set the initial brightness [default: 1000; legal: 0 - 1000]
Brightness=1000
# Set the initial off-brightness [default: 0; legal: 0 - 1000]
# This value is used when the display is normally
# switched off in case LCDd is inactive
OffBrightness=50
# Set the communication speed [default: 9600; legal: 1200, 2400, 9600, 19200, 115200]
Speed=115200
# Set the firmware version (New means >= 2.0) [default: no; legal: yes, no]
# Currently this flag is not in use, there is no such thing as NewFirmware. ;=)
#NewFirmware=no
# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
# I want to reboot the LCD to make sure we start from a known state
Reboot=yes
## Curses driver ##
[curses]
# color settings
# foreground color [default: blue]
Foreground=blue
# background color when "backlight" is off [default: cyan]
Background=cyan
# background color when "backlight" is on [default: red]
Backlight=red
# display size [default: 20x4]
Size=20x4
# What position (X,Y) to start the left top corner at...
# Default: (7,7)
TopLeftX=7
TopLeftY=7
# use ASC symbols for icons & bars [default: no; legal, yes, no]
UseACS=no
## Cwlinux driver ##
[CwLnx]
# Select the LCD model [default: 12232; legal: 12232, 1602]
Model=12232
# Select the output device to use [default: /dev/lcd]
Device=/dev/ttyUSB0
# Select the LCD size [default: depending on model: 12232: 20x4, 1602: 16x2]
Size=20x4
# Set the communication speed [default: 19200; legal: 9600, 19200]
Speed=19200
# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
# normally you shouldn't need this
Reboot=no
# If you have a keypad connected. Keypad layout is currently not
# configureable from the config file.
Keypad=yes
# If you have a non-standard keypad you can associate any keystrings to keys.
# There are 6 input keys in the CwLnx hardware that generate characters
# from 'A' to 'F'.
#
# The following is the built-in default mapping hardcoded in the driver.
# You can leave those unchanged if you have a standard keypad.
# You can change it if you want to report other keystrings or have a non
# standard keypad.
# KeyMap_A=Up
# KeyMap_B=Down
# KeyMap_C=Left
# KeyMap_D=Right
# KeyMap_E=Enter
# KeyMap_F=Escape
# keypad_test_mode permits to test keypad assignement
# Default value is no
#keypad_test_mode=yes
## ea65 driver for the display in AOpen XC Cube AV EA65 media barebones ##
[ea65]
# Device is fixed /dev/ttyS1
# Width and Height are fixed 9x1
# As the VFD is self luminescent we don't have a backlight
# But we can use the backlight functions to control the front LEDs
# Brightness 0 to 299 -> LEDs off
# Brightness 300 to 699 -> LEDs half bright
# Brightness 700 to 1000 -> LEDs full bright
Brightness=500
# OffBrightness is the the value used for the 'backlight off' state
OffBrightness=0
## EyeboxOne driver ##
[EyeboxOne]
# Select the output device to use [default: /dev/ttyS1]
#Device=/dev/cua01
Device=/dev/ttyS1
# Set the display size [default: 20x4]
Size=20x4
# Switch on the backlight? [default: yes]
Backlight=yes
# Switch on the cursor? [default: no]
Cursor=no
# Set the communication speed [default: 19200; legal: 1200, 2400, 9600, 19200]
Speed=19200
# Enter Key is a \r character, so it's hardcoded in the driver
LeftKey=D
RightKey=C
UpKey=A
DownKey=B
EscapeKey=P
# You can find out which key of your display sends which
# character by setting keypad_test_mode to yes and running
# LCDd. LCDd will output all characters it receives.
# Afterwards you can modify the settings above and set
# keypad_set_mode to no again.
keypad_test_mode=no
## g15 driver for Logitech G15 Keyboard LCDs ##
[g15]
# Display size (currently unused)
size=20x5
## glcdlib meta driver for graphical LCDs ##
[glcdlib]
## mandatory:
# which graphical display supported by graphlcd-base to use [default: image]
# (see /etc/graphlcd.conf for possible drivers)
Driver=noritake800
# no=use graphlcd bitmap fonts (they have only one size / font file)
# yes=use fonts supported by FreeType2 (needs Freetype2 support in libglcdprocdriver and its dependants)
UseFT2=yes
# text resolution in fixed width characters [default: 16x4]
# (if it won't fit according to available physical pixel resolutioni
# and the minimum available font face size in pixels, then
# 'DebugBorder' will automatically be turned on)
TextResolution=20x4
# path to font file to use
FontFile=/usr/share/fonts/corefonts/courbd.ttf
## these only apply if UseFT2=yes:
# character encoding to use
CharEncoding=iso8859-2
# minumum size in pixels in which fonts should be rendered
MinFontFaceSize=7x12
## optional:
Brightness=50 # Brightness (in %) if applicable
Contrast=50 # Contrast (in %) if applicable
Backlight=no # Backlight if applicable
UpsideDown=no # flip image upside down
Invert=no # invert light/dark pixels
ShowDebugFrame=no # turns on/off 1 pixel thick debugging
# border whithin the usable text area,
# for setting up TextResolution and
# MinFontFaceSize (if using FT2);
ShowBigBorder=no # border around the unused area
ShowThinBorder=yes # border around the unused area
PixelShiftX=0
PixelShiftY=2
## Matrix Orbital GLK driver ##
[glk]
# select the serial device to use [default: /dev/lcd]
Device=/dev/lcd
# set the initial contrast value [default: 560; legal: 0 - 1000]
Contrast=560
# set the serial port speed [default: 19200; legal: 9600, 19200, 38400]
Speed=19200
## Hitachi HD44780 driver ##
[hd44780]
# Select what type of connection. See documentation for types.
ConnectionType=4bit
# Port where the LPT is. Usual values are 0x278, 0x378 and 0x3BC
Port=0x378
# Device of the serial interface (default is /dev/lcd)
Device=/dev/ttyS0
# Bitrate of the serial port (0 for interface default)
Speed=0
# If you have a keypad connected.
# You may also need to configure the keypad layout further on in this file.
Keypad=no
# set the initial contrast (for bwctusb only) [default: 0; legal: 0 - 1000]
Contrast=0
# If you have a switchable backlight.
Backlight=no
# If you have the additional output port ("bargraph") and you want to
# be able to control it with the lcdproc OUTPUT command
OutputPort=no
# Specifies if the last line is pixel addressable or it controls an
# underline effect. [default: true (= pixel addressable); legal: yes, no]
#Lastline=true
# Specifies the size of the LCD.
# In case of multiple combined displays, this should be the total size.
Size=20x4
# For multiple combined displays: how many lines does each display have.
# Vspan=2,2 means both displays have 2 lines.
#vspan=2,2
# If you have an HD66712, a KS0073 or an other 'almost HD44780-compatible',
# set this flag to get into extended mode (4-line linear).
# This flag is NOT the old obsolete Extended option.
#ExtendedMode=yes
# Character map to to map ISO-8859-1 to the LCD's character set
# [default: hd44780_default; legal: hd44780_default, ea_ks0073, sed1278f_0b ]
Charmap=hd44780_default
# If your display is slow and cannot keep up with the flow of data from
# LCDd, garbage can appear on the LCDd. Set this delay factor to 2 or 4
# to increase the delays. Default: 1.
#DelayMult=2
# Some displays (e.g. vdr-wakeup) need a message from the driver to that it
# is still alive. When set to a value bigger then null the character in the
# upper left corner is updated every <KeepAliveDisplay> seconds. Default: 0.
#KeepAliveDisplay=0
# If you experience occasional garbage on your display you can use this
# option as workaround. If set to a value bigger than null it forces a
# full screen refresh <RefreshDiplay> seconds. Default: 0.
#RefreshDisplay=5
# You can reduce the inserted delays by setting this to false.
# On fast PCs it is possible your LCD does not respond correctly.
# Default: true.
DelayBus=true
# If you have a keypad you can assign keystrings to the keys.
# See documentation for used terms and how to wire it.
# For example to give directly connected key 4 the string "Enter", use:
# KeyDirect_4=Enter
# For matrix keys use the X and Y coordinates of the key:
# KeyMatrix_1_3=Enter
KeyMatrix_4_1=Enter
KeyMatrix_4_2=Up
KeyMatrix_4_3=Down
KeyMatrix_4_4=Escape
## ICP A106 driver ##
[icp_a106]
Device=/dev/ttyS1
## Code Mercenaries IO-Warrior driver ##
[IOWarrior]
# display dimensions
Size=20x4
# serial number [exactly as listed by usbview]
# (if not given, the 1st IOWarrior found gets used)
#SerialNumber=00000674
# Specifies if the last line is pixel addressable or it controls an
# underline effect. [default: true (= pixel addressable); legal: yes, no]
#Lastline=true
## Soundgraph/Ahanix/Silverstone/Uneed/Accent iMON driver ##
[imon]
# select the device to use
Device=/dev/lcd0
# display dimensions
Size=16x2
## IrMan driver ##
[IrMan]
#if in trouble with IrMan, try Lirc emulator for IrMan
# Select the input device to use
#Device=/dev/irman
# Select the configuration file to use
#Config=/etc/irman.cfg
## Joystick driver ##
[joy]
# Select the input device to use [default: /dev/js0]
Device=/dev/js0
# set the axis map
Map_Axis1neg=Left
Map_Axis1pos=Right
Map_Axis2neg=Up
Map_Axis2pos=Down
# set the button map
Map_Button1=Enter
Map_Button2=Escape
## LB216 driver ##
[lb216]
# Select the output device to use [default: /dev/lcd]
Device=/dev/lcd
# Set the initial brightness [default: 255; legal: 0 - 255]
Brightness=255
# Set the communication speed [default: 9600; legal: 2400, 9600]
Speed=9600
# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
Reboot=no
## LCDM001 driver ##
[lcdm001]
Device=/dev/ttyS1
# keypad settings
# Keyname Function
# Normal context Menu context
# ------- -------------- ------------
# PauseKey Pause/Continue Enter/select
# BackKey Back(Go to previous screen) Up/Left
# ForwardKey Forward(Go to next screen) Down/Right
# MainMenuKey Open main menu Exit/Cancel
PauseKey=LeftKey
BackKey=UpKey
ForwardKey=DownKey
MainMenuKey=RightKey
# You can rearrange the settings here.
# If your device is broken, have a look at server/drivers/lcdm001.h
## HNE LCTerm driver ##
[lcterm]
Device=/dev/ttyS1
Size=16x2
## LIRC input driver ##
[lirc]
# Specify an alternative location of the lircrc file [default: ~/.lircrc]
#lircrc=/etc/lircrc.lcdproc
# Must be the same as in your lircrc
#prog=lcdd
##The driver for the VFD of the Medion MD8800 PC ##
[MD8800]
# device to use [default: /dev/ttyS1]
#Device=/dev/ttyS1
# display size [default: 16x2]
#Size=16x2
# Set the initial brightness [default: 1000; legal: 0 - 1000]
Brightness=1000
# Set the initial off-brightness [default: 0; legal: 0 - 1000]
# This value is used when the display is normally
# switched off in case LCDd is inactive
OffBrightness=50
## MSI MS-6931 driver for displays in 1HU servers ##
[ms6931]
# device to use [default: /dev/ttyS1]
Device=/dev/ttyS1
# display size [default: 16x2]
#Size=16x2
## MTC-S16209x driver ##
[mtc_s16209x]
# Select the output device to use [default: /dev/lcd]
Device=/dev/lcd
# Set the initial brightness [default: 255; legal: 0 - 255]
Brightness=255
# Reinitialize the LCD's BIOS [default: no; legal: yes, no]
Reboot=no
## Matrix Orbital driver ##
[MtxOrb]
# Select the output device to use [default: /dev/lcd]
Device=/dev/ttyS0
# Set the display size [default: 20x4]
Size=20x4
# Set the display type [default: lcd; legal: lcd, lkd, vfd, vkd]
Type=lkd
# Set the initial contrast [default: 480]
# NOTE: The driver will ignore this if the display
# is a vfd or vkd as they don't have this feature
Contrast=480
# Set the initial brightness [default: 1000; legal: 0 - 1000]
Brightness=1000
# Set the initial off-brightness [default: 0; legal: 0 - 1000]
# This value is used when the display is normally
# switched off in case LCDd is inactive
OffBrightness=0
# Set the communication speed [default: 19200; legal: 1200, 2400, 9600, 19200]
Speed=19200
# The following table translates from MtxOrb key letters to logical key names.
# By default no keys are mapped, meaning the keypad is not used at all.
#KeyMap_A=Left
#KeyMap_B=Right
#KeyMap_C=Up
#KeyMap_D=Down
#KeyMap_E=Enter
#KeyMap_F=Escape
# See the [menu] section for an explanation of the key mappings
# You can find out which key of your display sends which
# character by setting keypad_test_mode to yes and running
# LCDd. LCDd will output all characters it receives.
# Afterwards you can modify the settings above and set
# keypad_set_mode to no again.
keypad_test_mode=no
## Noritake VFD driver ##
[NoritakeVFD]
# device where the VFD is. Usual values are /dev/ttyS0 and /dev/ttyS1 [default: /dev/lcd]
Device=/dev/ttyS0
# Specifies the size of the LCD.
Size=20x4
# set the brightness
Brightness=255
# set the serial port speed [default: 9600, legal: 1200, 2400, 9600, 19200, 115200]
Speed=9600
# re-initialize VFD ?
#Reboot=yes
## Mini-box.com picoLCD (usblcd) driver ##
[picolcd]
# This is for the Mini-Box.com usblcd device that ships with the M300. It can
# also be purchased separately but this driver has only been tested on the M300
# setup.
# KeyTimeout is the time that LCDd spends waiting for a key press before cycling
# through other duties. Higher values make LCDd use less CPU time and make
# key presses more detectable. Lower values make LCDd more responsive but a
# little prone to missing key presses. 500 (.5 second) is the default and a
# balanced value.
KeyTimeout=500
# Contrast: [default: 1000; legal: 0 - 1000]
Contrast=1000
# Light the keys? i[default: on; legal: on, off]
Keylights=on
# If Keylights is on, the you can unlight specific keys below:
# Key0 is the directional pad. Key1 - Key5 correspond to the F1 - F5 keys.
# There is no LED for the +/- keys. This is a handy way to indicate to users
# which keys are disabled. [default: on; legal: on, off]
Key0Light=on
Key1Light=on
Key2Light=on
Key3Light=on
Key4Light=on
Key5Light=on
## Pyramid LCD driver ##
[pyramid]
# device to connect to [default: /dev/lcd]
Device=/dev/ttyUSB0
## Seiko Epson 1330 driver ##
[sed1330]
# Port where the LPT is. Common values are 0x278, 0x378 and 0x3BC
Port=0x378
# Type of LCD module (legal: G321D, G121C, G242C, G191D, G2446, SP14Q002)
# Note: Currently only tested with G321D & SP14Q002.
Type=G321D
# Width x Height of a character cell in pixels [legal: 6x7 - 8x16; default: 6x10]
CellSize=6x10
# Select what type of connection [legal: classic, bitshaker; default: classic]
ConnectionType=classic
## Seiko Epson 1520 driver ##
[sed1520]
# Port where the LPT is. Usual values are 0x278, 0x378 and 0x3BC
Port=0x378
## serial POS display driver ##
[serialPOS]
# Device to use in serial modea [default: /dev/lcd]
Device=/dev/lcd
# Specifies the size of the display in characters. [default: 16x2]
Size=16x2
# Set the communication protocol to use with the POS display.
# [default: AEDEX; legal: IEE, Epson, Emax, IBM, LogicControls, Ultimate]
Type=AEDEX
# communication baud rate with the display [default: 9600; legal: 1200, 2400, 19200, 115200]
Speed=9600
## Serial VFD driver ##
## Drives various (see below) serial 5x7dot VFD's. ##
[serialVFD]
# Specifies the displaytype.[default: 0]
# 0 NEC (FIPC8367 based) VFDs.
# 1 KD Rev 2.1.
# 2 Noritake VFDs (*).
# 3 Futaba VFDs
# (* most should work, not testet yet.)
Type=0
# "no" if display connected serial, "yes" if connected parallel. [default: no(=serial)]
use_parallel=no
# Number of Custom-Characters [default: displaytype dependent]
#Custom-Characters=0
# Portaddress where the LPT is. Used in parallelmode only. Usual values are 0x278, 0x378 and 0x3BC
Port=0x378
# Device to use in serial mode. Usual values are /dev/ttyS0 and /dev/ttyS1
Device=/dev/ttyS1
# Specifies the size of the VFD.
Size=20x2
# Set the initial brightness [default: 1000; legal: 0 - 1000]
# (4 steps 0-250, 251-500, 501-750, 751-1000)
Brightness=1000
# Set the initial off-brightness [default: 0; legal: 0 - 1000]
# This value is used when the display is normally
# switched off in case LCDd is inactive
# (4 steps 0-250, 251-500, 501-750, 751-1000)
OffBrightness=0
# set the serial port speed [default: 9600; legal: 1200, 2400, 9600, 19200, 115200]
Speed=9600
# enable ISO 8859 1 compatibility [default: yes; legal: yes, no]
#ISO_8859_1=yes
## stv5730 driver ##
[stv5730]
# Port the device is connected to [default: 0x378]
Port=0x378
## SVGAlib driver ##
[svga]
# svgalib mode to use [default: G320x240x256; legal: supported svgalib modes]
#Mode=G640x480x256
# set display size [default: 20x4]
Size=20x4
# Set the initial contrast [default: 500; legal: 0 - 1000]
# Can be set but does not change anything internally
Contrast=500
# Set the initial brightness [default: 1000; legal: 1 - 1000]
Brightness=1000
# Set the initial off-brightness [default: 500; legal: 1 - 1000]
# This value is used when the display is normally
# switched off in case LCDd is inactive
OffBrightness=500
## Text driver ##
[text]
# Set the display size [default: 20x4]
Size=20x4
## Toshiba T6963 driver ##
[t6963]
# set display size [default: 20x6]
Size=20x6
# port to use [default: 0x378; legal: 0x200 - 0x400]
Port=0x378
# Is ECP mode on? [default: yes; legal: yes, no]
#ECPlpt=yes
# Use graphics? [default: no; legal: yes, no]
#graphic=no
## Tyan Barebones LCD driver (GS10 & GS12 series) ##
[tyan]
# Select the output device to use [default: /dev/lcd]
Device=/dev/lcd
# Set the communication speed [default: 9600; legal: 4800, 9600]
Speed=9600
# set display size [default: 16x2]
Size=16x2
## ELV ula200 driver ##
[ula200]
# Select the LCD size [default: 20x4]
Size=20x4
# If you have a non standard keypad you can associate any keystrings to keys.
# There are 6 input key in the CwLnx hardware that generate characters
# from 'A' to 'F'.
#
# The following it the built-in default mapping hardcoded in the driver.
# You can leave those unchanged if you have a standard keypad.
# You can change it if you want to report other keystrings or have a non
# standard keypad.
# KeyMap_A=Up
# KeyMap_B=Down
# KeyMap_C=Left
# KeyMap_D=Right
# KeyMap_E=Enter
# KeyMap_F=Escape
## Wirz SLI LCD driver ##
[sli]
# Select the output device to use [default: /dev/lcd]
Device=/dev/lcd
# Set the communication speed [default: 19200; legal: 1200, 2400, 9600, 19200, 38400, 57600, 115200]
Speed=19200
## OnScreen Display using libxosd ##
[xosd]
# set display size [default: 20x4]
Size=20x4
# font to use, in XLFD format, as given by "xfontsel"
Font=-*-terminus-*-r-*-*-*-320-*-*-*-*-*
# EOF
Hardcore Nerd Need to Know what the Changes are Method
- Edit the LCDd.conf file:
~$ sudo nano /usr/local/etc/LCDd.conf
- Change the Driver in the [server] section:
Driver=curses --and-- DriverPath=server/drivers/
--to--
Driver=imonlcd --and-- DriverPath=/usr/local/lib/lcdproc/
- Add the [imonlcd] section below the line ### Driver sections are below this line, in alphabetical order ###
## IMON LCD driver ##
[imonlcd]
Device=/dev/lcd0
Contrast=200
Add the init script to start LCDproc at boot
~$ sudo nano /etc/init.d/LCDd
LCDd init Script
#!/bin/sh
#### BEGIN INIT INFO
# Provides: LCDd
# Required-Start: $syslog $local_fs $network $remote_fs
# Required-Stop: $syslog $local_fs $network $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: S 0 1 6
# Short-Description: LCDproc Server Daemon
# Description: Debian init script for LCDd, the display
# server daemon in the LCDproc suite
### END INIT INFO
# local variables
prefix=/usr/local
exec_prefix=${prefix}
bindir=${exec_prefix}/bin
sbindir=${exec_prefix}/sbin
etc=${prefix}/etc
NAME=LCDd
DAEMON=${sbindir}/${NAME}
DESC="LCDd display server daemon"
OPTIONS=""
# installation check
test -x ${DAEMON} || exit 0
case "$1" in
start)
printf "Starting ${DESC}: "
start-stop-daemon --start --quiet --exec ${DAEMON} -- ${OPTIONS}
sleep 1
printf "\n"
;;
stop)
printf "Stopping ${DESC}: "
start-stop-daemon --stop --oknodo --quiet --exec ${DAEMON}
sleep 1
printf "\n"
;;
restart|force-reload)
$0 stop
sleep 1
$0 start
;;
*)
printf "Usage: $0 {start|stop|restart|force-reload}\n" >&2
exit 1
;;
esac
exit 0
Add Exec Permissions / Add to RC
Note: This will allow LCDd to startup with the machine, making it usable for MythTV
~$ sudo chmod +x /etc/init.d/LCDd ~$ sudo update-rc.d LCDd defaults
Configure MythTV
If you plan on using the LCD with MythTV read this section, if not skip to the last section.
In MythTV Frontend:
- Utilities / Setup
- Setup
- Appearance
- Hit next to Page 6
- Check "Enable LCD device"
- Appearance
- Setup
You can Adjust the settings here to your liking then continue on until you are back at the Setup Menu.
Finalize
The last thing to do to get the LCD working is to shutdown the system and once shutdown flip the power switch on the power supply or pull the power plug to power down and reset the LCD. Leave the power off until the LCD goes dark. Now boot the system back up. If everything is completed correctly during the boot process you should see LCDprco server information appear on the LCD and after MythTV Starts it should populate additional information.
Mythbuntu Specific
For Mythbuntu users you will want to generate the dynamic button mappings to allow your Knob and remote to interact with MythTV. This is very simple as provided support from mythbuntu-lircrc-generator.
~$ mythbuntu-lircrc-generator
For these changes to take effect you will need to exit MythTV's Frontend Application and start it back up. A very easy way to do this (via ssh only!):
~$ sudo /etc/init.d/gdm restart
This will restart X server and the Application in one shot.
Credits
I have compiled this HowTo from several forum posts and blogs. I would like to thank the two Primary contributors of this information:
smi402 for your posts here: link Ubuntu Forums Post dean for your blog post here: link Codeka Blog Post

