EZIO Driver for LCDproc
-
Right. First up, this is easy to get this stuck in odd states.
If the display stops responding
0x00, 0xFE, 0xFE, 0x37
should reset the state machine. In most places 0x00 will put you back to needing to do an init.
Init is
0xFE, 0x28
Then either:
Send chars as needed (You cant use 0x10 or 0xFE)
OR
Send 0x10 and the module will reply with the keystates, this means you HAVE to poll this (STUPID!). The Low baud rate and need to poll explains the issues people have had.
OR
Send 0xFE and one of the following commands…5Ah - get ID, returns 0x02,0x05 so sending 0xFE, 0x28, 0xFE, 0x5A from cold will confirm the module is there and give the version (2.5) 01h - clear display 02h - home - Sets Data pointer in LCD to 0 06h - read keypad 08h - Display off, Cursor Off, Blink off 0Ch - Display on, Cursor off, blink off 0Dh - Display on, Cursor off, blink on 0Eh - Display on, Cursor on, blink off 10h - Cursor left 14h - Cursor Right 18h - Display Left shift 1Ch - Display Right shift 40h - Set Char Gen ram address to 0 C0h - Home line 2 - Set Data pointer to halfway through data ram 37h - Reset command mode
I'm not sure what use 0x40 really is
That's all there is. Just going to bash together an app to test and play with now. -
Ok, so that 0x5A version command is an undocumented feature…
0x40 is documented, it is the beginning code for downloading custom characters.
-
That sort of makes sense, looking at the code I really couldn't see how you could actually use it though.
The disasembled code now compiles and SORT of works, need to fix what looks like a config word issue.
-
Hi Guys
I registered here, to see if I can get some help.
I am a very basic user, with limited Skills.
I have a CAR 3000 Portwell unit, that I installed pfSense on, the latest / Current Version.
I followed, and tried about all the Steps, and for some time, all my Display said, was pfSense Rules !
I then Powered the Device down, and not it's back to **
Can you please just give me a complete guide, as to what is needed, to get the Display to work please.
I am willing to test for you also.
System pfSense
Netgate Device ID: 92f16f5ccf418fc9167aBIOS Vendor: American Megatrends Inc.
Version: 080015
Release Date: Mon Dec 21 2009Version 2.4.2-RELEASE (amd64)
built on Mon Nov 20 08:12:56 CST 2017
FreeBSD 11.1-RELEASE-p4The system is on the latest version.
Version information updated at Sat Nov 25 13:29:23 -02 2017Thank You for your Help
-
This appears to be in the FreeBSD 11 stable package now. Wonder if we can get it pulled into our repo….
Steve
-
OK, I rebuilt this driver with fewer dependencies:
$ ldd server/drivers/hd44780.so server/drivers/hd44780.so: libkvm.so.6 => /lib/libkvm.so.6 (0x28205000) libc.so.7 => /lib/libc.so.7 (0x2806f000)
File:
$ file server/drivers/hd44780.so server/drivers/hd44780.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (FreeBSD), dynamically linked, not stripped
Let me know…
I've got an old IBM security appliance that will only run x86 and I had the same issue with libftdi1 not existing. The recompiled version works perfect, thanks!
-
The EZIO driver is now in the lcdproc package for 2.4.4 snapshots but not yet exposed by the GUI. Still easier to test though.
Steve
-
would this work with pihole? my smoothwall box runs debian with pi-hole its the very same screen.
-
The driver is in lcdproc upstream so if you install lcdptoc it should be available.
Steve
-
@stephenw10 ive put pfsense back on the box any ideas what settings is needed
Com port
Set the com port LCDproc should use.
Display size
Set the display size lcdproc should use.
Driver
Select the LCD driver LCDproc should use. Some drivers will show additional settings.
Connection type
Select the HD44780 connection type
Port speed
Set the port speed.
Caution: not all the driver or panels support all the speeds, leave "default" if unsure. -
The driver is not in the GUI yet so you can't set lcdd.conf using the package menu. You still need to manually edit it and start it as shown earlier in this thread. But you no longer need to install the driver.
Steve
-
Does anyone know if this comes built into LCDProc /w pfSense 2.4.4 ??
Thanks
-
The driver is now included in lcdproc but the pfSense gui parts are not there yet. So no need to copy the module across but you still need to start it manually.
Steve
-
@stephenw10 not sure how to apply it.. I am a windows guy not a *nix guy but can follow instructions easily.
Thanks
-
Install the lcdproc and shellcmd packages.
Do NOT enable anything in the lcdproc package in the webgui.
Create file /root/LCDd.conf
[server] DriverPath=/usr/local/lib/lcdproc/ Driver=hd44780 Bind=127.0.0.1 Port=13666 ReportLevel=3 ReportToSyslog=yes User=nobody Foreground=no ServerScreen=no GoodBye="Thanks for using" GoodBye=" pfSense " WaitTime=5 ToggleRotateKey=Enter PrevScreenKey=Left NextScreenKey=Right ScrollUpKey=Up ScrollDownKey=Down [menu] MenuKey=Escape EnterKey=Enter UpKey=Up DownKey=Down [hd44780] driverpath=/usr/local/lib/lcdproc/ ConnectionType=ezio Device=/dev/cuau1 Keypad=yes Size=16x2 KeyMatrix_4_1=Enter KeyMatrix_4_2=Up KeyMatrix_4_3=Down KeyMatrix_4_4=Escape
Add shellcmds to start the lcdproc daemon and client:
Reboot.
Steve
-
@stephenw10 and how do i get it to display server uptime?
-
The U switch for the client is uptime I think. Been a while since I looked into that. If you just want uptime just remove C and T.
Steve
-
This post is deleted! -
Has LCDproc the GUI been updated yet to support the EZIO?
If not does anyone know when it might be?
Thanks
-
Not yet. I did have a stab at it a while back but there were a few complications. It should be pretty easy to add though.
Steve