LCDProc 0.5.4-dev
-
Are the SDECLCDs screens hard-coded at 16x4?
I've also had to edit lcdproc.inc to change the button mapping, (Up and Down just need reversed) this should solve the Firebox X Core-e issue?
Also, how would one go about converting the SDECLCD(x86 ONLY) to be x86-64bit capable?
The driver is hard coded for 20x2. This is the max the driver will allow, and will clip anything outside of this window.
Not sure what is up with the buttons. AFAIK, the code supports all versions of the Fireboxes (with the XTM pending release). With the exception of the XTM, all key codes are unique, and all key codes reported on this forum have been incorporated in the code.
A 64bit binary of the driver is here (rename it to sdeclcd.so):
https://github.com/downloads/fmertz/sdeclcd/sdeclcd64.so
Do you have a 64bit version of LCDd already? You can check with "file LCDd".
Also, does this Lanner box have the same LEDs as the Fireboxes? The code I am working on incorporates control for the LEDs, based on the specifics reported on this forum, i.e. ICH model, specific GPIO pin, etc.
-
Are the SDECLCDs screens hard-coded at 16x4?
I've also had to edit lcdproc.inc to change the button mapping, (Up and Down just need reversed) this should solve the Firebox X Core-e issue?
Also, how would one go about converting the SDECLCD(x86 ONLY) to be x86-64bit capable?
The driver is hard coded for 20x2. This is the max the driver will allow, and will clip anything outside of this window.
Not sure what is up with the buttons. AFAIK, the code supports all versions of the Fireboxes (with the XTM pending release). With the exception of the XTM, all key codes are unique, and all key codes reported on this forum have been incorporated in the code.
A 64bit binary of the driver is here (rename it to sdeclcd.so):
https://github.com/downloads/fmertz/sdeclcd/sdeclcd64.so
Do you have a 64bit version of LCDd already? You can check with "file LCDd".
Also, does this Lanner box have the same LEDs as the Fireboxes? The code I am working on incorporates control for the LEDs, based on the specifics reported on this forum, i.e. ICH model, specific GPIO pin, etc.
I will try this as soon as I get home.
As for the LED, the unit does have one. that said, I used the writeio commands that Stephen made, and it locked up the NICs and crashed the box, clearly a different GPIO then?
-
As for the LED, the unit does have one. that said, I used the writeio commands that Stephen made, and it locked up the NICs and crashed the box, clearly a different GPIO then?
Well, the exact way the GPIO is interfaced depends on what model Intel Southbridge (ICH) you have (the port numbers vary). Even then, each Firebox series has a specific hard wiring of LED to GPIO pins. For all we know, Lanner models could be wired differently, or even have a different ICH altogether…
When you say 1 LED, do you mean 1 location (with maybe 2 colors) or actually just 1 LED? Fireboxes have 1 location, but it can light up red or green.
The latest (test) code (32bit) is here, with all LED and buttons coded in (source not released, yet):
-
As for the LED, the unit does have one. that said, I used the writeio commands that Stephen made, and it locked up the NICs and crashed the box, clearly a different GPIO then?
Well, the exact way the GPIO is interfaced depends on what model Intel Southbridge (ICH) you have (the port numbers vary). Even then, each Firebox series has a specific hard wiring of LED to GPIO pins. For all we know, Lanner models could be wired differently, or even have a different ICH altogether…
When you say 1 LED, do you mean 1 location (with maybe 2 colors) or actually just 1 LED? Fireboxes have 1 location, but it can light up red or green.
The latest (test) code (32bit) is here, with all LED and buttons coded in (source not released, yet):
Yes, I meant one location with 2 LEDs like the Firebox. I have the sample source code from Lanner themselves that powers the LEDs apparently, do you want me to send you them so you can reverse engineer it?
Building a 64bit lanner unit as I type this…
-
That 64bit driver appears to work well, awesome!
Just testing things right now, only issue I see is that it's still 16x4 screens instead of 20x2, but I know you didn't change any code
-
Yes, I meant one location with 2 LEDs like the Firebox. I have the sample source code from Lanner themselves that powers the LEDs apparently, do you want me to send you them so you can reverse engineer it?
Sure, I'll have a look.
-
That 64bit driver appears to work well, awesome!
Just testing things right now, only issue I see is that it's still 16x4 screens instead of 20x2, but I know you didn't change any code
Good news!
When you say 16 instead of 20, do you mean that it uses the first 16 characters out of 20, or that each character is wider so that only 16 show on the whole width? If 16 out of 20, maybe lcdproc (the client) thinks this is only 16 wide, somehow. You can test with the binary lcdproc that comes with the project (even running on another machine) to be sure…
-
That 64bit driver appears to work well, awesome!
Just testing things right now, only issue I see is that it's still 16x4 screens instead of 20x2, but I know you didn't change any code
Good news!
When you say 16 instead of 20, do you mean that it uses the first 16 characters out of 20, or that each character is wider so that only 16 show on the whole width? If 16 out of 20, maybe lcdproc (the client) thinks this is only 16 wide, somehow. You can test with the binary lcdproc that comes with the project (even running on another machine) to be sure…
Code from Lanner (includes LED, LCM, the software reset button (a pin hole on the units), and the physical LAN bypass feature):
http://mc.zsnnet.org/hosted/LannerLCMsamples.zip
As for what I mean on the character stuff, the LCD is 20x2, but the lcdproc status screens only use it like it's a 16x2 LCD. Something is writing to the 8 extra characters tho, since I sometimes see "Next" or "Prev" pop up in the extra spaces when i press a key button. LCDexec with my menu system also seems to be limited to writing to a 16x2. The Lanner-LCM driver you compiled for me a while back does use the full 20x2. Maybe there is some left over hard-coded 16x2 left in SDECLCD?
-
Code from Lanner (includes LED, LCM, the software reset button (a pin hole on the units), and the physical LAN bypass feature):
http://mc.zsnnet.org/hosted/LannerLCMsamples.zip
Does this work (as root)?
https://github.com/downloads/fmertz/sdeclcd/a.out
It should cycle the LEDs (Green, Yellow, then Dark as per the code). I ported the code to FreeBSD (seems to be DOS and Linux initially).
In short, it looks like the LEDs are interfaces off of the SuperIO. The code mentions the board number. Is it this?
http://www.scribd.com/doc/39794230/Spec-FW-7565
Looks like there is an ICH8 Southbridge, and a Winbond W83627THG SuperIO…
-
I'll have to try it when I get home from work, but yeah, that is the proper board/unit number I believe.
I had no clue they were board specific, what lanner sent me seemed generic. I guess there really won't be an easy way of getting the LEDs working for all models until we get the samples from everything - if it's even worth it.
Why can't these LEDs be easy and be part of the LCD/button stuff. :-\
-
Why can't these LEDs be easy and be part of the LCD/button stuff. :-\
That is what I am working on. This way, at least, the interface to the LEDs is captured in code as part of the driver. Now, whether we will have a client to turn them on/off is another matter…
-
Nobody has an idea about my cfa633 and the alternate rs232 pinout issue???
-
It seems very odd that it isn't wired in a standard manner. But if that is the case it would be a hardware only solution. I don't believe you can change the serial port pins in software (like you can with a parallel connected display).
If it is working under windows then it should be possible to have it function under lcdproc - with the correct driver. ;)Steve
-
Is there any chance to have the glcdlib driver also included with the LCDproc package?
It would allow us to use this very good priced graphic LCD screen with pfSense. This is a small digital photo frame which has an open alternative firmware called dpf-ax, allowing it to be used as graphical USB display. LCDProc's glcdlib driver actually translates the textual info in graphical format for displays like this.
-
Code from Lanner (includes LED, LCM, the software reset button (a pin hole on the units), and the physical LAN bypass feature):
http://mc.zsnnet.org/hosted/LannerLCMsamples.zip
Does this work (as root)?
https://github.com/downloads/fmertz/sdeclcd/a.out
It should cycle the LEDs (Green, Yellow, then Dark as per the code). I ported the code to FreeBSD (seems to be DOS and Linux initially).
In short, it looks like the LEDs are interfaces off of the SuperIO. The code mentions the board number. Is it this?
http://www.scribd.com/doc/39794230/Spec-FW-7565
Looks like there is an ICH8 Southbridge, and a Winbond W83627THG SuperIO…
Tried the a.out file, I keep getting "/a.out: Exec format error. Binary file not executable." Am I doing something stupid here, or is it not working?
-
Tried the a.out file, I keep getting "/a.out: Exec format error. Binary file not executable." Am I doing something stupid here, or is it not working?
Strange, this a.out file works for me (in the Virtualbox VM) both in 32 bit and 64 bit. I re-downloaded it from github to be sure, with wget, directly from within the VM. Are you using ASCII ftp with Windows? Also, this is compiled for FreeBSD 8.2 i386, not sure what version of FreeBSD your install of pfSense is based off of. Run "chmod 755 a.out" to be sure.
-
Tried the a.out file, I keep getting "/a.out: Exec format error. Binary file not executable." Am I doing something stupid here, or is it not working?
Strange, this a.out file works for me (in the Virtualbox VM) both in 32 bit and 64 bit. I re-downloaded it from github to be sure, with wget, directly from within the VM. Are you using ASCII ftp with Windows? Also, this is compiled for FreeBSD 8.2 i386, not sure what version of FreeBSD your install of pfSense is based off of. Run "chmod 755 a.out" to be sure.
Okay, tried fetching it, no change on the 64bit pfsense install… But then I tried it on my 32bit install on the same hardware and the program works in the sense that it ran, but the LED does not do anything at all. That's probably not much help tho. :/
-
But it prints to the console: "Status LED: Green" etc?
Steve
-
Yep, then Yellow, then Dark. Doesn't actually flip the LEDs tho. :-\
-
Okay, tried fetching it, no change on the 64bit pfsense install… But then I tried it on my 32bit install on the same hardware and the program works in the sense that it ran, but the LED does not do anything at all. That's probably not much help tho. :/
That is what I figured. That code doesn't reconcile with any of the SuperIO documentation I have seen, or even the code's own comments. Hopefully, the code comments will be enough to be able to come up with something…