Display backlight delay on startup

Hi,

I am actually moving from WinCE image version 1.4 to 2.2.
After some changes in my update script I get it running, but I face one strange issue.
On every second image update, the display backlight will be turned on after a delay.

Here are the steps how I face it:
If I do the image update the display backlight is turned on immediatley (= normal behaviour).
If i do the image update once more one the same module, the backlight is turned on after a delay.
If I do the image update again the display backlight is turned on immediatley.
If i do the image update once more one the same module, the backlight is turned on after a delay.
(And so on…)

Any idea?

I use the latest update tool and use a full flash backup for the update.
I guess it is just a problem on the backlight because on a monitor connected to the Colibri Eval Board i do not have such delay.

Dear @mafro

I wasn’t able to reproduce the issue here. There are three potential issues which I suspect to be responsible for the effect:

  1. There is a config block setting ss.dispondelay which can be used to configure a delay before the display power pin ( ss.disp_gpio ) is turned on. Please compare the ss.dispondelay configuration during a fast and a slow display boot.
  2. If the ss.disp_gpio and/or ss.bl_gpio are wrongly configured, the real IOs on the display could be floating until the OS is fully loaded. Such an open pin could float to high or low depending on the preconditions.
  3. The display timings might be configured at the limit of what the display can synchronize. A slight shift in the timings could then be sufficient to cause a delay until the display is able to synchronize and show a picture.

Despite your detailed description of the test process, I am not yet fully sure about the test conditions:

  1. Are you updating from 1.4 to 2.2, then back to 1.4, or do you update from 1.4 to 2.2, then multiple times from 2.2 to 2.2?
    In the first case, is it possible that V1.4 shows a delay, but V2.2 doesn’t (or vice versa)?
  2. Are you using our standard image, or do you use any customized parts (especially the config block)?
  3. How much approximately is the delay you are seeing (1 second, 10 seconds)?

Regards, Andy

Dear @andy.tx ,

thx for the reply. I just update multiple times from 2.2 to 2.2. The delay is about 20 seconds after power on.

But you were right. When I open the ConfigBlockEditor, ss.bl_gpio is wrongly configured and has the same value as ss.disp_gpio, but if if look at the registry under HKLM\SOFTWARE\NVIDIA Corparation\NVDDI\LCD the BL_GPIO value is set correctly.
If I change it to the correct value in the ConfigBlockEditor, it is working.

I use the standard image with some additional registry settings. In the config block I set pex.mpenable 1 and ss.dbginfo 0.
I also update the splash screen. I did some test related to this:
If I do not update the splash screen, I get the delay on each image update.
If I do the update of the splash screen, I get the delay on each second image update.
Could it be related to this? I use the update tool with a (black) bmz file (black) bmz file.

Dear @andy.tx ,

setting ss.bl_gpio after the update of the image will solve it for now.

Edit:
Since we need to support two different display types with different polarity we also set the PCP value in HKLM\SOFTWARE\NVIDIA Corparation\NVDDI\LCD. It also has no affect as long as I change it directly in the ConfigBlockEditor.

Did I miss some configuration value so that the settings from the registry will be used?

Edit2:
We set BL_GPIO and PCP in the registry, not in the ConfigBlockEditor. This was working in 1.4 although the values in the ConfigBlockEditor were different. I just checked the BSP release list https://developer.toradex.com/software/windows-embedded-compact/t20-t30-wec-software/release-details again and found issue 6940. Could it be related to it? Does it mean I need to set BL_GPIO and PCP in both, registry and config block?

I have one further question regarding the update process.
Normally I wipe flash drive and registry before updating the new image.
Here https://developer.toradex.com/knowledge-base/update-tool#update-an-image-bootloader-or-another-flash-section the command is marked as deprecated.
Does it mean, I do not need to do the wipe any more?

Dear @marfro

*** Display timings ***

Starting from image V2.2b4 we introduced an additional feature (Issue #5894):
If the resolution of the splash screen is identical to the resolution used for the WinCe desktop, the display controller is not re-initialized and therefore keeps the splashscreen timings and polarity settings.
Registry settings are not required anymore, but you should double check that your settings in the config block are correct.

This can be reverted to the old behavior with an additional registry entry

[HKLM\Software\Nvidia Corporation\NVDDI]
"UseSplashSettings" = 0

We just about to improve the public documentation.

*** Wipe ***

This is an unrelated topic, therefore I created a new post: Wipe Flash Drive and Registry.

Regards,
Andy