DLPU082B August   2021  – August 2022 DLPC7540

 

  1.   Programmer's Guide
  2.   Trademarks
  3. Scope
  4. References
  5. Acronyms
  6. System Boot
    1. 4.1 Data In flash
    2. 4.2 Bootloader Application
    3. 4.3 Main Application
    4. 4.4 Commands Supported by Bootloader and Main Applications
    5. 4.5 Debug Terminal
    6. 4.6 HOST_IRQ/SYSTEM_BUSY
    7. 4.7 Heartbeat
    8. 4.8 Low-level Fault
  7. System Status
  8. Version
  9. Power Modes
  10. Display Modes
  11. Source Detection and Configuration
  12. 10Internal sources
    1. 10.1 Test Patterns (TPG)
    2. 10.2 Solid Field (SFG) Color
    3. 10.3 Curtain
  13. 11Display Formatting
  14. 12Image Processing
  15. 13Illumination Control
  16. 14Peripherals
    1. 14.1 GPIO
    2. 14.2 PWM
  17. 15Interface Protocol
    1. 15.1 Supported Interfaces
    2. 15.2 I2C Target
    3. 15.3 USB
  18. 16Command Protocol
    1. 16.1 Command Packet
    2. 16.2 Response Packet
    3. 16.3 Destination Details
    4. 16.4 Error Handling and Recovery
    5. 16.5 System Busy - I2C scenarios
      1. 16.5.1 GPIO implementation
      2. 16.5.2 Short Status response
    6. 16.6 Support for Variable Data Size
  19. 17Auto-Initialization Batch File
  20. 18Command Descriptions
  21. 19System Commands
    1. 19.1  3D
    2. 19.2  Administrative
    3. 19.3  Autolock
    4. 19.4  Blending
    5. 19.5  Bootloader
    6. 19.6  Calibration
    7. 19.7  Debug Internal
    8. 19.8  Debug
    9. 19.9  General Operation
    10. 19.10 Illumination
    11. 19.11 Image Processing
    12. 19.12 Manual WPC
    13. 19.13 Peripherals
    14. 19.14 Warping
  22.   Revision History

Response Packet

The Response packet is the format in which the DLP Controller replies to the host. The Response packet format is followed for both Write Response and Read Responses. For write commands, the Response packet is sent only if the "reply requested" bit is set in the command header.

The DLP Controller matches the response header to the same format as the incoming Command packet header. There is however an exception - if the Response packet is for a command that expects variable number of data bytes, the Response packet will always include the length field (irrespective of whether the command packet had length mentioned or not). See also the Section 16.6 related to variable sized commands.

Similar to the definition of Command packet, fields in bold represents fields that are always present.

Table 16-3 Response packet format
FieldSize (bytes)Description
Header1See Table 16-4
Length2 or 0 (Optional as per Datalength Present field in the header)Length of the command data in bytes following this byte. Checksum is not included in length.
For example, length=10 means there are 10 bytes of data) after this length field. LSB of length shall be sent first followed by MSB.
Data0-511 (total of max 512 bytes in the whole message including header and checksum)

Response data bytes depends on the command code.

If error bit in the header is set, there will only be a single data byte. This byte will indicate the error code that caused the command to nack. The error code definitions are listed Switching Characteristics.

Checksum

1 or 0

(optional as per Checksum present field of header byte)

Checksum of all bytes in the message including header bytes. Fletcher's checksum.
Table 16-4 Response Header Byte
BitsField nameValues
0:2DestinationSee Section 16.3
3ReservedNA
4Datalength Present1 = Length field present in the extended header
0 = No length field
5Checksum Present1 = Checksum present after data bytes
0 = Checksum not present
6Error1 = Error. First data byte will have the error code that gives more information about the failure
0 = No error
7Busy1=system busy/response not ready; 0=response ready. Applicable only for I2C based communication
Table 16-5 Error code definitions
Error CodeMeaning
1Invalid destination
2Invalid/unknown command
3Invalid length
4Allocated buffer is not enough to store a command
5Length information missing for a variable sized command
6Checksum mismatch
7Controller not compatible to run the application
8Read not supported
9Write not supported
10Execution failed
11Invalid response length
12Buffer full

Write responses are optional as described in the command header description above. If response is requested, it is imperative to read the response (both Write Response and Read Response) immediately following the respective Command Packet. The response of a command is lost as soon as the DLP Controller receives another set of bytes from the host.