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

    LCDProc 0.5.4-dev

    Scheduled Pinned Locked Moved pfSense Packages
    587 Posts 68 Posters 603.0k 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.
    • stephenw10S
      stephenw10 Netgate Administrator
      last edited by

      Yes I like your proposal.
      Have an option in LCDd.conf for an initial state on boot up. For most people this will be sufficient.

      Go to (some other state) on gateway down is intersting. Another suggestion was go red when there is a warning in the GUI.

      My X-Peak box LCD is still crashing in less than 24hours. It's interesting to note though that LCDd displays the "thankyou for using pfSense" message so presumably it doesn't crash out hard but rather shuts down or is killed.

      I'll try the new driver.

      Steve

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

        This can't be right.  :-\

        
        [2.0.1-RELEASE][root@pfsense.fire.box]/root(7): ps aux | grep lcdproc
        root    5983  0.0  3.4 47452 17220  ??  SN   11:27PM   0:00.36 /usr/local/bin/php -f /usr/local/pkg/lcdproc_client.php
        root   22313  0.0  3.4 47452 17220  ??  SN   11:27PM   0:00.36 /usr/local/bin/php -f /usr/local/pkg/lcdproc_client.php
        root   23243  0.0  3.4 47452 17184  ??  SN   11:27PM   0:00.36 /usr/local/bin/php -f /usr/local/pkg/lcdproc_client.php
        root   25113  0.0  0.3  3656  1400  ??  IN   11:27PM   0:00.01 /bin/sh /usr/local/etc/rc.d/lcdproc.sh start
        root   32258  0.0  3.4 47452 17220  ??  SN   11:27PM   0:00.36 /usr/local/bin/php -f /usr/local/pkg/lcdproc_client.php
        root   59818  0.0  3.4 47452 17220  ??  SN   11:27PM   0:00.36 /usr/local/bin/php -f /usr/local/pkg/lcdproc_client.php
        
        

        Steve

        1 Reply Last reply Reply Quote 0
        • F
          fmertz
          last edited by

          Brave souls:

          Test SDEC driver with LED support:

          Code ported from Linux, basic testing under FreeBSD, with hard coded support for X-e boxes only for now:

          https://github.com/downloads/fmertz/sdeclcd/sdeclcd_led.so

          Rename the file to sdeclcd.so
          Restart LCDd
          telnet <pfsense box="" ip="">13666
          "hello"
          "info"
          "output 1" <– Red on
          "output 16" <-- Green on
          "output 256" <-- Red blinking

          Again X-Core-e only for now. Feedback welcome. Thanks.</pfsense>

          1 Reply Last reply Reply Quote 0
          • M
            mdima
            last edited by

            @stephenw10:

            This can't be right.  :-\

            
            [2.0.1-RELEASE][root@pfsense.fire.box]/root(7): ps aux | grep lcdproc
            root    5983  0.0  3.4 47452 17220  ??  SN   11:27PM   0:00.36 /usr/local/bin/php -f /usr/local/pkg/lcdproc_client.php
            root   22313  0.0  3.4 47452 17220  ??  SN   11:27PM   0:00.36 /usr/local/bin/php -f /usr/local/pkg/lcdproc_client.php
            root   23243  0.0  3.4 47452 17184  ??  SN   11:27PM   0:00.36 /usr/local/bin/php -f /usr/local/pkg/lcdproc_client.php
            root   25113  0.0  0.3  3656  1400  ??  IN   11:27PM   0:00.01 /bin/sh /usr/local/etc/rc.d/lcdproc.sh start
            root   32258  0.0  3.4 47452 17220  ??  SN   11:27PM   0:00.36 /usr/local/bin/php -f /usr/local/pkg/lcdproc_client.php
            root   59818  0.0  3.4 47452 17220  ??  SN   11:27PM   0:00.36 /usr/local/bin/php -f /usr/local/pkg/lcdproc_client.php
            
            

            Steve

            Hi Steve,
            yes, this can't be right!!

            What do you think if I add to the stop script something like:

            ps auxw |awk '/lcdproc_client/ {print $2}'|xargs kill

            Thanks,
            Michele

            1 Reply Last reply Reply Quote 0
            • M
              mdima
              last edited by

              @fmertz:

              Brave souls:

              Test SDEC driver with LED support:

              Code ported from Linux, basic testing under FreeBSD, with hard coded support for X-e boxes only for now:

              https://github.com/downloads/fmertz/sdeclcd/sdeclcd_led.so

              Rename the file to sdeclcd.so
              Restart LCDd
              telnet <pfsense box="" ip="">13666
              "hello"
              "info"
              "output 1" <– Red on
              "output 16" <-- Green on
              "output 256" <-- Red blinking

              Again X-Core-e only for now. Feedback welcome. Thanks.</pfsense>

              That's great! With few lines in "lcdproc_client.php" we can support the output leds for the SDEC driver!

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

                @mdima:

                What do you think if I add to the stop script something like:

                ps auxw |awk '/lcdproc_client/ {print $2}'|xargs kill

                In fact I was looking for the wrong thing. lcdproc_client.php is called from lcdproc.sh which should be killed when the stop script is run but doesn't for some reason.

                The big problem, as I see it, is that the client program doesn't stop itself if the LCDd daemon is independently stopped for some reason. This leads to the possibility of starting more clients.

                It all seems a little odd. I have to investigate further.

                Steve

                Edit: Also got to try the new driver will LED.  :)

                1 Reply Last reply Reply Quote 0
                • M
                  m4f1050
                  last edited by

                  So let me get this straight, x-core = x500,x700,etc and x-core-e = x550e,7750e,etc (basically ones ending in "…50e" correct?

                  1 Reply Last reply Reply Quote 0
                  • F
                    fmertz
                    last edited by

                    @m4f1050:

                    So let me get this straight, x-core = x500,x700,etc and x-core-e = x550e,7750e,etc (basically ones ending in "…50e" correct?

                    Stephew10 is the expert on the various models, but reportedly all models in a product line have the same hardware, and the number indicates a (watchguard) software feature level. As of now, the test driver has support for the LEDs on all x-<whatever>-e models. I have tested it on a x750e. Basically, all models with a ICH6 Southbridge are coded in at the moment.</whatever>

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

                      There are three different hardware types that use the SDEC LCD.

                      The X-Core: X500, X700, X1000 and X2500.

                      The X-Peak: X5000, X6000 and X8000.

                      The X-Core-e: X550e: X550e, X750e and X1250e. And the X-Peak-e: X5500e, X6500e and X8500e.
                      The X-Core-e and X-Peak-e are effectively the same hardware.

                      Also there are some variants based on these such as the ssl-100 and ssl-core but these are far more rare.

                      Steve

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

                        OK some interesting things to report.
                        I did a clean install of v0.8 of the package on my X-Peak and less than 24Hrs later noticed the webgui became unavailable. As before it came back again but left no trace in the logs. However this evening I happened to be connected to the box via ssh when is happened so I could poke around a bit.

                        I think this explains why I couldn't connect to the webgui or login.

                        
                        last pid: 56372;  load averages:  4.89,  3.27,  3.44           up 2+20:13:22  20:02:54
                        111 processes: 10 running, 84 sleeping, 1 zombie, 16 waiting
                        CPU: 24.0% user,  0.0% nice, 75.7% system,  0.4% interrupt,  0.0% idle
                        Mem: 55M Active, 16M Inact, 56M Wired, 1036K Cache, 59M Buf, 357M Free
                        Swap:
                        
                          PID USERNAME PRI NICE   SIZE    RES STATE    TIME   WCPU COMMAND
                        50705 nobody    74  r30  3368K  1548K RUN     27.9H 100.00% LCDd
                        
                        

                        Yes LCDd using 100% CPU.   ::)

                        At that point I didn't want to kill LCDd because I knew that would cause lcdproc_client.php to fill the logs with errors and I was hoping the logs might contain clues. So I thought I would kill lcdclient.sh first:

                        
                        [2.0.1-RELEASE][root@pfsense.fire.box]/root(22): ps aux | grep lcd
                        root   51028  0.0  0.3  3656  1508  ??  R    Mon07PM   0:00.00 /bin/sh /tmp/lcdclient.sh
                        root   51368  0.0  3.4 47452 17472  ??  S    Mon07PM   0:14.73 /usr/local/bin/php -f /usr/local/pkg/lcdproc_client.php
                        [2.0.1-RELEASE][root@pfsense.fire.box]/root(23): kill 51028
                        [2.0.1-RELEASE][root@pfsense.fire.box]/root(24): ps aux | grep lcd
                        root   51028  0.0  0.3  3656  1508  ??  R    Mon07PM   0:00.00 /bin/sh /tmp/lcdclient.sh
                        root   51368  0.0  3.4 47452 17472  ??  S    Mon07PM   0:14.73 /usr/local/bin/php -f /usr/local/pkg/lcdproc_client.php
                        
                        

                        It won't die!

                        Eventually I did kill LCDd and everything else died with it.

                        The system logs show nothing unusual.

                        For me the package is not stable on the X-Peak but I don't know if it's a driver problem or a bug in LCDd.
                        Hmmm…  :-\

                        Steve

                        1 Reply Last reply Reply Quote 0
                        • M
                          mdima
                          last edited by

                          Hi Steve,
                            I was thinking about you and your LCDproc problem this evening (no, I don't think it's awkward)…

                          I am afraid it could be a problem on the driver or the combination between your panel and the driver... can you send me your lcdproc.conf file?

                          Thanks,
                          Michele

                          1 Reply Last reply Reply Quote 0
                          • B
                            Brak
                            last edited by

                            I have multiple X-Peak units (x550e, x750e) if you all have a specific tests you want me to run.

                            1 Reply Last reply Reply Quote 0
                            • F
                              fmertz
                              last edited by

                              @stephenw10:

                              OK some interesting things to report.

                              So this is on X-Peak only, Version 0.5.5 only, and with the "old" 0.5.4 driver?

                              Can you give it a shot with the 0.5.5 driver? https://github.com/downloads/fmertz/sdeclcd/sdeclcd.so

                              Was it working ok on 0.5.4?

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

                                @ Brak The X-Peak is X6000 etc see list above.  ;)

                                @ mdima The lcd in the X-Peak is identical to the X-Core but the parallel port hardware is different.

                                @fmertz That's using the v0.8 package downloaded via the package manager. I thought that had the 0.55 driver version already? It is 14395 bytes in size.

                                So today I bootup my X-e box to test some stuff and check out this nightmare boot log:

                                
                                Jan 19 16:10:44 pfSense php: : pfSense package system has detected an ip change 0.0.0.0 ->   ... Restarting packages.
                                Jan 19 16:10:44 pfSense check_reload_status: Starting packages
                                Jan 19 16:10:45 pfSense php: : Restarting/Starting all packages.
                                Jan 19 16:10:45 pfSense php: lcdproc: Sync: Begin package sync
                                Jan 19 16:10:45 pfSense php: lcdproc: Sync: End package sync
                                Jan 19 16:10:45 pfSense php: lcdproc: Sync: Begin package sync
                                Jan 19 16:10:45 pfSense php: lcdproc: Sync: End package sync
                                Jan 19 16:10:48 pfSense LCDd: LCDd version 0.5.5 starting
                                Jan 19 16:10:48 pfSense LCDd: Using Configuration File: /usr/local/etc/LCDd.conf
                                Jan 19 16:10:48 pfSense LCDd: Listening for queries on 127.0.0.1:13666
                                Jan 19 16:10:48 pfSense php: : IPSEC: One or more IPsec tunnel endpoints has changed its IP. Refreshing.
                                Jan 19 16:10:49 pfSense php: : Restarting/Starting all packages.
                                Jan 19 16:10:49 pfSense login: login on console as root
                                Jan 19 16:10:49 pfSense sshlockout[40285]: sshlockout/webConfigurator v3.0 starting up
                                Jan 19 16:10:49 pfSense php: lcdproc: Sync: Begin package sync
                                Jan 19 16:10:49 pfSense php: lcdproc: Sync: Restarting the service
                                Jan 19 16:10:49 pfSense LCDd: Connect from host 127.0.0.1:64307 on socket 11
                                Jan 19 16:10:50 pfSense check_reload_status: Reloading filter
                                Jan 19 16:10:50 pfSense LCDd: Server shutting down on SIGTERM
                                Jan 19 16:10:51 pfSense php: lcdproc: Sync: End package sync
                                Jan 19 16:10:51 pfSense php: lcdproc: Sync: Begin package sync
                                Jan 19 16:10:52 pfSense php: lcdproc: Sync: Restarting the service
                                Jan 19 16:10:52 pfSense php: lcdproc: Connection to LCDd process lost  ()
                                Jan 19 16:10:52 pfSense LCDd: sock_send: socket write error
                                Jan 19 16:10:53 pfSense LCDd: LCDd version 0.5.5 starting
                                Jan 19 16:10:53 pfSense LCDd: Using Configuration File: /usr/local/etc/LCDd.conf
                                Jan 19 16:10:53 pfSense LCDd: Listening for queries on 127.0.0.1:13666
                                Jan 19 16:10:54 pfSense php: lcdproc: Sync: End package sync
                                Jan 19 16:10:54 pfSense LCDd: Server shutting down on SIGTERM
                                Jan 19 16:10:55 pfSense php: lcdproc: Connection to LCDd process lost  ()
                                Jan 19 16:10:55 pfSense LCDd: LCDd version 0.5.5 starting
                                Jan 19 16:10:55 pfSense LCDd: Using Configuration File: /usr/local/etc/LCDd.conf
                                Jan 19 16:10:55 pfSense LCDd: Listening for queries on 127.0.0.1:13666
                                Jan 19 16:10:56 pfSense LCDd: Connect from host 127.0.0.1:23883 on socket 12
                                Jan 19 16:10:57 pfSense LCDd: Server shutting down on SIGTERM
                                Jan 19 16:10:58 pfSense LCDd: LCDd version 0.5.5 starting
                                Jan 19 16:10:58 pfSense LCDd: Using Configuration File: /usr/local/etc/LCDd.conf
                                Jan 19 16:10:58 pfSense LCDd: sock_create_inet_socket: cannot bind to port 13666 at address 127.0.0.1 - Address already in use
                                Jan 19 16:10:58 pfSense LCDd: sock_init: error creating socket - Address already in use
                                Jan 19 16:10:58 pfSense LCDd: Critical error while initializing, abort.
                                Jan 19 16:10:58 pfSense LCDd: sock_send: socket write error
                                Jan 19 16:10:58 pfSense php: lcdproc: Connection to LCDd process lost  ()
                                Jan 19 16:10:58 pfSense php: lcdproc: Connection to LCDd process lost  ()
                                Jan 19 16:10:58 pfSense php: lcdproc: Connection to LCDd process lost  ()
                                Jan 19 16:11:10 pfSense php: lcdproc: Failed to connect to LCDd process Operation timed out (60)
                                Jan 19 16:11:10 pfSense php: lcdproc: Failed to connect to LCDd process Operation timed out (60)
                                Jan 19 16:11:21 pfSense php: lcdproc: Failed to connect to LCDd process Operation timed out (60)
                                Jan 19 16:11:21 pfSense php: lcdproc: Failed to connect to LCDd process Operation timed out (60)
                                Jan 19 16:11:32 pfSense php: lcdproc: Failed to connect to LCDd process Operation timed out (60)
                                Jan 19 16:11:32 pfSense php: lcdproc: Failed to connect to LCDd process Operation timed out (60)
                                
                                

                                Rebooted. Almost extactly the same thing!  :-\

                                Steve

                                1 Reply Last reply Reply Quote 0
                                • F
                                  fmertz
                                  last edited by

                                  @stephenw10:

                                  @fmertz That's using the v0.8 package downloaded via the package manager. I thought that had the 0.55 driver version already? It is 14395 bytes in size.

                                  So today I bootup my X-e box to test some stuff and check out this nightmare boot log:

                                  
                                  Jan 19 16:10:48 pfSense LCDd: Using Configuration File: /usr/local/etc/LCDd.conf
                                  
                                  

                                  From memory, we never updated the actual driver file in the package from V0.5.4 to V0.5.5. Feel free to check the V0.5.5 file at the link mentioned above. But first, I would definitely cleanup the boot area. Have you checked /etc/rc.d/? Might have more than one instance of several scripts.

                                  1 Reply Last reply Reply Quote 0
                                  • M
                                    mdima
                                    last edited by

                                    @fmertz:

                                    From memory, we never updated the actual driver file in the package from V0.5.4 to V0.5.5. Feel free to check the V0.5.5 file at the link mentioned above. But first, I would definitely cleanup the boot area. Have you checked /etc/rc.d/? Might have more than one instance of several scripts.

                                    fmertz, maybe it's the case to ask to the development team to update the files under files.pfsense.org? You do or I do?
                                    Is it stable the V0.5.5 driver for SDEC?

                                    Thanks,
                                    Michele

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

                                      I have the following problem: everytime I am disconnecting a device from an ethernet port the LCDProc is stopping.

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

                                        I have a feeling that's because every time pfSense detects an IP change on an interface it restarts all the packages.
                                        I think it may be caused by trying to start a new instance of LCDd before the old one has been killed. LCDd then cannot open local port 13366 and quits leaving lcdclient.sh running and spamming the logs. In the worst case this happens several times with the result that several instances of lcdclient are running.
                                        Perhaps this is caused by the sleep delay in between the kill statements? Perhaps it should kill LCDd first?  :-\

                                        In my opinion lcdclient.sh needs to quit after, say 3, tries if lcdproc_client.php cannot connect to LCDd. Is that what Seth had in mind when he setup the counter variable in lcdclient?

                                        What do you think?

                                        Steve

                                        1 Reply Last reply Reply Quote 0
                                        • M
                                          mdima
                                          last edited by

                                          @stephenw10:

                                          In my opinion lcdclient.sh needs to quit after, say 3, tries if lcdproc_client.php cannot connect to LCDd. Is that what Seth had in mind when he setup the counter variable in lcdclient?

                                          What do you think?

                                          Steve

                                          Hi Steve,
                                            yes, I agree… I will do this improvement in the next update of the package...

                                          Michele

                                          1 Reply Last reply Reply Quote 0
                                          • M
                                            m4f1050
                                            last edited by

                                            I tried this LCDProc 0.5.4-dev and all it does is flash a few screens real fast then it says "Thank you for using pfSense" and sits on that screen forever…  :O

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