Firebox LCD Driver for LCDProc
-
Tnx to all here helping getting this to work for all of us.
But there is a small thing that has been nagging me sins i got pfsense on my two Fireboxes.
I might be posting this in the wrong thread but this is the closest i get to my question.
So here is my question:Is there ANY way to get the armed light to turn green when the system is fully active??
I know this just is the icing on the cake but i would love if anyone have any idea on how to solve this.
;D
-
whem i wrote the keyboard driver, i made some investigations around fireboxes:
-
the main circuit is a it8712f, which contains all peripherals.
-
to discover wher is the keyboard, i wrote a little spy program which was scanning all ports in the range 0x000 .. 0x3FF to monitor activity, and i discovered that keyboard was using LPT port !
-
to go further, i found in IT8712F datasheet all GPIO wich certainly control the led, oar maybe it is another bit in the LPT ports.
some tests needs to be done to determine how to access it uses ports 0x2e and 0x2f… for the moment, i have no more time and my firebox is running, so it is difficult to investigate anymore...
give me a free firebox to investigate ;)
there is a possibility to change the led status in the BIOS, you need to plug a pci video card, and a keyboard (i wrote the wiring to PS/2 in another topic) You will need a 90° PCI connector to plug the video card or a PCI spacer.
There is an option in the bios to control this led.
Notice that you can also configure your bios to dialog trough the com port, so after that you can enter the bios with a simple terminal.
JJ
-
-
Hi,
This looks great got it to work.
I want to make some changes to the display - like remove the host name - so it only displays the function like CPU, MEM etc…
also want to add a new option toi display the host name on a seperate screen.Does any one have all the source code required (all modules lcd, lcdpoc wtc...)- or do i just need to modify the sdeclcd.c .h files.
Cause hen you run lcdproc -h you set the set of option - - whre i need to add a new one.:)
Thanks in advance
George -
LCDd is the display server, sdeclcd is the display driver for firebox display & kbd.
messages are generated by lcdproc which creates the screens.
if you want to customize displays, you may modify lcdproc and compile it on a freebsd machine.
you will find souces package and compiling instructions on lcdproc source forge page (ver 0.5.3) http://sourceforge.net/projects/lcdproc/, the web site is not fully updated.
i did compile it under freebsd to get the latest version, compiling is easy, if you do not make typing errors…
LCDd can accept simultaneous connections, so you can also use others programs to create dispalys, and you can use lcdexec to create menus.
lcdproc is flexible in the way you can select different screens which will be displayed one by one, and with lcdexec you can create menus with (limited) actions.
but screens are pre-programmed.another alternative is lcd4linux, which allows to customize your screen, but you can have only one screen.
another nice feature is the availability to display 2 graphs in one line, there is a complex routine to allow that with only 8 graphic chars, this is remarquable.http://ssl.bulix.org/projects/lcd4linux/
unfortunetely, it does not compile natively under freebsd, i did it, but it was extremely long to setup, and for installing it it on pfsense, you will have to add manually a lot of libraries.
JJ
-
Hi
Thanks JJ - :)
One other question.
Do have the pin layout for the firbox x series by any chance?Thanks
George -
there's another thread about the x550e which is virtually the same as the x750e.
http://forum.pfsense.org/index.php/topic,20095.15.html
I've got the x700 and the x750e
problems with larger cards on the x750e, but yes it does work.
-
Here are the directions w/ files! This only has support for the FireBox LCD compiled. I have also noticed the interface stats does not work w/ freeBSD. I've got a full install on my pc and it still doesn't pickup the traffic. I have not dug too much into it. At any rate here it is:
(Copy and paste from shell so you can see exactly how I set it up to install)
I should really wrap a cool GUI around this so it can all be configured from the web console. I do know PHP too, just need to find some time.
I'm using the EMBEDDED VERSION! the install script supports that only - if you are using a full install i'd try and comment out the 2 mount commands as you don't need to re-mount the file system as read-write then back to read-only.
Note: the /var/tmp filesystem resides in memory so you can 'play' here without wearing out your CF card.
This is from some PC to put the archive on the pfsense box.
MacWild:final jayson$ ls lcdd.tar.gz MacWild:final jayson$ gunzip lcdd.tar.gz MacWild:final jayson$ scp lcdd.tar root@***.***.***.***:/var/tmp Password: lcdd.tar 100% 124KB 124.0KB/s 00:00 MacWild:final jayson$
Now ssh into the box; make sure ya got it enabled first of course ;)
pfsense:/# cd /var/tmp pfsense:/var/tmp# ls -l total 126 -rw-r--r-- 1 root wheel 126976 Mar 6 22:30 lcdd.tar drwxr-xr-x 2 root wheel 512 Mar 6 22:28 vi.recover pfsense:/var/tmp# tar -xvf lcdd.tar x lcdd x lcdd/drivers x lcdd/lcdd x lcdd/LCDd.conf x lcdd/lcdd.sh x lcdd/lcdproc x lcdd/drivers/curses.so x lcdd/drivers/sdeclcd.so x install-embed.lcdd.sh pfsense:/var/tmp# chmod 700 install-embed.lcdd.sh pfsense:/var/tmp# ./install-embed.lcdd.sh pfsense:/var/tmp# mount /dev/ufs/pfSense on / (ufs, local, read-only) devfs on /dev (devfs, local) /dev/md0 on /tmp (ufs, local) /dev/md1 on /var (ufs, local) /dev/ufs/pfSenseCfg on /cf (ufs, local, read-only) devfs on /var/dhcpd/dev (devfs, local) pfsense:/var/tmp#
Now you can reboot or just 'cd' over to the run-scripts directory and start it up so you can keep that stellar 'up-time' figure
pfsense:/var/tmp# cd /usr/local/etc/rc.d pfsense:/usr/local/etc/rc.d# ls lcdd.sh lighttpd pfsense:/usr/local/etc/rc.d# ls -la total 5 drwxr-xr-x 2 root wheel 512 Mar 6 22:31 . drwxr-xr-x 4 root wheel 512 Feb 24 17:37 .. -r-xr-xr-x 1 root wheel 174 Mar 6 22:31 lcdd.sh -r-xr-xr-x 1 root wheel 1184 Sep 11 13:00 lighttpd pfsense:/usr/local/etc/rc.d# ls lcdd.sh lighttpd pfsense:/usr/local/etc/rc.d# ./lcdd.sh pfsense:/usr/local/etc/rc.d#
The driver currently does not have support for vertical filled histograms - its only a 2x20 LCD so I wrote the horizontal fill functions - I need to finish that but I really didn't need it so I pushed it to the back burner for now.
http://files.pfsense.org/misc/lcdd.tar.gz
(Can this file be put on one of the pfSense servers?) – Thanks! I've updated my url
i have tried the above and failed…. please can some one walk me through this ..... i also edited and copied the files so i could have the sdeclcd driver in the list on the lcdproc page but no luck...
here is the output from the system logs
Mar 1 22:06:14 LCDd: LCDd version 0.5.2 starting Mar 1 22:06:14 LCDd: Using Configuration File: /usr/local/etc/LCDd.conf Mar 1 22:06:14 LCDd: Listening for queries on 127.0.0.1:13666 Mar 1 22:06:14 LCDd: Could not open driver module /usr/local/lib/lcdproc/sdeclcd.so: Shared object "libkvm.so.3" not found, required by "sdeclcd.so" Mar 1 22:06:14 LCDd: Driver [sdeclcd] binding failed Mar 1 22:06:14 LCDd: Could not load driver sdeclcd Mar 1 22:06:14 LCDd: There is no output driver Mar 1 22:06:14 LCDd: Critical error while initializing, abort.
please can someone help…. it would be good if my firebox X700 could have the LCD working..... :)
-
Here are the directions w/ files! This only has support for the FireBox LCD compiled. I have also noticed the interface stats does not work w/ freeBSD. I've got a full install on my pc and it still doesn't pickup the traffic. I have not dug too much into it. At any rate here it is:
(Copy and paste from shell so you can see exactly how I set it up to install)
I should really wrap a cool GUI around this so it can all be configured from the web console. I do know PHP too, just need to find some time.
I'm using the EMBEDDED VERSION! the install script supports that only - if you are using a full install i'd try and comment out the 2 mount commands as you don't need to re-mount the file system as read-write then back to read-only.
Note: the /var/tmp filesystem resides in memory so you can 'play' here without wearing out your CF card.
This is from some PC to put the archive on the pfsense box.
MacWild:final jayson$ ls lcdd.tar.gz MacWild:final jayson$ gunzip lcdd.tar.gz MacWild:final jayson$ scp lcdd.tar root@***.***.***.***:/var/tmp Password: lcdd.tar 100% 124KB 124.0KB/s 00:00 MacWild:final jayson$
Now ssh into the box; make sure ya got it enabled first of course ;)
pfsense:/# cd /var/tmp pfsense:/var/tmp# ls -l total 126 -rw-r--r-- 1 root wheel 126976 Mar 6 22:30 lcdd.tar drwxr-xr-x 2 root wheel 512 Mar 6 22:28 vi.recover pfsense:/var/tmp# tar -xvf lcdd.tar x lcdd x lcdd/drivers x lcdd/lcdd x lcdd/LCDd.conf x lcdd/lcdd.sh x lcdd/lcdproc x lcdd/drivers/curses.so x lcdd/drivers/sdeclcd.so x install-embed.lcdd.sh pfsense:/var/tmp# chmod 700 install-embed.lcdd.sh pfsense:/var/tmp# ./install-embed.lcdd.sh pfsense:/var/tmp# mount /dev/ufs/pfSense on / (ufs, local, read-only) devfs on /dev (devfs, local) /dev/md0 on /tmp (ufs, local) /dev/md1 on /var (ufs, local) /dev/ufs/pfSenseCfg on /cf (ufs, local, read-only) devfs on /var/dhcpd/dev (devfs, local) pfsense:/var/tmp#
Now you can reboot or just 'cd' over to the run-scripts directory and start it up so you can keep that stellar 'up-time' figure
pfsense:/var/tmp# cd /usr/local/etc/rc.d pfsense:/usr/local/etc/rc.d# ls lcdd.sh lighttpd pfsense:/usr/local/etc/rc.d# ls -la total 5 drwxr-xr-x 2 root wheel 512 Mar 6 22:31 . drwxr-xr-x 4 root wheel 512 Feb 24 17:37 .. -r-xr-xr-x 1 root wheel 174 Mar 6 22:31 lcdd.sh -r-xr-xr-x 1 root wheel 1184 Sep 11 13:00 lighttpd pfsense:/usr/local/etc/rc.d# ls lcdd.sh lighttpd pfsense:/usr/local/etc/rc.d# ./lcdd.sh pfsense:/usr/local/etc/rc.d#
The driver currently does not have support for vertical filled histograms - its only a 2x20 LCD so I wrote the horizontal fill functions - I need to finish that but I really didn't need it so I pushed it to the back burner for now.
http://files.pfsense.org/misc/lcdd.tar.gz
(Can this file be put on one of the pfSense servers?) – Thanks! I've updated my url
i have tried the above and failed…. please can some one walk me through this ..... i also edited and copied the files so i could have the sdeclcd driver in the list on the lcdproc page but no luck...
here is the output from the system logs
Mar 1 22:06:14 LCDd: LCDd version 0.5.2 starting Mar 1 22:06:14 LCDd: Using Configuration File: /usr/local/etc/LCDd.conf Mar 1 22:06:14 LCDd: Listening for queries on 127.0.0.1:13666 Mar 1 22:06:14 LCDd: Could not open driver module /usr/local/lib/lcdproc/sdeclcd.so: Shared object "libkvm.so.3" not found, required by "sdeclcd.so" Mar 1 22:06:14 LCDd: Driver [sdeclcd] binding failed Mar 1 22:06:14 LCDd: Could not load driver sdeclcd Mar 1 22:06:14 LCDd: There is no output driver Mar 1 22:06:14 LCDd: Critical error while initializing, abort.
please can someone help…. it would be good if my firebox X700 could have the LCD working..... :)
ok i got this working kinda… but the link for sdeclcd 1.0.3 is broken can any one else repost the file? many thanks
-
I have a bit of a situation where the LCDProc service does not start and nothing shows in the logs in regards to this. I am using a Firebox 1000. Tried installing and uninstalling the package as well with no luck. Tried installing the program manually even by using the script in this thread, still not working. Using 1.2.3-RELEASE
Any ideas?
Update
All fixed, just permission problems.
-
Anyone know about how to get the LCD on the x750e working? These instructions don't seem to work on it.
-
I've done this on the X700 as well as the X5000 I can't imagine they changed things this dramatically in the newest lineup of hardware.
What part of the steps aren't working?
-
No errors are given but the LCD never displays anything I tell it. I believe the LCD is different, and so the driver doesn't work. The x550e, x750e, etc have a completely different motherboard with different network ports, memory slots, PCIEX ports, etc. I bet the LCD is different because these have a yellow back-light instead of the white like the x500, x700, etc.
-
The x5000 has a yellow backlight too, doesn't mean much.
Here are the step by step instructions I posted in the X700 thread, the links all refer back to this thread:
Don't install the LCDPROC package, but if you follow RidnHard19's instructions exactly from the first page of this forum: http://forum.pfsense.org/index.php/topic,7920.msg46356.html#msg46356 it will help until you get to the symlink part.
You'll want to replace the diver with Jean's updated version also in that thread: http://forum.pfsense.org/index.php/topic,7920.msg105179.html#msg105179
Then, to wrap it all up and make it work follow the instructions to create the symlinks to the updated libraries: ( in the same thread) http://forum.pfsense.org/index.php/topic,7920.msg69315.html#msg69315
You should then be able to start the LCDd script and view the results immediately on your LCD panel.
I just finished the install on my x700, a problem with a remote serial cable forwarded to a TCP socket(I was too lazy to bring it upstairs and use my known-good serial port/cable) made it harder than expected, but I managed, and was rewarded with CARP!
Hope this helps!
–James -
I know. I've got two x700 fireboxes that works just fine on. However it doesn't work on my x750e. I'm thinking that the lcd's port is different or it's a different LCD all together.
-
The driver was written for the IT8712F chip.
Does the 750e have this or something compatible?Steve
-
The LCD on the e-series seems to be a APEX 202001. You can see for yourself by looking on page 21 of http://www.watchguard.com/docs/corporate/wg_peak-eDe-MFR_instructions.pdf
-
Yes I see but the chip I was refering to is the I/O chip that handles the parallel port that talks to the LCD. I think! :-
I'm a bit vague on this but if you read back this thread it explains most of it.
Anyway if watchguard (or whoever were making the boards) changed to a different I/O chip you'd probably need a different driver.Steve
-
I just tried this process and it's hard. It did not work and I got the several errors, it was missing a file and I lost the log. I going to flash the 4GB card and try again. Can somebody break down some of the commands. I am having a real problem understanding the process.
I don't have a good hand on freebsd commands.
RC -
Have a look in the X peak thread.
I just had to re install it so I made some notes! ;D -
LIsted below are the exact steps I used to try to install the watchguard lcd driver. anybody got any idea why I am missing this libary? I formatted my card twice now. I really want to get the LCD working before I start building the configuration.
RClogin as: admin
Using keyboard-interactive authentication.
Password:*** Welcome to pfSense 1.2.3-RELEASE-nanobsd on pfsense-wg ***
WAN* -> re0 -> 192.168.14.246(DHCP)
LAN* -> re1 -> 192.168.14.3pfSense console setup
0) Logout (SSH only)
1) Assign Interfaces
2) Set LAN IP address
3) Reset webConfigurator password
4) Reset to factory defaults
5) Reboot system
6) Halt system
7) Ping host
8) Shell
9) PFtop
10) Filter Logs
11) Restart webConfigurator
12) pfSense Developer Shell
13) Upgrade from console
14) Disable Secure Shell (sshd)Enter an option: 8
[1.2.3-RELEASE] [admin@pfsense-wg.cartersweb.net]/root(1): cd /var/tmp
[1.2.3-RELEASE] [admin@pfsense-wg.cartersweb.net]/var/tmp(2): ls
bootup_messages nohup.out rules.boot
captiveportal.lock pfctl_si_out rules.debug
carp.sh pfctl_ss_out rules.debug.old
check_reload_status php-fastcgi.socket-0 sdeclcd.so
config.cache php-fastcgi.socket-1 sdeclcd.so.txt
dhcpd.sh php-fastcgi.socket-2 tmp
ifconfig_re0 re0_error_output tmpHOSTS
last_term_seen re0_output uploadbar
lcdd.tar.gz re0_router vi.recover
[1.2.3-RELEASE] [admin@pfsense-wg.cartersweb.net]/var/tmp(3): gunzip lcdd.tar.gz
[1.2.3-RELEASE] [admin@pfsense-wg.cartersweb.net]/var/tmp(4): scp lcdd.tar root@192.168.14.3:/var/tmp
Could not create directory '/root/.ssh'.
The authenticity of host '192.168.14.3 (192.168.14.3)' can't be established.
DSA key fingerprint is 1a:55:e5:ed:4a:64:58:47:a9:bd:85:92:a5:f8:7c:b6.
Are you sure you want to continue connecting (yes/no)? y
Please type 'yes' or 'no': yes
Failed to add the host to the list of known hosts (/root/.ssh/known_hosts).
Password:
Password:
lcdd.tar 100% 243KB 242.5KB/s 00:00
[1.2.3-RELEASE] [admin@pfsense-wg.cartersweb.net]/var/tmp(5): ls -l
total 340
-rw-r–r-- 1 root wheel 89 May 29 04:01 bootup_messages
-rw-r--r-- 1 root wheel 0 May 29 04:01 captiveportal.lock
-rw-r--r-- 1 root wheel 0 May 29 04:00 carp.sh
-rw-r--r-- 1 root wheel 9 May 29 04:17 check_reload_status
-rw-r--r-- 1 root wheel 4682 May 29 04:10 config.cache
-rw-r--r-- 1 root wheel 393 May 29 04:10 dhcpd.sh
-rw-r--r-- 1 root wheel 48 May 29 04:00 ifconfig_re0
-rw-r--r-- 1 root wheel 11 May 29 04:12 last_term_seen
-rw------- 1 root wheel 248320 May 29 04:16 lcdd.tar
-rw------- 1 root wheel 162 May 29 04:10 nohup.out
-rw-r--r-- 1 root wheel 1776 May 29 04:16 pfctl_si_out
-rw-r--r-- 1 root wheel 847 May 29 04:16 pfctl_ss_out
srwxr-xr-x 1 root wheel 0 May 29 04:00 php-fastcgi.socket-0
srwxr-xr-x 1 root wheel 0 May 29 04:00 php-fastcgi.socket-1
srwxr-xr-x 1 root wheel 0 May 29 04:00 php-fastcgi.socket-2
-rw-r--r-- 1 root wheel 296 May 29 04:00 re0_error_output
-rw-r--r-- 1 root wheel 0 May 29 04:00 re0_output
-rw-r--r-- 1 root wheel 13 May 29 04:00 re0_router
-rw-r--r-- 1 root wheel 128 May 29 04:00 rules.boot
-rw-r--r-- 1 root wheel 5610 May 29 04:10 rules.debug
-rw-r--r-- 1 root wheel 5610 May 29 04:10 rules.debug.old
-rw------- 1 root wheel 10780 May 29 04:08 sdeclcd.so
-rw------- 1 root wheel 10780 May 29 04:11 sdeclcd.so.txt
lrwxr-xr-x 1 root wheel 1 May 29 04:00 tmp -> /
-rw-r--r-- 1 root wheel 0 May 29 04:17 tmpHOSTS
drwxrwxrwx 2 root wheel 512 May 29 04:00 uploadbar
drwxr-xr-x 2 root wheel 512 May 29 03:59 vi.recover
[1.2.3-RELEASE] [admin@pfsense-wg.cartersweb.net]/var/tmp(6): tar -xvf lcdd.tar
x install-embed.lcdd.sh
x lcdd
x lcdd/drivers
x lcdd/LCDd.conf
x lcdd/lcdd.sh
x lcdd/lcdproc
x lcdd/LCDd
x lcdd/drivers/curses.so
x lcdd/drivers/sdeclcd.so
[1.2.3-RELEASE] [admin@pfsense-wg.cartersweb.net]/var/tmp(7): chmod 700 install-embed.lcdd.sh
[1.2.3-RELEASE] [admin@pfsense-wg.cartersweb.net]/var/tmp(8): ./install-embed.lcdd.sh
[1.2.3-RELEASE] [admin@pfsense-wg.cartersweb.net]/var/tmp(9): mount
/dev/ufs/pfsense0 on / (ufs, local, read-only)
devfs on /dev (devfs, local)
/dev/md0 on /var/tmp (ufs, local)
/dev/md1 on /var (ufs, local)
/dev/ufs/cf on /cf (ufs, local, read-only)
devfs on /var/dhcpd/dev (devfs, local)
[1.2.3-RELEASE] [admin@pfsense-wg.cartersweb.net]/var/tmp(10): cd /usr/local/etc/rc.d
[1.2.3-RELEASE] [admin@pfsense-wg.cartersweb.net]/usr/local/etc/rc.d(11): ls
lcdd.sh
[1.2.3-RELEASE] [admin@pfsense-wg.cartersweb.net]/usr/local/etc/rc.d(12): ./lcdd.sh
/libexec/ld-elf.so.1: [1.2.3-RELEASE] [admin@pfsense-wg.cartersweb.net]/usr/local/etc/rc.d(13): Shared object "libkvm.so.3" not found, required by "lcdproc"