AnsweredAssumed Answered

ADV7280 Manual Luma Not Working Correctly

Question asked by Geoff65 on Apr 6, 2016
Latest reply on Aug 15, 2016 by Rob.Analog

We are using the ADV7280 to convert an NTSC source to a BT.656-4 output with I2P deinterlacer enabled.  This is working well, however we are trying to set Manual Luma and Chroma levels - with mixed success.   See the following series of experiments that show the Manual Luma settings to be sometimes successful, sometimes not.     Please help.

 

Experiment No.1 :

 

As part of the initialization, we have set the registers 0x2D, 0x2E, 0x2F and 0x30 (which are the Chroma and Luma Gain Control registers) as follows (confirmed by I2C analyzer as "ack"ed by ADV7280):

                        0.0 sec  -   Reg 0x2D = 0x32,  Reg 0x2E = 0x55,  Reg 0x2F = 0x33Reg 0x30 = 0xCF

Reading the Gain Control registers periodically for the first few seconds after initialization, we can see that the values of the Chroma and Luma Gain registers are operating in "automatic" mode:

                       0.5 sec  -   Reg 0x2D = 0x32,  Reg 0x2E = 0x53,  Reg 0x2F = 0x33,  Reg 0x30 = 0xC3

                       1.0 sec  -   Reg 0x2D = 0x32,  Reg 0x2E = 0x53,  Reg 0x2F = 0x33,  Reg 0x30 = 0xC5

                       2.0 sec  -   Reg 0x2D = 0x32,  Reg 0x2E = 0x54,  Reg 0x2F = 0x33,  Reg 0x30 = 0xD0

                       3.0 sec  -   Reg 0x2D = 0x32,  Reg 0x2E = 0x54,  Reg 0x2F = 0x33,  Reg 0x30 = 0xD0

At 5.0 seconds after initialization, the register 0x2C is written with a value of 0x8C (Manual fixed Luma Gain  &  Manual fixed Chroma Gain).   We are expecting the registers to now read as per the manual gain values (loaded at initialization), however the values of gain now read everytime thereafter as:

                       6.0 sec  -   Reg 0x2D = 0x32,  Reg 0x2E = 0x55,  Reg 0x2F = 0x34Reg 0x30 = 0x00

The Chroma gain is as per the initialization (0x32 and 0x55),   however the value of Luma gain is always 0x34 and 0x00 (instead of the desired 0x35 and 0xCF).

 

Experiment No.2:

 

This experiment was performed again with the initialized values of

                        0.0 sec  -   Reg 0x2D = 0x32,  Reg 0x2E = 0x55,  Reg 0x2F = 0x31Reg 0x30 = 0xCF

Both Chroma and Luma are automatically adjusting, until @ 5.0 secs the register 0x2C is written with value of 0x8C.  Thereafter the Chroma and Luma values are read back as:

                                          Reg 0x2D = 0x32,  Reg 0x2E = 0x55,  Reg 0x2F = 0x34Reg 0x30 = 0x00

The Chroma gain is as per the initialization (0x32 and 0x55),   however the value of Luma gain is always 0x34 and 0x00 (instead of the desired 0x31 and 0xCF).

 

Experiment No.3:

 

This experiment was performed again with the initialized values of

                        0.0 sec  -   Reg 0x2D = 0x33,  Reg 0x2E = 0xAA,  Reg 0x2F = 0x35Reg 0x30 = 0xCA

Both Chroma and Luma are automatically adjusting, until @ 5.0 secs the register 0x2C is written with value of 0x8C.  Thereafter the Chroma and Luma values are read back as:

                                          Reg 0x2D = 0x33,  Reg 0x2E = 0xAA,  Reg 0x2F = 0x35Reg 0x30 = 0xCA

What the ??   Now the Luma gain is exactly as per the desired values.

 

Experiment No.4:

 

This experiment was performed again with the initialized values of

                        0.0 sec  -   Reg 0x2D = 0x31,  Reg 0x2E = 0x55,  Reg 0x2F = 0x32Reg 0x30 = 0xCE

Both Chroma and Luma are automatically adjusting, until @ 5.0 secs the register 0x2C is written with value of 0x8C.  Thereafter the Chroma and Luma values are read back as:

                                          Reg 0x2D = 0x31,  Reg 0x2E = 0x55,  Reg 0x2F = 0x34Reg 0x30 = 0x00

The Chroma gain is as per the initialization (0x31 and 0x55),   however the value of Luma gain is always 0x34 and 0x00 (instead of the desired 0x32 and 0xCE).

 

Conclusion :

 

Only Experiment No.3 worked (no idea why) ... but all we are only changing the initialization values for Registers 0x2D to 0x30.  Please advise ASAP if there is an issue with Manual Luma Gain, or if we have not setup the configuration correctly.

Outcomes