Firebox LCD Driver for LCDProc



  • @stephenw10:

    You need to add the sym links:

    
    cd /lib
    ln -s libc.so.7 libc.so.6
    ln -s libkvm.so.4 libkvm.so.3
    
    

    This is assuming you're running 1.2.3.

    Steve

    Hi Steve

    i am running 1.2.3

    after entering the above i get

    ln: libc.so.6: file exists
    ln: libkvm.so.3: file exists

    thorghts?


  • Netgate Administrator

    Hmmm,
    Had you already made the sym links when you installed the driver?
    What exactly have you done so far?

    Steve



  • @stephenw10:

    Hmmm,
    Had you already made the sym links when you installed the driver?
    What exactly have you done so far?

    Steve

    After setting up pfsense i have loaded the web browser and gone to diag, command, and uploaded the lcdd.tar.gz

    For a pc via 9 pin serial i have selected option 8 (shell)

    I have navigated to the tmp dir and typed
    tar -xvf lcdd.tar
    chmod 700 install-embed.lcdd.sh
    ./install-embed.lcdd.sh
    Mount

    Navigated to
    cd /usr/local/etc/rc.d
    type
    ./lcdd.sh
    error
    /libexec/ld-elf.co.1: shared object
    "libkvm.so.3 not found, requirded by "lcdproc"

    Navigate to lib
    ln -s libc.so.7 libc.so.6
    ln -s libkvm.so.4 libkvm.so.3
    error
    ln: libkvm.so.3 read-only file system
    same for libc

    any help would be appreciated


  • Netgate Administrator

    The embedded version of pfsense is mounted read only so to make any changes, like adding sym links, you need to first mount it read-write. Remember to put it back to read only afterwards to preserve your cf card.
    This is all detailed on page 2 of this thread and in the docs here:

    http://doc.pfsense.org/index.php/Remount_embedded_filesystem_as_read-write

    Steve



  • @stephenw10:

    The embedded version of pfsense is mounted read only so to make any changes, like adding sym links, you need to first mount it read-write. Remember to put it back to read only afterwards to preserve your cf card.
    This is all detailed on page 2 of this thread and in the docs here:

    http://doc.pfsense.org/index.php/Remount_embedded_filesystem_as_read-write

    Steve

    thank you for your help Steve - led is now working great

    quick question i have set the file system back to read only, when installing apps from the gui will i have to change the card to read / write?


  • Netgate Administrator

    No problem!  :D
    You shouldn't have to if you're using the gui. From, I think, 1.2.3 onwards the embedded install has switched to bsd nano and can support packages, however not all of them. Only supported packages show up in the gui though as I understand it.



  • Hi,

    I have followed all the instrcutions on the various threads and now happily have a working pfsense system running on a firebox x500, complete with working ath0 interface and LCD.  Happy days :)

    The last thing that would really make this perfect would be if the LCD could display tempurature details from the motherboard.  I know this inof is available in the bios, but havent yet seen a way of getting this info out, either on the LCD or on the webGUI.

    Any ideas?

    Stuart

    P.s.  At this stage I am yet to see any of the fabeled Wacthdog timeout errors that seem to plague this device, and I've spent a long time configuring to get it how I want it.  Not sure why….


  • Netgate Administrator

    I haven't managed this either.  :( Would be nice.
    See my thread for using mbmon here.
    I think it needs somebody with more coding skills than me (not saying much!) to write an lcdproc client that can take the output of mbmon. I haven't found any other client that can do it.

    Steve



  • Sorry for the lame Q but I tried searching and cannot find an answer:    How do you upload the files to PFSense?  TFTP?



  • @JeffD:

    How do you upload the files to PFSense?  TFTP?

    Some options:

    • scp from Windows or Linux/Unix

    • From web GUI: Diagnostics -> Command, 3rd option to upload files



  • @wallabybob:

    @JeffD:

    How do you upload the files to PFSense?  TFTP?

    Some options:

    • From web GUI: Diagnostics -> Command, 3rd option to upload files

    This was the option I used



  • hello together,

    i want so start the install of the driver with die read-write problem.

    the user "thewizard" posted last year:

    After setting up pfsense i have loaded the web browser and gone to diag, command, and uploaded the lcdd.tar.gz

    For a pc via 9 pin serial i have selected option 8 (shell)

    but in the console i see the boot screen:
    1. Boot pfSense [default]
    2. Boot pfSense with ACPI enabled
    3. Boot pfSense using USB device
    4. Boot pfSense in Safe Mode
    5. Boot pfSense in single user mode
    6. Boot pfSense with verbose logging
    7. Escape to loader prompt
    8. Reboot

    how can i get the shell?


  • Netgate Administrator

    That's odd. Is that before the box has booted?

    Alternatively you can access a command prompt by using ssh to connect.
    Make sure it's enabled in the web interface:
    \system\advanced\enable secure shell
    Use putty to connect (if you're using Windows).

    Steve



  • at first the bootloader, then this menu. After booting "booting complete", but not the generelly menu

    thx for the idea, i will test this tomorrow.

    the lcdriver package "lcdproc" is not needed? only the lcdd.tar.gz?


  • Netgate Administrator

    You only need the lcdd tarball, it includes lcdproc along with the firebox lcd driver. However there is a problem with the install script when using 2.0Beta5 (or newer).

    Here's a new set of instructions for installing the firebox lcd software that should work with Beta5

    Edit: These instructions didn't work. There's a file permissions problem that needs to be fixed.

    Steve


  • Netgate Administrator

    Edit: This only works correctly under 2.0. To use this file for 1.2.3 you need to add a sym link manually see
    here.

    Here's something that works!  ::)
    At least it did with yesterdays build (pfSense-2.0-BETA5-1g-i386-20110209-1815) on a completely clean install.
    Download the attachment to this message. Rename it lcdd4.tar (remove the .png).
    Upload it to your firebox via Diagnostics\Command Prompt\Upload in the web interface. This will put the file in \tmp. Then open a command prompt via serial or shh and:

    
    [2.0-BETA5][root@pfSense.localdomain]/root(9): cd /tmp
    [2.0-BETA5][root@pfSense.localdomain]/tmp(10): tar -xvf lcdd4.tar
    x ./
    x ./lcdd/
    x ./install-embed2.lcdd.sh
    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
    [2.0-BETA5][root@pfSense.localdomain]/tmp(11): ./install-embed2.lcdd.sh
    [2.0-BETA5][root@pfSense.localdomain]/tmp(12): /usr/local/etc/rc.d/lcdd.sh
    
    

    And your lcd should be working.  ;D

    Changelog from lcdd3:
    Reworked the install script to use rc.conf_mount_rw instead of 'mount -u -w /'.
    Included the symlinking in the install script.
    Changed the default lcd proc display options to C T U.
    Changed the default LCDd.conf to use the front panel buttons correctly for menu access.  :)

    Bugs:
    (Xe box only) Having set it to use the buttons correctly I have found that the buttons on the Xe box are wired differently to the other fireboxes.  >:( When it starts you'll be left in the menu, just press the left button to escape. The result is no different to when the buttons weren't configured correctly.

    Although I am using the rc.conf_mount_rw/ro commands in the script there is no need since it appears that (in this build at least) everything is mounted RW by default. Seems odd.

    Steve

    Edit: Changed the attachment to .png as .txt was corrupt.

    lcdd4.tar.png



  • hello steve,

    that sounds good, but i can´t unpack the file.

    error message on box and on windows…


  • Netgate Administrator

    Hmm, you're right try this.
    Obviously rename it lcdd4.tar
    I tested it and it untared fine.

    Steve

    Edit: Removed the attachment as it's now on the original post.



  • ich have a problem now:

    boot the hdu:

    àp x xpxñý ; ñßø ùŸ Ç ˜

    EDIT:
    don´t forget to go back to read-only mode  ::)
    (/etc/rc.conf_mount_ro)


  • Netgate Administrator

    What are you trying to boot from?
    Looks like something is corrupt.

    3 looks like leftover stuff from the original Watchguard OS. pfSense doesn't use lilo.

    Steve



  • steve the updated driver looks good im flashing a new cf card and will test it tomorrow morning

    Thanks for all the work on the firebox!

    -Jeff



  • i have a problem now, without doing anything…

    -> still working now

    AND:

    the lcd-driver works! thx steve  :)



  • new driver works great! and the menu looks good 2!
    it would be nice to be able to switch the display screens from the menu i like that option even though it dosent work yet



  • Is there a way to keep the backlight constantly on?


  • Netgate Administrator

    There are settings for the backlight in lcdd.conf. I can't remember off hand but there is setting for the time, you could try setting that very high or 0. Have a look through the file there's probably a setting for disabling the backlight timer. The original driver didn't have it so the light was permanently on.

    Steve



  • This is the contents of lcdd.conf:

    
    [server]
    Driver=pyramid
    Bind=127.0.0.1
    Port=13666
    ReportLevel=3
    ReportToSyslog=yes
    WaitTime=5
    User=nobody
    ServerScreen=no
    Foreground=no
    DriverPath=/usr/local/lib/lcdproc/
    GoodBye="Thanks for using"
    GoodBye="    pfSense     "
    ToggleRotateKey=Enter
    PrevScreenKey=Left
    NextScreenKey=Right
    ScrollUpKey=Up
    ScrollDownKey=Down
    [menu]
    MenuKey=Escape
    EnterKey=Enter
    UpKey=Up
    DownKey=Down
    [pyramid]
    Device=/dev/cuaU0
    Size=16x2
    
    

    Don't see anything related to Backlight. Or am I using an older version?


  • Netgate Administrator

    Hmmm, not sure what version you're using but it isn't using the firebox driver (sdeclcd).
    The sdeclcd driver has parameters that appear in lcdd.conf:

    [sdeclcd]
    BackLight=yes
    Backlight_Timer=60
    

    How did you install it?

    Steve

    Edit: I see now that you're using the lcdd2 tarball which is very old now. See my post on the previous page with the lcdd4 attachment.



  • @ridnhard19:

    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

    MMmmm….

    Still can't seem to get this syntax to work - it keeps saying my drive is mounted and I can't seem to write the commands...
    install.embed.lcdd.sh



  • @slider_nww:

    at first the bootloader, then this menu. After booting "booting complete", but not the generelly menu

    thx for the idea, i will test this tomorrow.

    the lcdriver package "lcdproc" is not needed? only the lcdd.tar.gz?

    Your getting the "Booting Complete" without the additional pfsense console setup menu system.
    I have seen this happen on some loads of 1.2.3. & 2 and cannot figure out why.
    I rebuilt my drive and now it works… Rev2 will do this and not give you the final menu also...
    What version are you running?

    H.


  • Netgate Administrator

    @hmeister:

    MMmmm….

    Still can't seem to get this syntax to work - it keeps saying my drive is mounted and I can't seem to write the commands...
    install.embed.lcdd.sh

    That post you quoted is over three years old! It's the first version of the driver built against a much older version of pfSense. It won't work for 2.0 at all.

    The most recent version complete with an install script that works for 1.2.3 or 2.0 and many other improvements is here.

    What version are you installing on? There is a good chance that the install script from the first version will have left your file system incorrectly mounted.

    Steve



  • Ok…

    I will look at the other thread... just trying to figure out where to start and Yes- it messed with the setup and I started over...!
    I tried the upgrade and that did not work either going from 1.2.3. to 2 x386.
    That thread shows RC2. I am running 1.2.3...
    I am running the embedded 1.2.3 on hard drive and that is something else I am trying to figure out - how and what file to use for upgrading...
    The last attempt just cycles the boot process over and over... I was able to upgrade using the GUI.
    Thx for the pointer and I will read some more...
    H.


  • Netgate Administrator

    Hmmm,
    The file I linked to in that post, lcdd4.tar, is intended for embedded systems. I'm not sure what it would do on a full install.
    The embedded nanobsd install has the file system mounted read only to prevent excessive writes to flash media. The script re-mounts the filesystem RW, install the LCD driver and daemon and then re-mounts it read only. Obviously you do not want a full HD install mounted RO. However it uses the included functionality on pfSense to do the re-mounting, /etc/rc.conf_mount_rw and /etc/rc.conf_mount_ro. If those files are not included in a full install then it will probably work just fine. Or it may just throw up errors!  ::)
    Try it and see if it's a fresh install with nothing to loose.

    Steve



  • stephenw10,

    lcdd4.tar works perfectly on 2.0 RC1 full install (uniproc kernel) as I have this installed on my firebox core xxl.

    Greetings,
    Eric


  • Netgate Administrator

    Great, that's good to know.
    Can you remember if it gave any errors?

    Steve



  • No errors at all, just run the install script and poef…enjoy your lcd display



  • erisan - are you running 2.0 on CF or 1.2.3?
    I am running 1.2.3 on a hard drive but am thinking to try and use the CF.
    Thx….



  • I'm running 2.0 on a HD



  • Ok Erisan and Steve - I will try the script tonight on the 1.2.3 embedded build on my HD install.
    Thanks for the help… and thank-you for your script...
    Will update you later tomorrow -
    Regards;
    H.



  • I am having an issue installing the lcdd4.tar.  (firebox x700, 1.2.3 embeded installed via live cd, onto HD)

    Steps:
    1. uploaded the lcdd4.tar via web interface
    2. opened console via serial (putty)
    3. tar -xvf lcdd4.tar
    4. ./install-embed2.lcdd.sh

    I get this:

    ln /lib/libkvm.so.4:  File Exists

    I try to run it anyway with:
    /usr/local/etc/rc.d/lcdd.sh

    I get:
    /libexec/ld-elf.so.1: Shared object "libkvm.so.3" not found, required by "lcdproc"

    Can anyone help me?
    (btw, this was a fresh install, only thing i did after interface setup was try to install this lccd4.tar)

    Thanks!

    EDIT:

    Ok… so I think I figured it out.  Got it working at least.
    I had to edit the install-embed.lcdd.sh. It looked like it was creating the wrong symlinks for 1.2.3 (gathered from other posts).  Here is what I edited it to:

    
    #!/bin/csh
    /etc/rc.conf_mount_rw
    cp -R lcdd /usr/local/share/
    cp /usr/local/share/lcdd/lcdd.sh /usr/local/etc/rc.d/
    chown -R root:wheel /usr/local/share/lcdd
    chmod -R ugo=rX /usr/local/share/lcdd
    chown root:wheel /usr/local/etc/rc.d/lcdd.sh
    chmod ugo=rx /usr/local/etc/rc.d/lcdd.sh
    ln -s /lib/libc.so.7 /lib/libc.so.6
    ln -s /lib/libkvm.so.4 /lib/libkvm.so.3
    /etc/rc.conf_mount_ro
    
    

  • Netgate Administrator

    Yes, my fault! Sorry  :-[

    libkvm.so.5 is only in 2.0.

    I'm late for a dinner party, I'll edit something later!

    Steve


Log in to reply