Menu

Which LCD screen has WD Sentinel DX4000?

Help
2018-11-02
2020-01-06
  • Dante León Marín Carril

    Hello, I'm asking for help. I want to install this amazing driver, LCDproc to my NAS, using Rockstor (CentOS based).

    Could you help me, please? I have no experience on this issue. Here some pictures:

    Image 1

    Image 2

    Image 3

    The NAS itself:

    https://support.wdc.com/product.aspx?ID=1601&lang=en

    Image 4

    Thank you very much!

     

    Last edit: Dante León Marín Carril 2018-11-02
  • Ethan Dicks

    Ethan Dicks - 2018-11-02

    That's an odd looking connector up there. From the view of the lit LCD and the part number, it's likely that the core LCD is some sort of 16x2 HD44780-based LCD module, but it looks tough to guess which lines at the connector might correspond to which standard HD447800 signals because the die is under an epoxy blob, not in a standard PLCC or QFP package that one might trace out.

    I won't say it's impossible to figure out but it looks quite difficult.

     
  • Dante León Marín Carril

    Thank you for answering so fast. Do you think is a good idea to try different drivers until someone works? Which ones do you think it could be the best start to try them? Thank you again.

     
  • Ethan Dicks

    Ethan Dicks - 2018-11-03

    The driver isn't the issue, it's the connection back to the CPU. It's likely that's just an HD44780 under one of those epoxy bubbles. That's the driver you probably need. What you have to know is what I/O location in memory the ports are at, and what bits control which functions. Even more than that, the HD44780 can be talked to in 4-bit mode or 8-bit mode and you'd need to know that just to begin speaking to the LCD.

    In the case of attaching a raw HD44780-type 16x2 LCD, there are examples in the LCDproc docs about how to wire them up to a PC parallel port. The port has one of several known addresses and the wiring has to match what the driver is told about the data pins and the handshake lines.

    Without knowing how the DX4000 is wired and how it talks to its LCD, you can't just "load a driver" for LCDproc and have anything work. You have to know the ports and pins first.

     

    Last edit: Ethan Dicks 2018-11-03
  • Dante León Marín Carril

    Well.. This is sad... :c Thanks for your advice.

     
  • Raz Black

    Raz Black - 2019-04-05

    i know this is an old topic, but relevant to me here as I have a DX4000 now running IPFire and have been able to get atleast (for now) LCD4Linux to recognize the device. I am also interested in testing LDCproc, but will be doing that next.

    One thing to note about this LCD is that it is 'compatible' with the generic HD44780 and on the DX4000 it uses parallel port 0x378

    I have not tested much yet.. i literally "just" got this working. you will need to add the parport device to the system by executing as root:

    'mknod /dev/parport0 c 99 0'

    this helped me to get the device to initialize for lcd4linux

    I "highly" recommend you watch this video and mod the pcb on the DX4000 to use a serial console (https://www.youtube.com/watch?v=amUXkdGdcTg&t=264s), it makes install, config, and everything so much better.

    I hope to be able to try LCDproc very soon, i want to see how easy and well it works too!

    hope this helps some.

    [edit] some details of the device:

    lcd4linux.c: initializing driver HD44780
    HD44780: $Rev: 1066 $
    HD44780: using model 'generic'
    HD44780: using parallel port
    HD44780: using 1 Controller(s)
    HD44780: using 8 bit mode
    udelay: using gettimeofday() delay loop
    HD44780: using ppdev /dev/parport0
    HD44780: wiring: DISPLAY:RS - PARPORT:INIT (Pin 16)
    HD44780: wiring: DISPLAY:RW - PARPORT:AUTOFD (Pin 14)
    HD44780: wiring: DISPLAY:ENABLE - PARPORT:STROBE (Pin 1)
    HD44780: wiring: DISPLAY:ENABLE2 - PARPORT:GND
    HD44780: wiring: DISPLAY:ENABLE3 - PARPORT:GND
    HD44780: wiring: DISPLAY:ENABLE4 - PARPORT:GND
    HD44780: wiring: DISPLAY:BACKLIGHT - PARPORT:GND
    HD44780: wiring: DISPLAY:GPO - PARPORT:GND
    HD44780: wiring: DISPLAY:GPI - PARPORT:GND
    HD44780: wiring: DISPLAY:POWER - PARPORT:GND
    HD44780: timing: CY = 1000 ns (default)
    HD44780: timing: PW = 450 ns (default)
    HD44780: timing: AS = 140 ns (default)
    HD44780: timing: AH = 20 ns (default)
    HD44780: timing: INIT1 = 4100 us (default)
    HD44780: timing: INIT2 = 100 us (default)
    HD44780: timing: EXEC = 80 us (default)
    HD44780: timing: WRCG = 120 us (default)
    HD44780: timing: CLEAR = 2250 us (default)
    HD44780: timing: HOME = 2250 us (default)
    HD44780: timing: ONOFF = 2250 us (default)
    HD44780: using busy-flag checking
    HD44780: timeout waiting for busy flag on controller 1 (0x92)
    HD44780: timeout waiting for busy flag on controller 1 (0xd1)
    HD44780: using 0 GPI's and 0 GPO's
    initializing layout 'Default'
    layout.c: Layout:Default: migrating 'row1.col1' to 'Layer:1.row1.col1'
    Creating new timer group (500 ms)
    widget 'CPU': Class 'text', Parent '<root>', Layer 1, Row 0, Col 0 (to 0,9)
    lcd4linux.c: starting main loop</root>

     

    Last edit: Raz Black 2019-04-05
  • Raz Black

    Raz Black - 2019-04-07

    here are some details after installing OPNsense:

    ppc1: <parallel port=""> port 0x378-0x37f irq 5 on acpi0
    ppc1: Generic chipset (NIBBLE-only) in COMPATIBLE mode
    ppbus0: <parallel bus="" port=""> on ppc1
    lpt0: <printer> on ppbus0
    lpt0: Interrupt-driven port
    ppi0: <parallel i="" o=""> on ppbus0
    ppc0: cannot reserve I/O port range</parallel></printer></parallel></parallel>

    I've tried, /dev/lcd /dev/lpt0 /dev/cuau1 /dev/ppc1 and anything else i could think of.. but nothing, only able to get the LCD to clear and the first line just seems to blink solid, but just faintly so i'm not sure that is good here in this case.

    unfortunately, i am unable to get LCDd and lcdproc working here with hd44780 driver... not sure why yet. Here are the contents of my LCDd.conf file:


    LCDd.conf

    [server]
    DriverPath=/usr/local/lib/lcdproc/
    Driver=hd44780
    Bind=127.0.0.1
    Port=13666
    ReportLevel=5
    ReportToSyslog=yes
    User=nobody
    Foreground=no
    Hello="--- OPNsense ---"
    Hello=" . "
    GoodBye=" System "
    GoodBye=" Shutdown "
    WaitTime=5
    ServerScreen=no
    Heartbeat=off

    [menu]

    [hd44780]
    ConnectionType=8bit
    Port=0x378
    Device=/dev/lpt0
    Speed=0
    Keypad=no
    Backlight=no
    OutputPort=no
    Size=16x2
    CharMap=hd44780_default
    DelayMult=2
    DelayBus=true

     
  • Raz Black

    Raz Black - 2019-04-07

    hello again,

    i have it working now with LCDproc in OPNsense.. works great. here are my files:

    LCDd.conf

    LCDd

    [server]
    DriverPath=/usr/local/lib/lcdproc/
    Driver=hd44780
    Bind=127.0.0.1
    Port=13666
    ReportLevel=5
    ReportToSyslog=yes
    User=nobody
    Foreground=no
    Hello="--- OPNsense ---"
    Hello=" . "
    GoodBye=" System "
    GoodBye=" Shutdown "
    WaitTime=5
    ServerScreen=no
    Backlight=on
    Heartbeat=off

    [menu]

    Hitachi HD44780 driver

    [hd44780]
    ConnectionType=winamp
    Port=0x378
    bidirectional=yes
    Speed=0
    Keypad=no
    Contrast=100
    Brightness=100
    OffBrightness=0
    Backlight=no
    OutputPort=no
    Size=16x2
    CharMap=hd44780_default
    DelayMult=2
    DelayBus=true


    The lcdproc.conf is pretty much default as provided... things scroll a bit fast though :)

    hope this helps you with your DX4000

     
  • Lou Ciotti

    Lou Ciotti - 2020-01-05

    I am trying to get the LCD working on the DX4000 as well, but I have Ubuntu server running. I have the display working, ie. if dispalys the hello and exit information, but NOw I need to understand how to get it to display the information I want. I deally I want to use the up and down buttons, but have not got those working yet (at least as far as I can tell.

    I want it to show these screens (2 Line dispaly):

    Host name
    CPU load

    IP address /Status for ETH0
    IP Address/Status for ETH1

    Upload Transfer Rate
    Download Transfer Rate

    Ideally it would change screens automatically, but also change with the buttons.

    I am guessing I have to develop some sort of code/script for this??

     
    • Martin Tharby Jones

      On Sun, 2020-01-05 at 23:04 +0000, Lou Ciotti wrote:

      I am trying to get the LCD working on the DX4000 as well, but I have
      Ubuntu server running. I have the display working, ie. if dispalys
      the hello and exit information, but NOw I need to understand how to
      get it to display the information I want. I deally I want to use
      the up and down buttons, but have not got those working yet (at least
      as far as I can tell.

      I want it to show these screens (2 Line dispaly):

      Host name

      CPU load

      IP address /Status for ETH0

      IP Address/Status for ETH1

      Upload Transfer Rate

      Download Transfer Rate

      Ideally it would change screens automatically, but also change with
      the buttons.

      I am guessing I have to develop some sort of code/script for this??

      Which LCD screen has WD Sentinel DX4000?

      Sent from sourceforge.net because you indicated interest in
      https://sourceforge.net/p/lcdproc/discussion/312/

      To unsubscribe from further messages, please visit
      https://sourceforge.net/auth/subscriptions/

      Have a look at lcdproc the LCDproc system status information viewer, it
      does some of what you want.

      Martin

       

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.