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 622.1k 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

      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
                                          • stephenw10S
                                            stephenw10 Netgate Administrator
                                            last edited by

                                            Could you show us your system logs?
                                            I suspect you are seeing the same as me. Is that on your X-Core box?

                                            Steve

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