This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Tvp7002 dissatisfaction screen

Other Parts Discussed in Thread: THS8200, TVP7002

Hi everyone,

   I according to the "8637.tvp7002_THS8200_VGA_YPbPr_settings" configuration tvp7002 capture with 1080p,but use different computer as a source of VGA appeared two kinds of circumstances,  tvp7002_no.png and tvp7002_yes.png. it didn't pass tvp7002 is normal in the screen. 

The register Settings are as follows:

 Comparison of the two TXT. Can i solve this problem by configure tvp7002 register ?

tvp7002_yes.txt
read 0x00 0x00
 I2C (0x31): 0x49 = 0x02 
read tvp7002 parameter
 I2C (0x5d): 0x01 = 0x89 
 I2C (0x5d): 0x02 = 0x80 
 I2C (0x5d): 0x03 = 0xe0 
 I2C (0x5d): 0x04 = 0x00 
 I2C (0x5d): 0x05 = 0x06 
 I2C (0x5d): 0x06 = 0x10 
 I2C (0x5d): 0x07 = 0x2c 
 I2C (0x5d): 0x0e = 0xc6 
 I2C (0x5d): 0x0f = 0x2e 
 I2C (0x5d): 0x10 = 0x58 
 I2C (0x5d): 0x11 = 0x40 
 I2C (0x5d): 0x12 = 0x01 
 I2C (0x5d): 0x13 = 0x00 
 I2C (0x5d): 0x14 = 0xb5 
 I2C (0x5d): 0x15 = 0x43 
 I2C (0x5d): 0x16 = 0x11 
 I2C (0x5d): 0x18 = 0x11 
 I2C (0x5d): 0x17 = 0x02 
 I2C (0x5d): 0x19 = 0x00 
 I2C (0x5d): 0x1a = 0xca 
 I2C (0x5d): 0x1b = 0x77 
 I2C (0x5d): 0x1c = 0x07 
 I2C (0x5d): 0x1d = 0x00 
 I2C (0x5d): 0x1e = 0x10 
 I2C (0x5d): 0x1f = 0x10 
 I2C (0x5d): 0x20 = 0x10 
 I2C (0x5d): 0x21 = 0x22 
 I2C (0x5d): 0x22 = 0x00 
 I2C (0x5d): 0x23 = 0x3a 
 I2C (0x5d): 0x24 = 0x30 
 I2C (0x5d): 0x25 = 0x10 
 I2C (0x5d): 0x26 = 0x80 
 I2C (0x5d): 0x27 = 0x2a 
 I2C (0x5d): 0x28 = 0x53 
 I2C (0x5d): 0x2a = 0x87 
 I2C (0x5d): 0x2b = 0x40 
 I2C (0x5d): 0x2c = 0x80 
 I2C (0x5d): 0x2d = 0x00 
 I2C (0x5d): 0x2e = 0x80 
 I2C (0x5d): 0x2f = 0x8c 
 I2C (0x5d): 0x31 = 0x18 
 I2C (0x5d): 0x35 = 0x00 
 I2C (0x5d): 0x36 = 0x00 
 I2C (0x5d): 0x37 = 0x5e 
 I2C (0x5d): 0x38 = 0x24 
 I2C (0x5d): 0x39 = 0x60 
 I2C (0x5d): 0x3a = 0x00 
 I2C (0x5d): 0x3b = 0x58 
 I2C (0x5d): 0x3c = 0x03 
 I2C (0x5d): 0x3d = 0x06 
 I2C (0x5d): 0x3f = 0x00 
 I2C (0x5d): 0x40 = 0xda 
 I2C (0x5d): 0x41 = 0x00 
 I2C (0x5d): 0x42 = 0x5e 
 I2C (0x5d): 0x43 = 0x08 
 I2C (0x5d): 0x44 = 0x04 
 I2C (0x5d): 0x45 = 0x04 
 I2C (0x5d): 0x46 = 0x2d 
 I2C (0x5d): 0x47 = 0x2d 
 I2C (0x5d): 0x48 = 0x00 
 I2C (0x5d): 0x49 = 0x00 
tvp7002_no.txt
read 0x00 0x00
 I2C (0x31): 0x49 = 0x02 
read tvp7002 parameter
 I2C (0x5d): 0x01 = 0x89 
 I2C (0x5d): 0x02 = 0x80 
 I2C (0x5d): 0x03 = 0xe0 
 I2C (0x5d): 0x04 = 0x00 
 I2C (0x5d): 0x05 = 0x06 
 I2C (0x5d): 0x06 = 0x10 
 I2C (0x5d): 0x07 = 0x2c 
 I2C (0x5d): 0x0e = 0xc6 
 I2C (0x5d): 0x0f = 0x2e 
 I2C (0x5d): 0x10 = 0x58 
 I2C (0x5d): 0x11 = 0x40 
 I2C (0x5d): 0x12 = 0x01 
 I2C (0x5d): 0x13 = 0x00 
 I2C (0x5d): 0x14 = 0x95 
 I2C (0x5d): 0x15 = 0x43 
 I2C (0x5d): 0x16 = 0x11 
 I2C (0x5d): 0x18 = 0x11 
 I2C (0x5d): 0x17 = 0x02 
 I2C (0x5d): 0x19 = 0x00 
 I2C (0x5d): 0x1a = 0xca 
 I2C (0x5d): 0x1b = 0x77 
 I2C (0x5d): 0x1c = 0x07 
 I2C (0x5d): 0x1d = 0x00 
 I2C (0x5d): 0x1e = 0x10 
 I2C (0x5d): 0x1f = 0x10 
 I2C (0x5d): 0x20 = 0x10 
 I2C (0x5d): 0x21 = 0x22 
 I2C (0x5d): 0x22 = 0x00 
 I2C (0x5d): 0x23 = 0x37 
 I2C (0x5d): 0x24 = 0x2f 
 I2C (0x5d): 0x25 = 0x0d 
 I2C (0x5d): 0x26 = 0x80 
 I2C (0x5d): 0x27 = 0x2a 
 I2C (0x5d): 0x28 = 0x53 
 I2C (0x5d): 0x2a = 0x87 
 I2C (0x5d): 0x2b = 0x40 
 I2C (0x5d): 0x2c = 0x80 
 I2C (0x5d): 0x2d = 0x00 
 I2C (0x5d): 0x2e = 0x80 
 I2C (0x5d): 0x2f = 0x8c 
 I2C (0x5d): 0x31 = 0x18 
 I2C (0x5d): 0x35 = 0x00 
 I2C (0x5d): 0x36 = 0x00 
 I2C (0x5d): 0x37 = 0x5e 
 I2C (0x5d): 0x38 = 0x24 
 I2C (0x5d): 0x39 = 0x60 
 I2C (0x5d): 0x3a = 0x00 
 I2C (0x5d): 0x3b = 0x58 
 I2C (0x5d): 0x3c = 0x03 
 I2C (0x5d): 0x3d = 0x06 
 I2C (0x5d): 0x3f = 0x00 
 I2C (0x5d): 0x40 = 0xda 
 I2C (0x5d): 0x41 = 0x00 
 I2C (0x5d): 0x42 = 0x5e 
 I2C (0x5d): 0x43 = 0x08 
 I2C (0x5d): 0x44 = 0x04 
 I2C (0x5d): 0x45 = 0x04 
 I2C (0x5d): 0x46 = 0x2d 
 I2C (0x5d): 0x47 = 0x2d 
 I2C (0x5d): 0x48 = 0x00 
 I2C (0x5d): 0x49 = 0x00 

  • Please refer to the datasheet to understand what these read only registers are telling you.

    The registers 0x23, 0x24 & 0x25 are insignificant and only indicate the low order bits of the auto level detection. Different sources (and even different cables) will result in different DC offset levels.

    Register 0x14 bit 5 indicates that the sources have different H-sync polarities. First, make sure that you are adjusting the TVP7002 timings to match the different source format.

    How are you re-displaying the image? What is your source, capture display signal path?

    For digitizing analog video your system firmware must do a lot of timing processing and signal analysis in order to be able to adapt to different sources. It is necessary to read the sync status registers and H/V length registers etc... then change capture parameters accordingly.

    Additionally your system also needs to actually analyze the digital video stream to determine the REAL active video start positions and adjust blanking start/stop positions to match.

    Finally the sampling phase needs to be adjusted to sample analog pixels at the optimal point.

    You can see this behavior in virtually any analog monitor currently on the market. There is usually a menu option called something like "auto set", "auto adjust". If you run this option you will see the displayed image jump around until the monitor has correctly detected where the analog image really is in the analog stream.

    Different sources often have different positions in the analog stream for the actual image. There are VESA standards for many video formats, but not every source correctly follows the standards. There are also many resolutions which are not VESA standards.

    BR,
    Steve