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.

DLP3000: Is the DLP taking too long, or is it my problem?

Part Number: DLP3000

Hi, I've now completed a set of algorithms that build an 'image' array, places it into a pattern sequence packet and loads it into the DLP. The algorithm accepts any number of images to be built and loaded, but it only loads 96 at a time (I've chose not to use extended pattern sequence due to it's minimum exposure time being too high). I've used the clock() function in the <time.h> library  (c/c++) to count the time it takes the cpu to execute all the instructions, including building the 'images', 'rotate' them (in order to have a true square), load them into a 'bmp' structure array, load that into packets, load the packets to the DLP, load the DLP with a <start sequence> packet, <advance sequence> packets and a <stop sequence> packet. The clock() estimates under 0.04s for each 96 pattern sequence, but I've timed it with a chronometer and it takes around 7.5s for each 96 pattern sequence. Is this due to the usb->internet->whatever communication protocols, or, even if not, due to the DLP in any other way?

Thanks

  • Hi Jmfras,

    0.04s seems fast to me for a full 96 pattern sequence. Are you sure your clock is telling you 0.04 per sequence or per pattern? My back of the envelope math says that you're looking to transfer roughly 5.2 MB per 96 pattern sequence and if the total time was 0.04s, then you'd be transfer at rate of ~131MB/s which is much quicker than what USB 2.0 is capable of handling....

    Your 7.5s seems much more reasonable to me, although I don't have the experience in this particular configuration to say whether or not it could be faster.

    Hope that helps,
    Paul
  • that time is what takes the cpu to execute the instructions, the clock() counts 'ticks', I think it doesn't account for wait time. That being said if the time sounds reasonable, I guess I'll have to go back to editing the driver. Thanks Paul.
    Regards
  • I'm sorry, I marked this as solved but I have another question. USB 2.0 should be able to handle 50 MB/s, since we're transfering about 10x times less shouldn't it take about 0.1s?
    Regards
  • I suppose that's technically correct but a quick look around the web suggests that although USB 2.0 is theoretically capable of 50 MB/s, the practical limit is somewhat lower.

    You might ask the folks over on the the DM365 forum about what types of USB speeds they're seeing, as that is where the USB bus feeds into.

    -Paul
  • Thanks, I'll do that.
    Regards