Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Help identify lcd display on Smoothwall SWG700 [Edit: Portwell EZIO]

    Scheduled Pinned Locked Moved Hardware
    59 Posts 9 Posters 15.5k 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

      Nice work. Unfortunately it fails to load for me:

       Could not open driver module /usr/local/lib/lcdproc/hd44780.so: /usr/local/lib/lcdproc/hd44780.so: unsupported file layout 
      

      Is that compiled 64bit? What FreeBSD version? I was testing in pfSense 2.4 so FreeBSD 11.

      Edit: Looks like it is 32bit, any chance of a 64bit version?

      Steve

      1 Reply Last reply Reply Quote 0
      • F
        fmertz
        last edited by

        Yep, 32bit FreeBSD 10.2.

        Ok, let me look around for FreeBSD 11 64bit…

        1 Reply Last reply Reply Quote 0
        • F
          fmertz
          last edited by

          OK, I attached a 64bit FreeBSD 10 driver. Let me know.

          hd44780.zip

          1 Reply Last reply Reply Quote 0
          • stephenw10S
            stephenw10 Netgate Administrator
            last edited by

            It works!  :D  ….mostly.

            The display looks correct.

            The driver initialises the display correctly from power off.

            The keypad doesn't work.

            I should note I've never seen the keypad work on this hardware, the original OS was not bootable. It may be broken for all I know though it looks in good condition.

            Not sure how to test that directly....

            Steve

            My LCDd.conf for reference:

            [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
            
            [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
            Speed=2400
            
            1 Reply Last reply Reply Quote 0
            • F
              fmertz
              last edited by

              You can test this keypad "manually".

              Create a background process to read from the device.```
              cat < /dev/cuau1 > nil.dat &

              
              Then, send xFEx06 to the device.```
              printf "\376\006" > /dev/cuau1
              

              The keypad status comes back in hex: xFDx4n. No key pressed is x4F. F is binary 1111. Each key pressed makes a bit go to 0, so:

              • Escape is x4E

              • Up is x4D

              • Enter is x4B

              • Down is x47

              So, press one of the keys, then send the command xFEx06. Press another key, then send the sequence. Once done with all keys, check nil.dat with```
              od -x nil.dat

              1 Reply Last reply Reply Quote 0
              • stephenw10S
                stephenw10 Netgate Administrator
                last edited by

                Hmm, nothing coming back at all. I would expect to get back 0x4f every time if the keypad was disconnected for example.

                Port somehow open write only?

                1 Reply Last reply Reply Quote 0
                • stephenw10S
                  stephenw10 Netgate Administrator
                  last edited by

                  Hmm set the port speed manually and initialised the display…. still nothing coming back

                  Sending

                  printf "\376\010" > /dev/cuau1
                  

                  Does correctly clear the display so commands are reaching the module as expected.

                  1 Reply Last reply Reply Quote 0
                  • F
                    fmertz
                    last edited by

                    The spec is here:

                    http://drivers.portwell.com/CA_Manual/EZIO/EZIO-FINAL.PDF

                    There is a picture of that ribbon cable for the keypad.

                    Could also be that the serial cable is somehow not connected right.

                    1 Reply Last reply Reply Quote 0
                    • stephenw10S
                      stephenw10 Netgate Administrator
                      last edited by

                      I don't believe it's a problem with the ribbon cable as I expect to see 0x4f sent even if the keypad is disconnected. It could be the serial cable…. I don't think the display sends anything else we can check that with. Hmm...

                      A second tester could help here.

                      Steve

                      1 Reply Last reply Reply Quote 0
                      • F
                        fmertz
                        last edited by

                        There is another thing, too. There is a "watchdog timeout" for custom characters if you do not send all 8 bitmaps. See Note 3 in the spec.

                        Send xFEx40. See if xFDx0E comes back…

                        1 Reply Last reply Reply Quote 0
                        • stephenw10S
                          stephenw10 Netgate Administrator
                          last edited by

                          Nothing from that either. I'll have to pull it out when I have time and check it.

                          Steve

                          1 Reply Last reply Reply Quote 0
                          • F
                            fmertz
                            last edited by

                            I started a separate thread here. Hopefully we can get a tester or two.

                            https://forum.pfsense.org/index.php?topic=129820.0

                            1 Reply Last reply Reply Quote 0
                            • S
                              serlogo
                              last edited by

                              hi fmertz,
                              is it possible to take 2.1.5 x64 and x32 eizo 300 driver.

                              please save me…

                              1 Reply Last reply Reply Quote 0
                              • stephenw10S
                                stephenw10 Netgate Administrator
                                last edited by

                                Upgrade!  ;)

                                Really is there any reason you're still running 2.1.5?

                                You could compile the driver against FreeBSD 8.3 with some effort I expect.

                                Steve

                                1 Reply Last reply Reply Quote 0
                                • W
                                  Wuebit
                                  last edited by

                                  Thanks works Perfect!  ;)

                                  1 Reply Last reply Reply Quote 0
                                  • x2rlX
                                    x2rl @stephenw10
                                    last edited by

                                    @stephenw10 Can you reupload than hex file please think the forum movement killed it. Thanks

                                    1 Reply Last reply Reply Quote 0
                                    • stephenw10S
                                      stephenw10 Netgate Administrator
                                      last edited by

                                      Sure here you go.

                                      But you can use fmertz's driver directly now via lcdproc if you want.
                                      See: https://forum.netgate.com/topic/115071/ezio-driver-for-lcdproc

                                      Steve

                                      pfsense.hex.txt

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