LCDProc 0.5.4-dev
-
@ nobita0313
Did you try removing the package and conf files and rebuild it from fresh to see if that resolves it?I have a question on the dev package. Since the last version or two that have been published, there are times that i will notice that the lcd display is blank except for the blinking heart with a 0 by connections ect. Its like it lost communication. The service is still running. If I restart it, its works fine. I am not sure why it just randomly stops working.
I thought it was during snort updates, rules refresh but I have noticed it happening at times that none of that happens. Even after some of these refreshes it works just fine. Has anyone else had this happen? I don't have the log setting to 3 since it was spamming the log with every lcd refresh or status refresh. So I have set it to 0. I haven't noticed any errors in the system log related to whats causing it to lose connection from service to display. I am on most recent version of pfsense 64 bit.
I can list out packages if needed or if there is anything else i can do to track/log whats going on, please let me know. It did work just fine for the past couple of years before most recent update maybe two… These were updated when pfsense was updated and all packages were reinstalled.
Any suggestions or help would be greatly appreciated.
-
I tried that before, no luck. I even built lcdproc from source (with FreeBSD 8.4, 8.3 is outdated and the pkg-add command is broken) and copy the files to /usr/local and it result the same. Would it be some problems with libusb that comes with pfsense?
My LCD display on a synology NAS encounter the same problem as you did, not sure why.
-
@kilthro
The servce status only monitors LCDd, the server part, and not the client. So if the client dies you just see whatever the server is generating, possibly just the heartbeat. The php client is subject to maximum run time before pfSense automatically kills it, a feature that was introduced for all php processes. I'm not sure if that has been fixed yet, it is possible to call php in a way that prevent this.@nobita0313
Ok, so I can see output from both just the server/driver and from the lcdproc client in your video and they all exhibit the same errors so it looks like a driver rpoblem of some sort. :-\Steve
-
A clean install in a VM runs the package flawlessly, this is awkward. :(
-
You mean using some sort of USB pass-through?
What hardware are you using now? Perhaps it's some USB speed issue, maybe there's a bios setting to force it to usb 1 mode. :-\
Steve
-
The problem seems to be caused by packages conflicts. My clean installed pfsense suffered from the same problem only after I restored my setting. If I restore it without any other packages, lcdproc works fine. I had iperf, shellcmd, RRD Summary installed previously.
-
Hmm, hard to see how any of those packages could have much effect on lcdproc or a USB device. Only if they're using most or all the CPU cycles for some reason. :-\
Steve
-
I'm no expert in this hardware area (hats off to Steve 8)), but I might add:
The problem seems to be caused by packages conflicts. My clean installed pfsense suffered from the same problem only after I restored my setting. If I restore it without any other packages, lcdproc works fine. I had iperf, shellcmd, RRD Summary installed previously.
Perhaps it would be worth a shot to restore without packages and then manually add the packages back one by one? The manual rebuild will be a bit of a pain, but it removes the possibility of some leftover weirdness in the restore file.
-
Hi, I have modified the original package a bit by disabling the LCDd execution and changing lcdproc.inc to connect to a different ip (vm host which actually has LCDd running and the hardware).
Now my question is how can I make the status to detect it as running instead of using LCDd for status verification?
I understand it does so by checking process list for LCDd?
I suppose the easiest for now would be faking it by writing some binary named LCDd that does nothing and is retained in the process list?Also I would like to either make this configurable.
That is add another gui page where it is possible to define ip/port of LCDd instead of configuring a local copy of LCDd daemon and make local LCDd settings optional if remote daemon is chosen.
Is anybody interested in such feature? -
It's been a while since I looked but I believe the service monitored is listed in the package config xml file.
Edit: Yep in the <service>section in lcdproc.xml
Steve</service>
-
Yeah, but I am not sure what I should write in there to make it work.
I can't obviously right php because thats what is actually running.
So I guess I need to write a custom is_running function instead? -
I believe that the Status: Services: page just greps for whatever is in the 'executable' field in the output of ps so you should be able to put the php client in there. Try it and see.
Steve
-
Tried to put both in lcdproc.xml and config.xml the string lcdproc.php (that should have been enough right?) and nada.
Still shows as stopped. -
You re-installed lcdproc with the changed file?
Steve
-
No, but I ran some other tests which I think mean it doesn't just check ps output.
I wrote a shellscript that just sleeps for a while and called it LCDd.
Obviously if I do ps | grep LCDd it returns a non empty result.
Yet the service appears to be stopped while the script is running.
Does it have to literally match the executable string or can I just use a part of it?
So does it have to be "/usr/local/bin/php -f /usr/local/pkg/lcdproc_client.php" as appears in lcdproc.inc where the client is launched? -
Hmm, more complex than I thought then. Perhaps it requires the correct rc file, clearly it needs that for the service restart button onn the Status: Services: page. I don't know, I'm just guessing now. ::)
You should probably ask this as a new question in the packages section.Steve
-
Would it be possible to add 38400 bps as an option for the port speed?
Take a look at: https://forum.pfsense.org/index.php?topic=90569.msg515874#msg515874 for the changes I had to make to get nMedia lcd working.Thanks,
Ali -
For my 64 bit 2.2.2 and the latest lcdproc I have to modify the lcdproc.inc file where is says "localhost' to "127.0.0.1" for mine to start up. I fixed this package in past but no time to fix this time around. I need to figure github out more.
file for my system is in /usr/local/pkg
need file already fixed I can upload mine
-
https://github.com/pfsense/pfsense-packages/pull/945
-
Nice. Thanks for that Topper. :)