DLPU075B october   2018  – april 2023 DLP2010 , DLPC3470 , DLPC3478

 

  1.   Abstract
  2.   Trademarks
  3. 1Introduction
    1. 1.1 System Overview
    2. 1.2 Software Overview
      1. 1.2.1 I2C Overview
      2. 1.2.2 I2C Transactions
      3. 1.2.3 Data Flow Control
    3. 1.3 Related Documentation
  4. 2System Initialization
    1. 2.1 Boot ROM
    2. 2.2 Device Startup
  5. 3I2C Commands
    1. 3.1 General Operation Commands
      1. 3.1.1  Write Operating Mode Select (05h)
        1. 3.1.1.1 Write Parameters
      2. 3.1.2  Read Operating Mode Select (06h)
        1. 3.1.2.1 Read Parameters
        2. 3.1.2.2 Return Parameters
      3. 3.1.3  Write External Video Source Format Select (07h)
        1. 3.1.3.1 Write Parameters
      4. 3.1.4  Read External Video Source Format Select (08h)
        1. 3.1.4.1 Read Parameters
        2. 3.1.4.2 Return Parameters
      5. 3.1.5  Write External Video Chroma Processing Select (09h)
        1. 3.1.5.1 Write Parameters
      6. 3.1.6  Read External Video Chroma Processing Select (0Ah)
        1. 3.1.6.1 Read Parameters
        2. 3.1.6.2 Return Parameters
      7. 3.1.7  Write Test Pattern Select (0Bh)
        1. 3.1.7.1 Write Parameters
      8. 3.1.8  Read Test Pattern Select (0Ch)
        1. 3.1.8.1 Read Parameters
        2. 3.1.8.2 Return Parameters
      9. 3.1.9  Write Splash Screen Select (0Dh)
        1. 3.1.9.1 Write Parameters
      10. 3.1.10 Read Splash Screen Select (0Eh)
        1. 3.1.10.1 Read Parameters
        2. 3.1.10.2 Return Parameters
      11. 3.1.11 Read Splash Screen Header (0Fh)
        1. 3.1.11.1 Read Parameters
        2. 3.1.11.2 Return Parameters
      12. 3.1.12 Write Image Crop (10h)
        1. 3.1.12.1 Write Parameters
      13. 3.1.13 Read Image Crop (11h)
        1. 3.1.13.1 Read Parameters
        2. 3.1.13.2 Return Parameters
      14. 3.1.14 Write Display Size (12h)
        1. 3.1.14.1 Write Parameters
      15. 3.1.15 Read Display Size (13h)
        1. 3.1.15.1 Read Parameters
        2. 3.1.15.2 Return Parameters
      16. 3.1.16 Write Display Image Orientation (14h)
        1. 3.1.16.1 Write Parameters
      17. 3.1.17 Read Display Image Orientation (15h)
        1. 3.1.17.1 Read Parameters
        2. 3.1.17.2 Return Parameters
      18. 3.1.18 Write Display Image Curtain (16h)
        1. 3.1.18.1 Write Parameters
      19. 3.1.19 Read Display Image Curtain (17h)
        1. 3.1.19.1 Read Parameters
        2. 3.1.19.2 Return Parameters
      20. 3.1.20 Write Image Freeze (1Ah)
        1. 3.1.20.1 Write Parameters
        2. 3.1.20.2 Use of Image Freeze to Reduce On-Screen Artifacts
      21. 3.1.21 Read Image Freeze (1Bh)
        1. 3.1.21.1 Read Parameters
        2. 3.1.21.2 Return Parameters
      22. 3.1.22 Write Look Select (22h)
        1. 3.1.22.1 Write Parameters
      23. 3.1.23 Read Look Select (23h)
        1. 3.1.23.1 Read Parameters
        2. 3.1.23.2 Return Parameters
      24. 3.1.24 Read Sequence Header Attributes (26h)
        1. 3.1.24.1 Read Parameters
        2. 3.1.24.2 Return Parameters
      25. 3.1.25 Write Degamma/CMT Select (27h)
        1. 3.1.25.1 Write Parameters
      26. 3.1.26 Read Degamma/CMT Select (28h)
        1. 3.1.26.1 Read Parameters
        2. 3.1.26.2 Return Parameters
      27. 3.1.27 Write CCA Select (29h)
        1. 3.1.27.1 Write Parameters
      28. 3.1.28 Read CCA Select (2Ah)
        1. 3.1.28.1 Read Parameters
        2. 3.1.28.2 Return Parameters
      29. 3.1.29 Read DMD Sequencer Sync Mode (2Ch)
        1. 3.1.29.1 Read Parameters
        2. 3.1.29.2 Return Parameters
      30. 3.1.30 Write Execute Flash Batch File (2Dh)
        1. 3.1.30.1 Write Parameters
      31. 3.1.31 Write Input Image Size (2Eh)
        1. 3.1.31.1 Write Parameters
      32. 3.1.32 Read Input Image Size (2Fh)
        1. 3.1.32.1 Read Parameters
        2. 3.1.32.2 Return Parameters
      33. 3.1.33 Write Splash Screen Execute (35h)
        1. 3.1.33.1 Write Parameters
      34. 3.1.34 Write Mirrors Lock Command (39h)
        1. 3.1.34.1 Write Parameters
      35. 3.1.35 Read Mirrors Lock Command (3Ah)
        1. 3.1.35.1 Read Parameters
        2. 3.1.35.2 Return Parameters
    2. 3.2 Illumination Control Commands
      1. 3.2.1  Write LED Output Control Method (50h)
        1. 3.2.1.1 Write Parameters
      2. 3.2.2  Read LED Output Control Method (51h)
        1. 3.2.2.1 Read Parameters
        2. 3.2.2.2 Return Parameters
      3. 3.2.3  Write RGB LED Enable (52h)
        1. 3.2.3.1 Write Parameters
      4. 3.2.4  Read RGB LED Enable (53h)
        1. 3.2.4.1 Read Parameters
        2. 3.2.4.2 Return Parameters
      5. 3.2.5  Write RGB LED Current (54h)
        1. 3.2.5.1 Write Parameters
      6. 3.2.6  Read RGB LED Current (55h)
        1. 3.2.6.1 Read Parameters
        2. 3.2.6.2 Return Parameters
      7. 3.2.7  Read CAIC LED Max Available Power (57h)
        1. 3.2.7.1 Read Parameters
        2. 3.2.7.2 Return Parameters
      8. 3.2.8  Write RGB LED Max Current (5Ch)
        1. 3.2.8.1 Write Parameters
      9. 3.2.9  Read RGB LED Max Current (5Dh)
        1. 3.2.9.1 Read Parameters
        2. 3.2.9.2 Return Parameters
      10. 3.2.10 Read CAIC RGB LED Current (5Fh)
        1. 3.2.10.1 Read Parameters
        2. 3.2.10.2 Return Parameters
    3. 3.3 Image Processing Control Commands
      1. 3.3.1 Write Local Area Brightness Boost Control (80h)
        1. 3.3.1.1 Write Parameters
      2. 3.3.2 Read Local Area Brightness Boost Control (81h)
        1. 3.3.2.1 Read Parameters
        2. 3.3.2.2 Return Parameters
      3. 3.3.3 Write CAIC Image Processing Control (84h)
        1. 3.3.3.1 Write Parameters
      4. 3.3.4 Read CAIC Image Processing Control (85h)
        1. 3.3.4.1 Read Parameters
        2. 3.3.4.2 Return Parameters
      5. 3.3.5 Write Color Coordinate Adjustment Control (86h)
        1. 3.3.5.1 Write Parameters
      6. 3.3.6 Read Color Coordinate Adjustment Control (87h)
        1. 3.3.6.1 Read Parameters
        2. 3.3.6.2 Return Parameters
      7. 3.3.7 Write Keystone Correction Control (88h)
        1. 3.3.7.1 Write Parameters
      8. 3.3.8 Read Keystone Correction Control (89h)
        1. 3.3.8.1 Read Parameters
        2. 3.3.8.2 Return Parameters
    4. 3.4 Light Control Commands
      1. 3.4.1  Write Trigger In Configuration (90h)
        1. 3.4.1.1 Write Parameters (90h)
      2. 3.4.2  Read Trigger In Configuration (91h)
        1. 3.4.2.1 Read Parameters
        2. 3.4.2.2 Return Parameters
      3. 3.4.3  Write Trigger Out Configuration (92h)
        1. 3.4.3.1 Write Parameters (92h)
      4. 3.4.4  Read Trigger Out Configuration (93h)
        1. 3.4.4.1 Read Parameters
        2. 3.4.4.2 Return Parameters
      5. 3.4.5  Write Pattern Ready Configuration (94h)
        1. 3.4.5.1 Write Parameters
      6. 3.4.6  Read Pattern Ready Configuration (95h)
        1. 3.4.6.1 Read Parameters
        2. 3.4.6.2 Return Parameters
      7. 3.4.7  Write Pattern Configuration (96h)
        1. 3.4.7.1 Write Parameters
      8. 3.4.8  Read Pattern Configuration (97h)
        1. 3.4.8.1 Read Parameters
        2. 3.4.8.2 Return Parameters
      9. 3.4.9  Write Pattern Order Table Entry (98h)
        1. 3.4.9.1 Write Parameters (98h)
      10. 3.4.10 Read Pattern Order Table Entry (99h)
        1. 3.4.10.1 Read Parameters
        2. 3.4.10.2 Return Parameters
      11. 3.4.11 Read Light Control Sequence Version (9Bh)
        1. 3.4.11.1 Read Parameters
        2. 3.4.11.2 Return Parameters
      12. 3.4.12 Read Validate Exposure Time (9Dh)
        1. 3.4.12.1 Read Parameters
        2. 3.4.12.2 Return Parameters
      13. 3.4.13 Write Internal Pattern Control (9Eh)
        1. 3.4.13.1 Write Parameters
      14. 3.4.14 Read Internal Pattern Status (9Fh)
        1. 3.4.14.1 Read Parameters
        2. 3.4.14.2 Return Parameters
    5. 3.5 General Setup Commands
      1. 3.5.1 Write Border Color (B2h)
        1. 3.5.1.1 Write Parameters (B2h)
      2. 3.5.2 Read Border Color (B3h)
        1. 3.5.2.1 Read Parameters
        2. 3.5.2.2 Return Parameters (B3h)
      3. 3.5.3 Write Parallel Interface Sync Polarity (B6h)
        1. 3.5.3.1 Write Parameters
      4. 3.5.4 Read Parallel Interface Sync Polarity (B7h)
        1. 3.5.4.1 Read Parameters
        2. 3.5.4.2 Return Parameters
      5. 3.5.5 Read Auto Framing Information (BAh)
        1. 3.5.5.1 Read Parameters
        2. 3.5.5.2 Return Parameters
      6. 3.5.6 Write Keystone Projection Pitch Angle (BBh)
        1. 3.5.6.1 Write Parameters
      7. 3.5.7 Read Keystone Projection Pitch Angle (BCh)
        1. 3.5.7.1 Read Parameters
        2. 3.5.7.2 Return Parameters
    6. 3.6 Administrative Commands
      1. 3.6.1  Read Short Status (D0h)
        1. 3.6.1.1 Read Parameters
        2. 3.6.1.2 Return Parameters
      2. 3.6.2  Read System Status (D1h)
        1. 3.6.2.1 Read Parameters
        2. 3.6.2.2 Return Parameters
      3. 3.6.3  Read System Software Version (D2h)
        1. 3.6.3.1 Read Parameters
        2. 3.6.3.2 Return Parameters
      4. 3.6.4  Read Communication Status (D3h)
        1. 3.6.4.1 Read Parameters
        2. 3.6.4.2 Return Parameters
      5. 3.6.5  Read Controller Device ID (D4h)
        1. 3.6.5.1 Read Parameters
        2. 3.6.5.2 Return Parameters
      6. 3.6.6  Read DMD Device ID (D5h)
        1. 3.6.6.1 Read Parameters
        2. 3.6.6.2 Return Parameters
      7. 3.6.7  Read System Temperature (D6h)
        1. 3.6.7.1 Read Parameters
        2. 3.6.7.2 Return Parameters
      8. 3.6.8  Read Flash Build Version (D9h)
        1. 3.6.8.1 Read Parameters
        2. 3.6.8.2 Return Parameters
      9. 3.6.9  Write Flash Batch File Delay (DBh)
        1. 3.6.9.1 Write Parameters (DBh)
      10. 3.6.10 Read DMD I/F Training Data (DCh)
        1. 3.6.10.1 Read Parameters
        2. 3.6.10.2 Return Parameters
    7. 3.7 Flash Update Commands
      1. 3.7.1 Read Flash Update PreCheck (DDh)
        1. 3.7.1.1 Read Parameters
        2. 3.7.1.2 Return Parameters
      2. 3.7.2 Write Flash Data Type Select (DEh)
        1. 3.7.2.1 Write Parameters
      3. 3.7.3 Write Flash Data Length (DFh)
        1. 3.7.3.1 Write Parameters
      4. 3.7.4 Write Erase Flash Data (E0h)
        1. 3.7.4.1 Write Parameters
      5. 3.7.5 Write Flash Start (E1h)
        1. 3.7.5.1 Write Parameters
      6. 3.7.6 Write Flash Continue (E2h)
        1. 3.7.6.1 Write Parameters
      7. 3.7.7 Read Flash Start (E3h)
        1. 3.7.7.1 Read Parameters
        2. 3.7.7.2 Return Parameters
      8. 3.7.8 Read Flash Continue (E4h)
        1. 3.7.8.1 Read Parameters
        2. 3.7.8.2 Return Parameters
  6. 4Revision History

Write Parameters

Table 3-126 describes the write parameters.

Table 3-126 Write Parameters
Parameter Bytes Description
Byte 1 Flash data type (See below)
Byte 2 Optional: Partial data identifier (See Byte 1 Below)
Byte 3 Optional: Partial data identifier (See Byte 1 Below)
Byte 4 Optional: Partial data identifier (See Byte 1 Below)
MSB Byte 1 LSB
b7 b6 b5 b4 b3 b2 b1 b0
Table 3-127 Flash Data Type Select Register Field Descriptions
Bit Type Description
7-0 W

Flash data type

Entire flash

00h = Entire flash

01h = Reserved

02h = Entire flash except user calibration data and user scratchpad data

03h - 0Fh = Reserved

TI software

10h = Main software application

11h - 1Fh = Reserved

TI application data

20h = TI application data set (AOM)

21h - 2Fh = Reserved

user batch files

30h = user batch files

31h - 3Fh = Reserved

Look data

40h = Look data set

41h - 4Fh = Reserved

Sequence data

50h = Entire sequence data set

51h = Entire sequence data set (Reads only)

52h - 5Fh = Reserved

Degamma/CMT data

60h = Entire degamma/CMT data set

61h = Partial degamma/CMT data set (reads only)

62h - 6Fh = Reserved

CCA data

70h = CCA data set

71h - 7Fh = Reserved

General LUT data

80h = CCA data set

The flash data type command must be provided each time a new flash write or read operation is desired to ensure that the appropriate data type parameters are provided. The system expects four parameter bytes regardless of whether all four bytes are needed. Any unused bytes should be set to zero.

The flash data length must be provided to indicate the amount of flash data that will be provided for each write or read transaction.

The specified flash data will be written to or read from flash using the write flash start, write flash continue, read flash start, and read flash continue commands.

While all of the flash data sets indicated can be written/replaced in their entirety, a few will also support partial writes/updates. Partial update command parameters will use an “odd” command number (for example, 91h, B1h) which will indicate that one to three additional command parameter bytes of information must be provided to specify which subset of data is to be updated. The additional command parameter data required is described below.

Table 3-128 Command Parameters for Partial Flash Data Set
Data Type
(Writes Only)
2nd CMD Parameter (Byte 2) 3rd CMD Parameter (Byte 2) 4th CMD Parameter (Byte 2) Comments
Partial user splash screen set Splash number N/A N/A A splash screen will be specified by its splash screen number
Partial user scratchpad data set Sector number N/A N/A If this data set is allocated more than one sector, each sector can be specified (0 = 1st sector, 1 = 2nd sector, and so forth)
Partial sequence data set Look number Sequence index number A sequence data set will be specified by its sequence index number.
Partial CMT data set Look number Sequence index number A CMT data set will be specified by its CMT index number.
Partial user splash screen set Splash number N/A N/A A Splash screen will be specified by its Splash screen number.
Partial user scratchpad data set Splash number Sub-sector address (LSB) Sub-sector address (MSB) If this data set is allocated more than one sector, each sector can be specified (0 = 1st sector, 1 = 2nd sector, and so forth) The host is also allowed to specify the start address within the sector specified in byte 2. This address needs to be a relative address within the specified sector (that is, the value can range from 0 to 4096), and must be a 32-bit aligned byte address.

While all of the flash data sets indicated can be read starting at the beginning of the data set, a few will also support read starts at the beginning of a data subset. The partial update command parameters which use an “odd” command number (for example, 41h, 43h, 75h) will indicate that one to three additional command parameter bytes must be provided to specify the start location for these reads. The additional command parameter data required is described in the previous table.

It is expected that all TI formatted factory calibration data, including the golden ratio, the power-up RGB currents, and the user thermister LUT trim data, will be stored in the user calibration block of the flash. It will be the responsibility of the user to manage updates to this block, which may require the user to read the entire block, modify, and then rewrite the entire block when making an update within the block.

While flash processing requires that flash commands be executed in the proper order (for example, flash must be erased prior to being written), due to the flexibility provided for flash updates, command order checking is not provided.

It is recommended that the user make use of the flash update pre-check command before updating an existing flash build.

The system allows the user to allocate up to four separable blocks of flash space for their own use (user scratchpad data). The user can also specify the size of each of these blocks, where each block can be one or more sectors in (one sector = 4 kB). This is all defined via the GUI. It is the responsibility of the user to manage these data sets, including updates, which may require the user to read an entire sector, modify, and then rewrite the entire sector when making an update within a sector. References to an unavailable data set will result in an invalid command parameter value error in the communication status.