Firebox LCD Driver for LCDProc



  • @stephenw10:

    It doesn't really suprise me since everything in this thread was built against freebsd7.2 and pfsense2.0 is freebsd 8.
    It works great on 1.2.3 though!  ;D

    Steve

    I am using the firebox lcd driver and lcdproc on 2.0 beta 2 and it works like a charm. The box is a firebox x500 with a full install, not nanobsd.
    One thing different that I have not seen mentioned is that the updated driver with key and backlit timer support is looking for LCDd.conf in /usr/local/etc and not in /usr/local/share/lcdd. Once LCDd.conf was moved to the appropriate location it worked just fine. Maybe that is the problem.



  • @jjstecchino:

    I am using the firebox lcd driver and lcdproc on 2.0 beta 2 and it works like a charm. The box is a firebox x500 with a full install, not nanobsd.
    One thing different that I have not seen mentioned is that the updated driver with key and backlit timer support is looking for LCDd.conf in /usr/local/etc and not in /usr/local/share/lcdd. Once LCDd.conf was moved to the appropriate location it worked just fine. Maybe that is the problem.

    Are you using:
    A. the "lcdd.tar.gz" from post #7 ( http://files.pfsense.org/misc/lcdd.tar.gz ), and
    B. the updated driver "sdeclcd.so" from post #22 ( http://goessens.dyndns.org/public )?

    If I look at the lcdd.sh script, I see it using the LCDd.conf from /usr/local/share/lcdd.

    
    /usr/bin/nice -20 /usr/local/share/lcdd/LCDd -r 0 -c /usr/local/share/lcdd/LCDd.conf > /dev/null 2>&1 &
    /usr/bin/nice -20 /usr/local/share/lcdd/lcdproc C M S &
    
    

    Just to be sure, I've now also copied the conf file to /usr/local/etc.
    But it still comes with the same error, saying that it cannot connect to the lcdd server.

    EDIT:
    Perhaps this would help?

    If I just namually start:

    /usr/local/share/lcdd/LCDd -c /usr/local/share/lcdd/LCDd.conf

    I a receive more detailed error:
    Could not open driver module /usr/local/share/lcdd/drivers/sdeclcd.so: Shared object "libkvm.so.4" not found, required by "sdeclcd.so"
    Driver [sdeclcd] binding failed
    Could not load driver sdeclcd
    There is no output driver
    Critical error while initializing, abort.

    So I've done "ln -s libkvm.so.5 libkvm.so.4"
    (I now have libkvm.so.3 and 4 linked to 5)

    When I then start the same command, no error.

    Then I killed the previously manually started LCDd and started the lcdd.sh script again.
    No errors, only I cannot see the display right now, because I am working remotely…

    EDIT AGAIN: Yes, the display is working!
    Only the backlight is off, so it's a bit hard to see what's on the display.


  • Netgate Administrator

    The backlight should come on again if you press one of the buttons.
    Confirmation of working in 2.0 is great news.  ;D

    Steve



  • @stephenw10:

    The backlight should come on again if you press one of the buttons.
    Confirmation of working in 2.0 is great news.  ;D

    Steve

    Tried the buttons: the display changes  (shows other info) but no backlight.
    (not even during of immediately after a reboot)



  • @jimmy:

    Tried the buttons: the display changes  (shows other info) but no backlight.
    (not even during of immediately after a reboot)

    If you don't see it even right when you power on your box, your backlight is dead.



  • @CaseyBlackburn:

    @jimmy:

    Tried the buttons: the display changes  (shows other info) but no backlight.
    (not even during of immediately after a reboot)

    If you don't see it even right when you power on your box, your backlight is dead.

    Weird… I own a second box, also an x700... It doesn't have the original flashdisk inside anymore so it won't bootup, but this one also doesn't light when I turn on the box.  Do I miss something? I mean, I can't imagine having 2 boxes with a dead backlight!   ???

    I will check a third box at the office tomorrow, that's one that's still operating with the original flashdisk, just to see what "should happen" with the backlight.

    EDIT: Found it already. My first box does have a dead backlight. It's a bit less light here now and I can see the backlight on the second box, but not on the first box. So it's time to switch boxes.  :-[



  • @jimmy:

    @CaseyBlackburn:

    @jimmy:

    Tried the buttons: the display changes  (shows other info) but no backlight.
    (not even during of immediately after a reboot)

    If you don't see it even right when you power on your box, your backlight is dead.

    Weird… I own a second box, also an x700... It doesn't have the original flashdisk inside anymore so it won't bootup, but this one also doesn't light when I turn on the box.  Do I miss something? I mean, I can't imagine having 2 boxes with a dead backlight!   ???

    I will check a third box at the office tomorrow, that's one that's still operating with the original flashdisk, just to see what "should happen" with the backlight.

    EDIT: Found it already. My first box does have a dead backlight. It's a bit less light here now and I can see the backlight on the second box, but not on the first box. So it's time to switch boxes.   :-[

    [/quote]

    The backlit comes on for several seconds just after power on with or without disk. If it doesnt it is dead.

    If anybody is interested I may have found a solution for the watchdog errors. I posted it on a separate thread under hardware



  • This box is getting better and better.
    Now…. How do we display more useful and pertinent info on the LCD?
    A network bandwidth graph
    current throughput
    vpn connections
    errors
    Boot  messages.

    All of the above and much more would be nice.


  • Netgate Administrator

    The default options are quite limited you have choices of:

    screen
        can be one of the following: 
    C CPU
        show detailed CPU usage 
    P SMP-CPU
        CPU usage overview: one line per CPU, especially useful on SMP systems. 
    G CPUGraph
        CPU histogram 
    L Load
        Load histogram 
    M Memory
        memory & swap usage 
    S ProcSize
        memory usage of 5 biggest processes 
    D Disk
        filling level of the mounted file systems 
    I Iface
        network interface usage 
    B Battery
        battery status 
    T TimeDate
        time & date information 
    O OldTime
        old time screen 
    U Uptime
        old uptime screen 
    K BigClock
        big clock 
    N MiniClock
        minimal clock 
    A About
        credits page
    

    Add the letters to where lcdproc is called in /usr/local/etc/rc.d/lcdd.sh. Not all of them work. I went with C T U.

    Otherwise write your own client or use one someone else has written (a lot). It's supposed to be quite easy but since the  last time I coded anything was at Uni about 12 years ago it's  beyond me!  ::)

    Steve



  • @stephenw10:

    The default options are quite limited you have choices of:

    screen
        can be one of the following: 
    C CPU
        show detailed CPU usage 
    P SMP-CPU
        CPU usage overview: one line per CPU, especially useful on SMP systems. 
    G CPUGraph
        CPU histogram 
    L Load
        Load histogram 
    M Memory
        memory & swap usage 
    S ProcSize
        memory usage of 5 biggest processes 
    D Disk
        filling level of the mounted file systems 
    I Iface
        network interface usage 
    B Battery
        battery status 
    T TimeDate
        time & date information 
    O OldTime
        old time screen 
    U Uptime
        old uptime screen 
    K BigClock
        big clock 
    N MiniClock
        minimal clock 
    A About
        credits page
    

    Add the letters to where lcdproc is called in /usr/local/etc/rc.d/lcdd.sh. Not all of them work. I went with C T U.

    Otherwise write your own client or use one someone else has written (a lot). It's supposed to be quite easy but since the  last time I coded anything was at Uni about 12 years ago it's  beyond me!  ::)

    Steve

    Steve I am away from home for a few days I can ssh to the boxbut I cannot see the lcd so I cant test.
    Are you able to display nework stats (letter I) on your box?


  • Netgate Administrator

    Hmm, the screen shows up OK but no data is shown for I. Maybe with some tweaking.
    The only really useful things for me is how long since it last crashed and is the CPU pegged at 100% by some hideous crashed code. Anything else I'll just log in and look. To be honest none of the screens are very nice at 2X20. I should get off my arse and write something, it could easily have a single screen with cpu usage and uptime.
    Steve



  • @stephenw10:

    Hmm, the screen shows up OK but no data is shown for I. Maybe with some tweaking.
    The only really useful things for me is how long since it last crashed and is the CPU pegged at 100% by some hideous crashed code. Anything else I'll just log in and look. To be honest none of the screens are very nice at 2X20. I should get off my arse and write something, it could easily have a single screen with cpu usage and uptime.
    Steve

    I agree 2x20 is not spectacular, but it can be used to display some nice cpu/ network graphs



  • hi

    after following the above when i try to start lcdd.sh under usr/local/etc/rc.d

    i get the following

    /libexec/ld-elf.co.1: shared object
    "libkvm.so.3 not found, requirded by "lcdproc"

    any ideas on this one


  • Netgate Administrator

    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



  • @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?


Log in to reply