DLPC3479: DLPC3479 I2C Failure

Part Number: DLPC3479
Other Parts Discussed in Thread: DLPA3005, , DLP4710EVM-LC

Tool/software:

Dear TI Members 

We have developed hardware using the DLPC3479 and DLPA3005 for the DLPC4710_LC DMD.

Initially, we are testing the I2C functionality, but we encountered a failure. The temporary test environment is as follows:

  1. (Temporary) Changed the firmware file extension from .img to .bin.
  2. Firmware is downloaded only to the Master Beam.
  3. Validation Process:
    A) Set Projector_On = High.
    B) Toggle Master Beam RESETZ from Low to High.
    C) Use the IIC0 port on the FPGA to read the Controller Device ID (0xD4).
  4. Voltage and the 24MHz main clock are confirmed to be OK.

Questions:

  1. Can you review our validation process and suggest any additional steps or highlight potential issues?
  2. Is there any way to verify that the DLPC3479 has successfully read the firmware from flash memory and initialized correctly using hardware pins or signals?

  • Hello LP,

    I suggest you use DLP Boot Diagnostic tool [link] and DLP Hardware Diagnostic tool [link]
    please refer to [FAQ] New DLP Pico Boot and Hardware Diagnostic Tools - DLP products forum - DLP®︎ products - TI E2E support forums for further details
    Regards,
    Kirthi Vignan

  • Dear Kirthi Vignan 

    Thank you for your reply.

    Boot Diagnostic tool [link] and DLP Hardware Diagnostic tool [link]

    Q1) Can I use Boot Diagnostic tool [link] and DLP Hardware Diagnostic tool [link] with our Hardware instead of TI EVM? 

    Thanks 

  • Hello LP,


    Yes, you can use it with your custom hardware.

    Regards,
    Kirthi Vignan.

  • Dear Kirthi Vignan 

    1. (Temporary) Changed the firmware file extension from .img to .bin.

    Currently, the firmware download tool does not recognize .img files (this will be fixed in the future).

    For now, we changed the extension of the TI firmware file from 00.img to 00.bin and downloaded it to the Beam flash memory.

    Simply changing the file extension from .img to .bin does not alter the content or structure of the file, so generally, it should not cause significant issues when downloading.

    However, could there be any potential problems with downloading the Beam firmware after changing the extension to .bin?

    Thanks

  • Hello LP,

    Sorry, which file are you changing from .img to .bin?

    Best,

    Aaron

  • Dear Aaron Black 

    1. (Temporary) Changed the firmware file extension from .img to .bin.

           [LP] I had changed the TI FW file to BIN format before downloading it. Currently, I am downloading it with the IMG extension.

                  Please disregard my question.

                 -.  FWSel_DLPC3479_DLPA3005_pm1_i2c0x3a_v8p4p0.img , FWSel_DLPC3479_DLPA3005_pm1_i2c0x36_v8p4p0.img

            2. Previously, when I inquired with TI, I was checkend that the same firmware (FW) should be used.

                  Can I simply use the same FW by setting the I2C address to the same value and then proceeding with the download? 

                 For example, if the same I2C address is applied, is it possible to read the Device ID of the Slave DLPC3479 from the FPGA?

                 Should the I2C addresses be set differently, such as 0x36 and 0x3A, for the download?

                 How can I distinguish whether the request was made to the Master DLPC3479 or the Slave DLPC3479 under the same I2C Address conditons?
                Please refet to attached file. 
           3, The HOST_IRQ remains high continuously. It seems that Auto Initialization has not been completed. Is my assumption correct?
                We have confirmed that the input clock is 25 MHz. We are planning to replace the component to change 25 MHz to 24 MHz.
               Could this be the reason why Auto Initialization is not working?

           4. As you mentioned,  tool will be used once the cable is ready.
  • Hello LP,

    I will consider #1 and #4 as closed.

    2. The Firmware sets the address for a single device - Master/Primary. If you look at the communication in the DLP4710EVM-LC schematic, the I2C line from external (Cypress IC) is sent to the Primary chip. A separate I2C line is then sent to the Secondary/Slave chip. The main idea is that the Primary DLPC3479 controller will be the only one that is communicated to and controls the Secondary DLPC3479. Primary/Secondary selection is determined through GPIO4.

    3. If Host_IRQ is low this means the Power startup sequence has not been followed and if Host_IRQ is continually high the initialization has not been completed, this is shown in Figure 9-1 of the DLPC3479 Datasheet. As you've discovered, the System Oscillator Timing requirements require a 24MHz MOSC, also found in the datasheet within section 6.10. Yes, this definitely could be a reason why Auto Initialization is not working.

    If after you have the tool operating, please reach back out. I think the Oscillator change will likely fix your problem.

    Best,

    Aaron

  • Dear Aaron Black

    I will consider #1 and #4 as closed
    [LP] OK. 

    2.  The Firmware sets the address for a single device - Master/Primary. If you look at the communication in the DLP4710EVM-LC schematic, the I2C line from external (Cypress IC) is sent to the Primary chip........................................

    [LP] Your comment aligns with what I had already understood previously.

    [Question-A] As before, I have understood it as follows.

    "Using TI's Firmware Selector, both the Master Beam and Slave Beam use the same firmware, which has the same Firmware Address applied."
    Did I understand this correctly?

    Question-B] Your comment aligns with what I had already understood previously.

    I am aware of using GPIO4 to configure the Master DLPC3479 and Slave DLPC3479, and I understood your explanation.

    The Master DLPC3479 GPIO is connected to High, while the Slave DLPC3479 GPIO is connected to GND.

    When the Host sends D4 to the 0x36 address to read the Slave DLPC3479,

    how can we confirm that the Slave Device ID has been read, given that the Master also uses D4?

    3. If Host_IRQ is low this means the Power startup sequence has not been followed 

    [LP] There was an error in component placement. We plan to verify it after changing to 24 MHz.

    250111_TI_QA.pdf

  • Hello LP,

    2a. Yes, the SAME firmware is applied. They cannot be separated.

    2b. You missed my point, the only 'device' that is seen in the chain to any I2C control externally is through the Master. The communication between Master/Slave chips I can't share as this is Intellectual Property of TI. I will ask my team if we have a way to distinguish this D4h read back - most of my team is on holiday now for a couple days - thank you for your patience in this!

    3. Understood, I'll call this issue resolved.

    Best,

    Aaron

  • Dear Aaron Black 

    I have updated the auto-initialization in another thread. I will close this thread.

    Auto Initialization failure

    DLPC3479: auto initializaiton and I2C failure

    2a - understood! 

    2b - Please update to another thread. 

    I will ask my team if we have a way to distinguish this D4h read back - most of my team is on holiday now for a couple days - thank you for your patience in this!

    3b. Opened another thread . 

    e2e.ti.com/.../5604578

    Thanks 

    Besr Regards