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.

DLPC200 USB Communication

Other Parts Discussed in Thread: DLPC200, DLPR200

Hi,

When I turn on a power supply of DLPC200 earlier and turn on the powersupply of the PC 12 seconds later,

USB connection is not possible.(Custom Boards)

It is normally connectable if PC is turned on previously.

Does this power-on sequence have any problems?

     USB controller : CY7C68013

     DLPC200 MCU Version2.2.0

Best regards,

Seishin

  • Seishin,

    You mention that these are custom boards, so I can't be sure what else is going on. But, to answer your question - no, it should make no difference at all the order of power-on. The USB connection should work in any case.

    What happens if PC is running, DLPC200 board is powered up, but not plugged into USB on PC; then plug USB into PC? Does it enumerate and connect?

  • Hello,

    This problem has not been fixed yet.

    When USB communication is performed during pattern storing in DDR2 memory at startup,

    subsequent can not be USB communication.

    Is the USB communication in load impossible?(80 grayscale patterns)

    Best regards,

    Seishin

  • Hello Sieshin,

    You meant DLPC200 loading default solution from parallel flash (80 grayscale patterns) to DDR2 during power on?

    Are you looking for some way to know when the loading is completed? 

    Which API you are calling for the USB communication? or is that just connect the USB cable from PC to the board?

    As per the DLPC200 power-on sequence, the DLPC200 is ready for receiving commands only after successful initialization this also includes loading the default solution (the bigger the solution i.e., more number pattern) the more the time taken by DLPC200 to be ready.

    Regards,
    Sanjeev

     

  • Hello sanjeev,

    Thank you for replying.

    Yes, I have the loading from parallel flash to DDR2 during power on by default solution.

    I am looking for a way to know the completion of loading.

    Or the time to load the 80 patterns.(Initialization completion)

    Best regards,
    Seishin

  • Hello Seishin,

    There are two options to detect the completion of powerup initialization 

    Hardware:

    Monitor the PORT1_HPD signal pin E15 of the DLPC200. During the initialization this bi-drectional I/O line is set to HIGH & LOW then finally settle to value as per the pull-up or pull-down setting to this I/O. Now after the CFG_DONE goes high for the 2nd  time, just monitor for this signal to become stable then you can start USB communication. You can add another ~100ms ((this is for the controller to initializing command handling/listening functions at the USB and SPI interface) buffer before beginning USB communication. 

    Software:

    You can onetime measure the signal from PWR_GOOD signal becoming HIGH to the first appearance of SYNC O/P signal and add another ~100ms.

    Regards,

    Sanjeev

  • Dear Sanjeev,

    Thank you for the reply.

    I will try to measure the signal of initialization completed in actual.

    When starting the USB communication before the end of initialization,

    does subsequent USB communication become impossible entirely?

    Best regards,

    Seishin

  • Hello Seishin,

    I don't think so.

    You can attempt some get status or like reading MCU version in loop with certain delay, once the power-on initialization sequence is completed, i would expect the controller to respond back.

    Let me know if there are any further questions.

    Regards,

    Sanjeev

  • Hello Sanjeev,

    I have some questions on USB communication also.

    CPG_DONE signal goes Hi for 2nd time when I write PROM via Lightcommander API, but when I write PROM by ROM writer then CPG_DONE signal goes for only one time. Is it correct?

    If so we have ~100ms buffer after CFG_DONE goes hi to bigin USB comminication.

    Afetr CFG_DONE went hi does PORT1_HPD go hi or low finally?

    SYNC O/P is generated by DLPC200?

    Best regards,

    Hiroaki
  • How are you programming the ROM writer? What is the size of the image? I am assuming you are using 5MB image (DLPR200 from ti.com) to program via PROM writer, also you have used ROM writer to program a blank flash? is it correct? If did so then it is correct and expected. In normal case there PROM stores two same loads, primary and secondary, it starts with primary (1st CFG_DONE) then looks for secondary, if it exist it does the secondary load (2nd CFG_DONE). We have Primary as fallback option. It is discussed in this thread https://e2e.ti.com/support/dlp__mems_micro-electro-mechanical_systems/f/387/t/190589 

    If so we have ~100ms buffer after CFG_DONE goes hi to bigin USB comminication.Afetr CFG_DONE went hi does PORT1_HPD go hi or low finally? 

    Is 100ms gap sufficient depends on the size of the solution/project stored on the Parallel Flash (if used), our suggestion to monitor for the PORT1_HPD signal going low then add 100ms delay then start the USB communication. 

    SYNC O/P is generated by DLPC200

    [Sanjeev] Only when you configure the device in Structured Light mode and selected option to enable sync o/p.

    Regards,

    Sanjeev

     

  • Hello Sanjeev,

    Thank you for your reply.
    About SYNC O/P, Which DLPC200 pin is the output pin?

    Regards,
  • Hello Sanjeev,

    Regarding PORT1_HPD signal, Our customer measure the port on their board, the signal is pulled hi.
    And voltage amplitude is between 0.1V and 0.2V. Customer can't use the signal for on and off.

    I would like to know the procedure PORT1_HPD between power-on and end of initialization.

    Regards,
  • Yes it is a O/P pin.
  • How is the pin connected? Is it left floating, it should be pulled high to 3.3V via 100K resistor. 

    Regards,
    Sanjeev

  • Hello Sanjeev,

    Excuse me.

    I would like to know o/p pin are LED_RED_EN / LED_GRN_EN / LED_BLU_EN. Is it right?

    Best regards,

    Hiroaki

  • Hello Sanjeev,

    The pin connect to pulled up to 3.3V via 100K resistor.

    Could you check the attached waveform?

    Best regards,PORT1_HPD.pdf

  • Yes, looks correct. The signal should go LOW after the init completed. You o scope capture just going HIGH. You can look for going LOW. 

    Regards,

    Sanjeev