Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Firebox LCD Driver for LCDProc

    Scheduled Pinned Locked Moved Hardware
    398 Posts 97 Posters 439.3k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      browntown
      last edited by

      @stephenw10:

      1. Install the lcdproc-dev package.
      2. In the Services: LCDproc: Server: screen select:
          'Enable LCDproc at startup' yes
          Com port - Parallel Port 1
          Display Size - 2x20
          Driver - Watchguard Firebox with SDEC
          Hit the save button at the bottom.
      3. Doing the above generates the lcdd.conf file we need but it is only temporary so we need to copy it somewhere more permanent.
          Go to Diagnostics: Command Prompt and run:

      cp /usr/local/etc/LCDd.conf /conf
      

      You could also run that at the CLI but via the webgui takes care of remounting the filesystem for you.
      4. No go back to Services: LCDproc: Server: , uncheck 'Enable LCDproc at startup' and set Com Port to 'none'. You must set the com port as none, that's what the lcdproc-dev config script looks for before it removes the RC start-stop scripts.
      5. Install the Shellcmd package if you haven't already.
      6. Add the following shell commands to start the lcdproc server and client:

      /usr/bin/nice -20 /usr/local/sbin/LCDd -r 0 -c /conf/LCDd.conf > /dev/null &
      
      /usr/bin/nice -20 /usr/local/bin/lcdproc C T U & 
      

      Both are type 'shellcmd'. You can choose which screens to display, C T U works for me. See my attached screenshot from an X-e box.
      7. Reboot. Or run those two commands manually.

      Steve

      Thanks for this, I've been fighting problems with lcdproc for a while.  For reference for anyone that is curious as to what other screen flags you can use (from lcdproc doc)
      lcdproc - LCDproc system status information viewer

      Copyright © 1999-2006 Selene Scriven, William Ferrell, and misc. contributors.
      This program is released under the terms of the GNU General Public License.

      Usage: lcdproc [<options>] [ <screens>…]
        where <options>are
          -s <host>          connect to LCDd daemon on <host>-p <port>          connect to LCDd daemon using <port>-f                  run in foreground
          -e <delay>          slow down initial announcement of screens (in 1/100s)
          -c <config>        use a configuration file other than /etc/lcdproc/lcdproc.conf
          -h                  show this help screen
          -v                  display program version
        and <screens>are
          C CPU              detailed CPU usage
          P SMP-CPU          CPU usage overview (one line per CPU)
          G CPUGraph          CPU usage histogram
          L Load              load histogram
          M Memory            memory & swap usage
          S ProcSize          biggest processes size
          D Disk              filling level of mounted file systems
          I Iface            network interface usage
          B Battery          battery status
          T TimeDate          time & date information
          O OldTime          old time screen
          U Uptime            uptime screen
          K BigClock          big clock
          N MiniClock        minimal clock
          A About            credits page

      Example:
          lcdproc -s my.lcdproc.server.com -p 13666 C M X</screens></config></delay></port></port></host></host></options></screens></options>

      1 Reply Last reply Reply Quote 0
      • stephenw10S
        stephenw10 Netgate Administrator
        last edited by

        Ah intersting, are you using a server on a different machine? What does X show? Is that just the example from the help file?  ::)

        Steve

        1 Reply Last reply Reply Quote 0
        • D
          dwfa
          last edited by

          I installed pfSense 2.1.1 to fix other issues I was having and was following the instructions to get the LCD working and it seems to hang when installing lcdproc-0.5.6-i386.pbi.  It has downloaded the filed and it just sits there extracting.  I went to the command line and noticed bsdtar is in the state biowr (writing) and consumes about 1% constantly (seems odd).

          I had no issues installing this package on 2.1.  Not sure it is just my environment or not; thought I would put this out there.

          EDIT:

          I decided to let this run for some time.  It took very long > 15mins (went for a bite to eat), is this normal?

          1 Reply Last reply Reply Quote 0
          • stephenw10S
            stephenw10 Netgate Administrator
            last edited by

            Writing to the CF card can be exceptionally slow! I have experienced long delays re-installing packages though I'm not sure it was 15mins. Upgrading my test box from 2.1 to 2.1.1 took a while reload packages, including lcdproc-dev, but I'm unsure how long since I shot myself in the foot with a bad config.

            Steve

            1 Reply Last reply Reply Quote 0
            • D
              dwfa
              last edited by

              Thanks for the info.  I know they can be slow; it was not this slow when I was using 2.1 - I will chalk it up to an  outlier condition  ;D.

              1 Reply Last reply Reply Quote 0
              • P
                power_matz
                last edited by

                Hi.

                If you set the "Refresh frequency" before you copy the conf file this value will also be used by the new driver.
                May someone needs more time per screen….

                1 Reply Last reply Reply Quote 0
                • stephenw10S
                  stephenw10 Netgate Administrator
                  last edited by

                  Yes it should do. That's part of the standard lcdproc configuration independent of the driver so it'd not hard coded or anything.

                  Steve

                  1 Reply Last reply Reply Quote 0
                  • ?
                    A Former User
                    last edited by

                    Hello,

                    i've just installed the lcdproc-dev package. I works so far, but after 30sek the backlight turned off.
                    In the webgui Services > LCDproc > Backlight > On
                    In the LCDd.conf is a line "Backlight=on" So it should work, but it doesn't.

                    Any ideas?

                    Thanks.

                    1 Reply Last reply Reply Quote 0
                    • stephenw10S
                      stephenw10 Netgate Administrator
                      last edited by

                      That's the normal behaviour.
                      The backlight is hardcoded to turn off. The decision to do that was based on datasheets for the LCD module in the orginal X-Core box which stated the backlight life as limited number of hours (a few years) and that many of those boxes alreday had a dead backlight. Several people have requested it be allowed to stay on, which seems reasonable given the more recent modules have led backlights with a very long life, but that hasn't made it into the code.

                      Steve

                      1 Reply Last reply Reply Quote 0
                      • ?
                        A Former User
                        last edited by

                        Hello Steve,

                        thanks for your fast answer.

                        Too bad. I hoped, to let the backlight always on.
                        If i didn't use the LCDproc the backlight is always on, but it shows this annoying "Booting OS…"

                        pyro

                        ps. runnung pfsense on a X1250e

                        1 Reply Last reply Reply Quote 0
                        • stephenw10S
                          stephenw10 Netgate Administrator
                          last edited by

                          You could try something horrible like adding a cronjob to set the backlight on every 20s. No idea how it might interfer with the LCD driver though.  :-
                          Or you could fork the driver and remove the code that turns it off.  ;)

                          Steve

                          1 Reply Last reply Reply Quote 0
                          • R
                            ridnhard19
                            last edited by

                            Wow… This is crazy to see how my original proof of concept driver has taken off to a regular package and driver. I guess I lost track of all of this after mine died. It's nice to see people still using this hardware and the neat enhancements made. It's great for us as these devices are useless to many once they don't renew the licenses.

                            1 Reply Last reply Reply Quote 0
                            • stephenw10S
                              stephenw10 Netgate Administrator
                              last edited by

                              Hey, great to hear from you. Thank you so much for your original work.  :)

                              Steve

                              1 Reply Last reply Reply Quote 0
                              • C
                                cii
                                last edited by

                                @pyroblast:

                                Hello Steve,

                                thanks for your fast answer.

                                Too bad. I hoped, to let the backlight always on.
                                If i didn't use the LCDproc the backlight is always on, but it shows this annoying "Booting OS…"

                                pyro

                                ps. runnung pfsense on a X1250e

                                I've rebuilt the code from github to force the backlight always on.

                                You can grab the file from https://www.dropbox.com/s/6ilykwt1p6zn4rm/sdeclcd.so, sadly Dropbox doesn't work nicely with fetch…

                                You'll need to drop this in /usr/pbi/lcdproc-i386/lib/lcdproc/ and chmod 555 the file.  Don't forget to back up your original!  Once you reboot the backlight should be on.

                                1 Reply Last reply Reply Quote 0
                                • stephenw10S
                                  stephenw10 Netgate Administrator
                                  last edited by

                                  Nice. Good to have options.  :)

                                  Steve

                                  1 Reply Last reply Reply Quote 0
                                  • G
                                    g.jauch
                                    last edited by

                                    @cii:

                                    I've rebuilt the code from github to force the backlight always on.

                                    You can grab the file from https://www.dropbox.com/s/6ilykwt1p6zn4rm/sdeclcd.so, sadly Dropbox doesn't work nicely with fetch…

                                    You'll need to drop this in /usr/pbi/lcdproc-i386/lib/lcdproc/ and chmod 555 the file.  Don't forget to back up your original!  Once you reboot the backlight should be on.

                                    Hi cii,

                                    thx for your work… but dropbox send your sdeclcd.so as HTML-Text, not as a binary file... could you please zip your file and upload it again ?

                                    @cii:

                                    I've rebuilt the code from github

                                    Can someone give me a direct link to the github sources… i searched myself but didn't find the sources  :'(

                                    cu gunther

                                    1 Reply Last reply Reply Quote 0
                                    • C
                                      cii
                                      last edited by

                                      You can try this URL for a zipped version:
                                      https://dl.dropboxusercontent.com/u/6133016/bsd/sdeclcd.so.zip

                                      It was built from this repo (under FreeBSD 8.3)
                                      https://github.com/fmertz/sdeclcd

                                      1 Reply Last reply Reply Quote 0
                                      • G
                                        g.jauch
                                        last edited by

                                        works fine, the display stays on… big THX cii  ;)

                                        btw the first dropbox-link is also working now... very strange :o

                                        cu gunther

                                        1 Reply Last reply Reply Quote 0
                                        • G
                                          g.jauch
                                          last edited by

                                          Hi,

                                          under pfsense 2.1 with the latest LCDproc-Dev driver you can configure the displayed entries via the webconfigurator inside the LCDproc Service Menu:

                                          1. Simply navigate to the LCD-Proc Service Menu: 'Services -> LCDproc'

                                          Click on "Enable LCDproc at startup" and change the settings as shown on the picture, like stephenw10 mentioned in this posting

                                          2. Then click on the "Screens" Tab to see the following menu

                                          and choose what the display should display, then click the "SAVE" button at the bottom of the page!

                                          And your LCD become alive ;)

                                          3. If your LCD shows only the following picture

                                          This means that your lcdproc-client "died", happens for me on every reboot… don't know why... i will have a look inside the php-script ( lcdproc-client is really a php-shell-script )

                                          Simple workaround... is to restart the lcdproc by hand ( 1. via command line, 2. via shellcmd )

                                          /usr/local/etc/rc.d/lcdproc.sh restart

                                          and all is fine... and running!

                                          cu gunther

                                          1 Reply Last reply Reply Quote 0
                                          • stephenw10S
                                            stephenw10 Netgate Administrator
                                            last edited by

                                            If you find a solution to that problem please tell us.  :)
                                            I have personally tried many, many modifications to the lcdproc client and start/stop scripts. None of them were very successful. That's the reason I have ended starting the client and server outside of the package system as detailed in that post.
                                            There is a lot of discussion about it in the lcdproc-dev thread in the packages subforum.

                                            Steve

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.