Newhaven Display Forum

Newhaven Products => TFTs => Topic started by: v8dave on May 12, 2019, 10:08:39 PM

Title: NHD-7.0-800480EF-ASXN#-CTP with Android Linux
Post by: v8dave on May 12, 2019, 10:08:39 PM
I am trying to get a NHD-7.0-800480EF-ASXN#-CTP display working with Android and I am unable to get anything to display on the LCD. I've used this same LCD before with a small processor running .NET Microframework with great success, albeit a slow interface.

I am using the following timings and checking with a scope to ensure the wiring is correct, I do see the HSYNC, VSYNC, DEN and CLK on the correct pins.

static struct nxp_lcd wvga_axon = {
   .width = 800,
   .height = 480,
   .p_width = 155,
   .p_height = 93,
   .bpp = 24,
   .freq = 40,

   .timing = {
      .h_fp = 40,
      .h_bp = 88,
      .h_sw = 48,
      .v_fp = 13,
      .v_fpe = 1,
      .v_bp = 32,
      .v_bpe = 1,
      .v_sw = 3,
   },
   .polarity = {
      .rise_vclk = 1,
      .inv_hsync = 1,
      .inv_vsync = 1,
      .inv_vden = 0,
   },
   .gpio_init = nhd_gpio_init,
};

I've tried different settings for the polarity with no success. The kernel code has extra debug to confirm the LCD settings are being applied.

Anyone else been able to make this work?
Title: Re: NHD-7.0-800480EF-ASXN#-CTP with Android Linux
Post by: v8dave on May 14, 2019, 01:58:33 AM
I have this working. It was the fact I had only made changes in the kernel source but had to make changes to u-boot.

Now it almost works except for some tearing of the display that is visible on the edges of graphics and on text.
Title: Re: NHD-7.0-800480EF-ASXN#-CTP with Android Linux
Post by: v8dave on May 24, 2019, 02:13:27 AM
I currently have something partially working in that the display is more stable but I still get horizontal tearing when anything on the left of the screen displays anything other than black pixels.

I found I needed 22R resistors in the timing signals and reduce the drive current of the RGB lines to the min value.

The hor back porch timing is actually set to 40 which is the setting from the 5.0" LCD and yet the timing for all of the 7.0" LCD's show this to be 88 but with that I get lots of horrible noise on the display.

The attached image shows the LCD in portrait mode so the tearing or line shift is the left if this was landscape (the portrait/landscape issue is another matter but that is in the Android core so I just need a stable LCD first)