LCD 2 x 16 display - sending data to COM port on FreeBSD/pfSense



  • Hi

    We have purchased some Caswell CAR-3000 appliances that use to run Smoothwall but now run pfSense (whcih is great).  Essentially they are of course just Intel PCs in a rack case.  Howvere they also come with a nice EZIO 16 x2 LCD display which is linked up to the COM port.  We found that if booting from USB using Hiren to XP we can update the LCD display using a little utility called serialsend.exe fromt he command prompt like this:

    serialsend /baudrate 2400 /devnum 2 /hex "\xfe\x28\xfe\x28\xfe\x01\xfe\x80TEXTFORLINE1\xfe\xaaTEXTFORLINE2"

    Basically it sends the Hex string above to COM2 and voila the message appears on the LCD panel :)

    Struggling to do the same on FreeBSD though :(  We found under /dev there is a "cuau0" and "cuau1" both having .init and .lock files and we are assuming  COM2 is cuau1.

    We tried calling this to do the same kind of thing on FreeBSD to what worked in DOS

    #stty -f /dev/cuau1
    #echo -en "\xfe\x28\xfe\x28\xfe\x01\xfe\x80TEXTFORLINE1\xfe\xaaTEXTFORLINE2"

    and we get no error but the display doesn't change :(

    We found a useful PDF with a bash script here: http://drivers.portwell.com/CA_Manual/EZIO/EZIO-300.pdf but it refers to /dev/ttyS1 which we do not have listed under /dev on FreeBSD so I am wondering if it's missing a driver or if its /dev/cuau1 (even though running a script with that hasn't worked)

    Does anyone have any suggestions, woul dbe most grateful as wasted hours trying to get this far

    Thanks!



  • Any reason you aren't using the LCDProc package?  I just loaded it and looked through it and now I think I'm going to source some LCD displays - seriously cool features are available in there.



  • I havent' tried it as it just seemed overkill when in theory we just need to send hex to the COM port.. Not a FreeBSD expert unfortunately.  I have some code from the LCD manufacturer to try so will post if it works!



  • Installed LCDProc and looks very good.  The issue is there is no driver for the EZIO 300 :(

    These are using on Caswell (Portwell) and Checkpoint appliances.

    Does anyone know of a driver - seems other people are also looking for one on Google but no resolution as yet.  I have no idea how to write one unfortunately but the hex code in my original post is what needs to be sent to the COM port if that helps.

    I tried all the other drivers (didn't reboot after each so not sure if need to do that or if they take effect once selected and saved?)

    Any help much appreciated



  • There is this: https://forum.pfsense.org/index.php?topic=94366.0

    Then, there is this: http://lcdproc.sourceforge.net/docs/lcdproc-0-5-5-user.html#mtc_s16209x-howto

    You might want to "manually" start the package for now. The "daemon" is LCDd. It needs a small skeleton config file telling it what the driver is, and what the parameters are (here, the device). You can use LCDd command line parameters to point to it. Once that works, you can start the "client" lcdproc with whatever parameter you like (like clock or CPU). Once all of that works, you can try your luck with the pfSense package.

    The user guide is here: http://lcdproc.sourceforge.net/docs/lcdproc-0-5-5-user.html

    Best of luck, keep us posted.




  • Netgate Administrator

    Works.  :)