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

    Lcdproc with Sure Electronics LCD

    Scheduled Pinned Locked Moved General pfSense Questions
    18 Posts 2 Posters 8.9k 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

      Ok so assume ugen0.2, have you tried 'edition=3'?

      Steve

      1 Reply Last reply Reply Quote 0
      • E
        ezyclie
        last edited by

        Tried and no success. Here is my LCDd.conf

        [server]
        DriverPath=/usr/local/lib/lcdproc/
        Driver=SureElec
        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
        [SureElec]
        driverpath =/usr/local/lib/lcdproc/
        Device=/dev/ugen0.2
        Size=20x4
        Edition=3
        Contrast=200
        Brightness=480
        
        

        with this error logs:

        
        May 16 23:40:15 	LCDd: LCDd version 0.5.5 starting
        May 16 23:40:15 	LCDd: Using Configuration File: /usr/local/etc/LCDd.conf
        May 16 23:40:15 	LCDd: Listening for queries on 127.0.0.1:13666
        May 16 23:40:15 	LCDd: SureElec: failed to configure port (Inappropriate ioctl for device)
        May 16 23:40:15 	LCDd: Driver [SureElec] init failed, return code -1
        May 16 23:40:15 	LCDd: Could not load driver SureElec
        May 16 23:40:15 	LCDd: There is no output driver
        May 16 23:40:15 	LCDd: Critical error while initializing, abort.
        May 16 23:40:16 	php: lcdproc: Start client procedure. Error counter: (0)
        
        1 Reply Last reply Reply Quote 0
        • stephenw10S
          stephenw10 Netgate Administrator
          last edited by

          Reading through the source code for the Sure Elec driver it expects to see a serial port not a usb device.

          Surprising that the uslcom driver does not generate a new serial device.  ???

          You should ask in the lcdproc-dev package thread. The new maintainer, mdima, is using a SureElec LCD.

          Steve

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

            It looks like the device should appear as ucom0.
            You need to have the ucom(4) driver loaded. Is it in the kernel?
            The uslcom driver has been updated quite a bit since 8.1 was released, though it seems to recognise your device.

            You could try adding the ucom driver from here:
            http://files.pfsense.org/jimp/ko-8.1/i386/ucom.ko
            Add it to /boot/modules.
            Load it from the command line:

            kld_load ucom.ko
            

            Or add ucom_load="YES" to /boot/loader.conf.local and reboot.

            Steve

            1 Reply Last reply Reply Quote 0
            • E
              ezyclie
              last edited by

              How to upload ko file to my router? is it allowed?

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

                Yes you can upload it. I usually use WinSCP uploading from windows.
                Alternatively you can fetch it directly from the machine:

                
                [2.0.1-RELEASE][root@pfsense.fire.box]/root(1): cd /boot/modules
                [2.0.1-RELEASE][root@pfsense.fire.box]/boot/modules(2): /etc/rc.conf_mount_rw
                [2.0.1-RELEASE][root@pfsense.fire.box]/boot/modules(3): fetch http://files.pfsense.org/jimp/ko-8.1/i386/ucom.ko
                ucom.ko                                       100% of   20 kB  429 kBps
                [2.0.1-RELEASE][root@pfsense.fire.box]/boot/modules(4): kldload ucom
                kldload: can't load ucom: File exists
                [2.0.1-RELEASE][root@pfsense.fire.box]/boot/modules(5): /etc/rc.conf_mount_ro 
                
                

                However as you can see on my machine ucom is already present in the kernel.

                The only other thing is to check that the USB product and vendor IDs are in the source code correctly.
                Enter: usbconfig dump_device_desc
                Paste the output here.

                Steve

                1 Reply Last reply Reply Quote 0
                • E
                  ezyclie
                  last edited by

                  This what i have now:

                  $ usbconfig dump_device_desc
                  ugen0.1: <ohci root="" hub="" amd="">at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON
                  
                    bLength = 0x0012 
                    bDescriptorType = 0x0001 
                    bcdUSB = 0x0100 
                    bDeviceClass = 0x0009 
                    bDeviceSubClass = 0x0000 
                    bDeviceProtocol = 0x0000 
                    bMaxPacketSize0 = 0x0040 
                    idVendor = 0x0000 
                    idProduct = 0x0000 
                    bcdDevice = 0x0100 
                    iManufacturer = 0x0001  <amd>iProduct = 0x0002  <ohci root="" hub="">iSerialNumber = 0x0000  <no string="">bNumConfigurations = 0x0001 
                  
                  ugen1.1: <ehci root="" hub="" amd="">at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON
                  
                    bLength = 0x0012 
                    bDescriptorType = 0x0001 
                    bcdUSB = 0x0200 
                    bDeviceClass = 0x0009 
                    bDeviceSubClass = 0x0000 
                    bDeviceProtocol = 0x0001 
                    bMaxPacketSize0 = 0x0040 
                    idVendor = 0x0000 
                    idProduct = 0x0000 
                    bcdDevice = 0x0100 
                    iManufacturer = 0x0001  <amd>iProduct = 0x0002  <ehci root="" hub="">iSerialNumber = 0x0000  <no string="">bNumConfigurations = 0x0001 
                  
                  ugen0.2: <cp2102 usb="" to="" uart="" bridge="" controller="" silicon="" labs="">at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON
                  
                    bLength = 0x0012 
                    bDescriptorType = 0x0001 
                    bcdUSB = 0x0110 
                    bDeviceClass = 0x0000 
                    bDeviceSubClass = 0x0000 
                    bDeviceProtocol = 0x0000 
                    bMaxPacketSize0 = 0x0040 
                    idVendor = 0x10c4 
                    idProduct = 0xea60 
                    bcdDevice = 0x0100 
                    iManufacturer = 0x0001  <silicon labs="">iProduct = 0x0002  <cp2102 usb="" to="" uart="" bridge="" controller="">iSerialNumber = 0x0003  <0001>
                    bNumConfigurations = 0x0001</cp2102></silicon></cp2102></no></ehci></amd></ehci></no></ohci></amd></ohci> 
                  
                  $ ls /dev
                  ad0
                  ad0s1
                  ad0s1a
                  ad0s2
                  ad0s2a
                  ad0s3
                  ata
                  bpf
                  bpf0
                  console
                  crypto
                  ctty
                  cuau0
                  cuau0.init
                  cuau0.lock
                  cuau1
                  cuau1.init
                  cuau1.lock
                  devctl
                  devstat
                  fd
                  fido
                  geom.ctl
                  io
                  klog
                  kmem
                  led
                  md0
                  md1
                  mdctl
                  mem
                  nfslock
                  null
                  pci
                  pf
                  ptmx
                  random
                  speaker
                  stderr
                  stdin
                  stdout
                  ttyu0
                  ttyu0.init
                  ttyu0.lock
                  ttyu1
                  ttyu1.init
                  ttyu1.lock
                  ufs
                  ufsid
                  ugen0.1
                  ugen0.2
                  ugen1.1
                  urandom
                  usb
                  usbctl
                  xpt0
                  zero
                  

                  NOTE: This LCD works properly under FreeBSD 9-STABLE but not under pfSense 2.0.1-RELEASE (i386)

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

                    In that case it's almost certainly due to the usb ids not in the source.
                    Have you tried one of the pfSense 2.1 snapshots? Based on FreeBSD 8.3.

                    Under FreeBSD 9 does it generate a new serial port?

                    Looking at the 8.1 source it is in the usbdevs file.
                    The ucom functionality has been changed from 8.2 up so it's hard to see how to update.

                    Steve

                    1 Reply Last reply Reply Quote 0
                    • E
                      ezyclie
                      last edited by

                      It generates ugen1.2

                      I will try 2.1 tonight and will let you know asap.

                      1 Reply Last reply Reply Quote 0
                      • E
                        ezyclie
                        last edited by

                        It worse now, even my ntpd won't start with 2.1

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

                          Well 2.1 is a work in progress so some things may not work. I take it LCDd won't start then? The lcdproc-dev package won't work because it's compiled for 8.1 you have to use the FreeBSD pkg.

                          Steve

                          1 Reply Last reply Reply Quote 0
                          • E
                            ezyclie
                            last edited by

                            Yeap. i just re-installed 2.0.1 and finding new LCD that compatible with my Alix board and pfSense 2.0.1. Do you have any recommendation?

                            Thanks.

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

                              All my experience is with the Firebox LCD which is built into the appliance so not much use to you.
                              Probably best to ask in the lcdproc-dev thread. Although I note that the only reference to the LCD you have is in reply to a similar suggestion.  ::)

                              Steve

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