DLPU020E july   2014  – april 2023 DLP2010 , DLP3010 , DLPC3430 , DLPC3432 , DLPC3433 , DLPC3435 , DLPC3438

 

  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 Single Buffer Mode (01h)
        1. 3.1.1.1 Write Parameters
      2. 3.1.2  Read Single Buffer Mode (02h)
        1. 3.1.2.1 Read Parameters
        2. 3.1.2.2 Return Parameters
      3. 3.1.3  Write Idle Mode Select (03h)
        1. 3.1.3.1 Write Parameters
      4. 3.1.4  Read Idle Mode Select (04h)
        1. 3.1.4.1 Read Parameters
        2. 3.1.4.2 Return Parameters
      5. 3.1.5  Write Input Source Select (05h)
        1. 3.1.5.1 Write Parameters
      6. 3.1.6  Read Input Source Select (06h)
        1. 3.1.6.1 Read Parameters
        2. 3.1.6.2 Return Parameters
      7. 3.1.7  Write External Video Source Format Select (07h)
        1. 3.1.7.1 Write Parameters
      8. 3.1.8  Read External Video Source Format Select (08h)
        1. 3.1.8.1 Read Parameters
        2. 3.1.8.2 Return Parameters
      9. 3.1.9  Write External Video Chroma Processing Select (09h)
        1. 3.1.9.1 Write Parameters
      10. 3.1.10 Read External Video Chroma Processing Select (0Ah)
        1. 3.1.10.1 Read Parameters
        2. 3.1.10.2 Return Parameters
      11. 3.1.11 Write Test Pattern Select (0Bh)
        1. 3.1.11.1 Write Parameters
      12. 3.1.12 Read Test Pattern Select (0Ch)
        1. 3.1.12.1 Read Parameters
        2. 3.1.12.2 Return Parameters
      13. 3.1.13 Write Splash Screen Select (0Dh)
        1. 3.1.13.1 Write Parameters
      14. 3.1.14 Read Splash Screen Select (0Eh)
        1. 3.1.14.1 Read Parameters
        2. 3.1.14.2 Return Parameters
      15. 3.1.15 Read Splash Screen Header (0Fh)
        1. 3.1.15.1 Read Parameters
        2. 3.1.15.2 Return Parameters
      16. 3.1.16 Write Image Crop (10h)
        1. 3.1.16.1 Write Parameters
      17. 3.1.17 Read Image Crop (11h)
        1. 3.1.17.1 Read Parameters
        2. 3.1.17.2 Return Parameters
      18. 3.1.18 Write Display Size (12h)
        1. 3.1.18.1 Write Parameters
      19. 3.1.19 Read Display Size (13h)
        1. 3.1.19.1 Read Parameters
        2. 3.1.19.2 Return Parameters
      20. 3.1.20 Write Display Image Orientation (14h)
        1. 3.1.20.1 Write Parameters
      21. 3.1.21 Read Display Image Orientation (15h)
        1. 3.1.21.1 Read Parameters
        2. 3.1.21.2 Return Parameters
      22. 3.1.22 Write Display Image Curtain (16h)
        1. 3.1.22.1 Write Parameters
      23. 3.1.23 Read Display Image Curtain (17h)
        1. 3.1.23.1 Read Parameters
        2. 3.1.23.2 Return Parameters
      24. 3.1.24 Write Image Freeze (1Ah)
        1. 3.1.24.1 Write Parameters
        2. 3.1.24.2 Use of Image Freeze to Reduce On-Screen Artifacts
      25. 3.1.25 Read Image Freeze (1Bh)
        1. 3.1.25.1 Read Parameters
        2. 3.1.25.2 Return Parameters
      26. 3.1.26 Write Look Select (22h)
        1. 3.1.26.1 Write Parameters
      27. 3.1.27 Read Look Select (23h)
        1. 3.1.27.1 Read Parameters
        2. 3.1.27.2 Return Parameters
      28. 3.1.28 Read Sequence Header Attributes (26h)
        1. 3.1.28.1 Read Parameters
        2. 3.1.28.2 Return Parameters
      29. 3.1.29 Write Degamma/CMT Select (27h)
        1. 3.1.29.1 Write Parameters
      30. 3.1.30 Read Degamma/CMT Select (28h)
        1. 3.1.30.1 Read Parameters
        2. 3.1.30.2 Return Parameters
      31. 3.1.31 Write CCA Select (29h)
        1. 3.1.31.1 Write Parameters
      32. 3.1.32 Read CCA Select (2Ah)
        1. 3.1.32.1 Read Parameters
        2. 3.1.32.2 Return Parameters
      33. 3.1.33 Read DMD Sequencer Sync Mode (2Ch)
        1. 3.1.33.1 Read Parameters
        2. 3.1.33.2 Return Parameters
      34. 3.1.34 Write Execute Flash Batch File (2Dh)
        1. 3.1.34.1 Write Parameters
      35. 3.1.35 Write Input Image Size (2Eh)
        1. 3.1.35.1 Write Parameters
      36. 3.1.36 Read Input Image Size (2Fh)
        1. 3.1.36.1 Read Parameters
        2. 3.1.36.2 Return Parameters
      37. 3.1.37 Write Splash Screen Execute (35h)
        1. 3.1.37.1 Write Parameters
      38. 3.1.38 Write Parallel Data Mask Control (37h)
        1. 3.1.38.1 Write Parameters
      39. 3.1.39 Read Parallel Data Mask Control (38h)
        1. 3.1.39.1 Read Parameters
        2. 3.1.39.2 Return Parameters
      40. 3.1.40 Write Mirrors Lock Command (39h)
        1. 3.1.40.1 Write Parameters
      41. 3.1.41 Read Mirrors Lock Command (3Ah)
        1. 3.1.41.1 Read Parameters
        2. 3.1.41.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 General Setup Commands
      1. 3.4.1 Write Border Color (B2h)
        1. 3.4.1.1 Write Parameters (B2h)
      2. 3.4.2 Read Border Color (B3h)
        1. 3.4.2.1 Read Parameters
        2. 3.4.2.2 Return Parameters (B3h)
      3. 3.4.3 Write Parallel Interface Sync Polarity (B6h)
        1. 3.4.3.1 Write Parameters
      4. 3.4.4 Read Parallel Interface Sync Polarity (B7h)
        1. 3.4.4.1 Read Parameters
        2. 3.4.4.2 Return Parameters
      5. 3.4.5 Read Auto Framing Information (BAh)
        1. 3.4.5.1 Read Parameters
        2. 3.4.5.2 Return Parameters
      6. 3.4.6 Write Keystone Projection Pitch Angle (BBh)
        1. 3.4.6.1 Write Parameters
      7. 3.4.7 Read Keystone Projection Pitch Angle (BCh)
        1. 3.4.7.1 Read Parameters
        2. 3.4.7.2 Return Parameters
    5. 3.5 DSI Commands
      1. 3.5.1 Write DSI HS Clock (BDh)
        1. 3.5.1.1 Write Parameters
      2. 3.5.2 Read DSI HS Clock (BEh)
        1. 3.5.2.1 Read Parameters
        2. 3.5.2.2 Return Parameters
      3. 3.5.3 Write DSI Port Enable (D7h)
        1. 3.5.3.1 Write Parameters
      4. 3.5.4 Read DSI Port Enable (D8h)
        1. 3.5.4.1 Read Parameters
        2. 3.5.4.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-133 describes the write parameters.

Table 3-133 Write Parameters
Parameter BytesDescription
Byte 1Flash data type (See below)
Byte 2Optional: Partial data identifier (See Byte 1 Below)
Byte 3Optional: Partial data identifier (See Byte 1 Below)
Byte 4Optional: Partial data identifier (See Byte 1 Below)
MSBByte 1LSB
b7b6b5b4b3b2b1b0
Table 3-134 Flash Data Type Select Register Field Descriptions
BitTypeDescription
7-0W

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-135 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 setSplash numberN/AN/AA splash screen will be specified by its splash screen number
Partial user scratchpad data setSector numberN/AN/AIf 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 setLook numberSequence index numberA sequence data set will be specified by its sequence index number.
Partial CMT data setLook numberSequence index numberA CMT data set will be specified by its CMT index number.
Partial user splash screen setSplash numberN/AN/AA Splash screen will be specified by its Splash screen number.
Partial user scratchpad data setSplash numberSub-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.