Colibri T20 LCD changes resolution with some HDMI displays

Hi,
I’m facing some strange behaviors with T20 and LCD & HDMI interfaces in clone mode.
My display driver is configured with resolution 640x480, with a main panel LCD connected with the parallel RGB interface.

With some monitor (typical the most newer, big and wide) when i plug in the HDMI or start up the system with the HDMI plugged on, the HDMI interface switch to the resolution of 720x480, indicated by the Debug Message Logger:

Loading DisplayDriver...
Set LCD to 640x480 (60Hz)
Set HDMI to 640x480 (60Hz)
Set HDMI to 640x480 (60Hz)
Done Loading DisplayDriver (99 ms)
Set LCD to 640x480 (60Hz)
Set HDMI to 720x480 (60Hz)
Set HDMI to 720x480 (60Hz)

But in this case also the LCD is affected by some setting change (maybe resolution?) and the image disappears, while the HDMI is showing at 720x480.

While with other monitors the behavior is correct, the image is cloned correctly on the two monitors and the logger states this:

Loading DisplayDriver...
Set LCD to 640x480 (60Hz)
Set HDMI to 640x480 (60Hz)
Set HDMI to 640x480 (60Hz)
Done Loading DisplayDriver (99 ms)
Set LCD to 640x480 (60Hz)
Set HDMI to 640x480 (60Hz)
Set HDMI to 640x480 (60Hz)

All the monitors that i’ve checked (working and not working) contains the 640x480 in the possible resolution list.(Checked with Windows 10 advanced display properties window)

These are my NVDDI registry settings:

[HKEY_LOCAL_MACHINE\Software\NVIDIA Corporation\NVDDI]
"HDMIHotplugBehavior"=dword:00000001
"PowerCaps"=dword:00000011
"Enable2D"=dword:00000001
"UsbMouse"=dword:00000000
"HwCursor"=dword:00000001
"MainPanelBpp"=dword:00000020
"DesktopWidth"=dword:00000280
"DesktopHeight"=dword:000001e0
"DisplayGuid"="ffa_lcd0"
"DesktopScaleMode"=dword:00000001 


[HKEY_LOCAL_MACHINE\Software\NVIDIA Corporation\NVDDI\LCD]
"Ldds"=dword:00000010
"Bpp"=dword:00000020
"acb"=dword:00000001
"oep"=dword:00000000
"pcp"=dword:00000000
"vsp"=dword:00000000
"hsp"=dword:00000000
"efw"=dword:0000000a
"bfw"=dword:00000021
"vsw"=dword:00000002
"elw"=dword:00000010
"blw"=dword:00000030
"hsw"=dword:00000060
"CyScreen"=dword:000001e0
"CxScreen"=dword:00000280
"Dual"=dword:00000000
"Color"=dword:00000001
"Type"=dword:00000001
"pclk"=dword:0183c0b4

Am i doing something wrong?

Thanks,
Fabio

Dear @f.ruscelli,

Thank you for contacting the Toradex community!

I think that the problem is that some monitors really don’t support 640x480 on HDMI input
but they might support it on the DVI input.

So we would say 2 options for :

  • Use the DVI input on the monitor with a DVI-HDMI cable

  • Maybe disconnecting DDC lines (so T20 cannot query monitor capabilities) the 640x480 timings still work

From our experience, we really saw that some monitors really will not display anything with a 640x480 signal on HDMI input.

There might also be some trick to disable DDC in software by changing the pin multiplexing
but at the moment we didn’t implement registry settings for ignoring DDC. Another way you can disable it in the HW.

If you have Apalis Evaluation board with the Apalis T30 module there you can quickly disconnect DDC_CLK and DDC_DATA signals through jumpers and test that.

Please let us know if you face any issues with this.

Hi raja,
I’ve tested your suggested options.

Using the monitor DVI input unfortunately didn’t do any difference.
Also using a HDMI-VGA adapter causes this behavior on this type of monitor.

BUT…
disconnecting HDMI_I2C_SCL and HDMI_I2C_SDA (by removing L1 and L2 on Colibri HDMI Adapter) works and the monitor displays correctly the 640x480 video!

So the hardware solution works, are you planning to implement a registry key to disable the DDC handshaking via software?

Thanks very much,
Fabio

Dear @f.ruscelli ,

This is Walter Minnella from Toradex, sales responsible for Italy at Toradex. I reached out to you via email on the 16th of January. Please get back to me whenever possible so we can discuss the best solution for this issue.

Best regards,