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.

Discovery 4100 Labview with ActiveX

My lab recently got the Discovery 4100 board and it works correctly with the explorer software, so we believe everything is installed and connected correctly.

I am having difficulty using the ActiveX control with Labview. My understanding is that I should place an ActiveX container on my front panel, and then insert the DDC4100 control into the container. When I do this, I should be able to use invoke and property nodes to interact with the DMD. However, if I connect an invoke node (or property node) it just tells me no methods are available. If I try a different ActiveX control (like the pdf viewer), its methods do appear. Am I missing some important initialization step? Does anyone have a simple example of using one of the discovery board's ActiveX controls with labview? No examples seem to be provided, and I think they would be very helpful to any researchers using this product. Here is a screenshot of my vi attempt.

I have also tried to directly access the usb_DLL from labview with some success. I can successfully use simple functions, like getDMDTYPE() and getNumDevices(). I am not entirely sure how to procede any further with the lower level DLL to perform a higher level task, such as putting a single image on the DMD. Help in this regard (or any simple examples) would be very useful.

Thanks,

Greg

  • Greg,

    I have example Labview code that should work for you.  I will send you some links.

    Fizix

  • Thanks a lot. I have accepted your friend request.

     

     

  • Hello, I'm new on this forum.

    My lab also got the Discovery 4100 board, and I need some examples in Labview or C,C++,C#

    I am having difficulty using the ActiveX control with C#.

     

    Thanks a lot.

  • Hello Daniel,

    Welcome to the DLP section of the TI E2E community.

    The Design house that you purchased the kit from should now have some LabView example code that I wrote.  It is available on request.

    For C, C++ and C# please use the D4000 example code available on the DLP Knowledgebase.  Replace all references to D4000 with D4100.

     

    Fizix

  • Hi Fizix,

    I'm having the exact same problems in LabVIEW that Greg discribed. I have made some VIs to communicate with the DLL; the simple ones worked, but my results are limited. Is it possible to see some LabVIEWs implementation examples?

    Thanks a lot,

    Claude

  • Hello Fizix,

    I have quite same problem as Greg. Could you also send me some labview examples to load images to DMD or control each row of DMD. We actually want to scan these rows individually.   We bought DMD about one years ago and I can not find some labview examples in our software kit. I would appreciate if you could give us some help  to make it work.

    In addition, the type we bought is Discovery VIS DMD.

    KIT number:2509694-0001

    Board    : T40-3108-0079

    DMD:    8000761 160401E

    Thanks,

    Ping

  • Claude and Ping,

    These requests are now being routed through the Design House that you purchased your kit from.  It is fine even if the kit was bought over a year ago.  If you particular design house that you purchased from does not have the LabView sample code directly available I can provide it to them.

    Thanks,

     

    Fizix

  • Hello Fizix,

    The guy who bought this DMD has left from our lab for a long time. I don't exactly know the contact of Design House. From the information on the forums, it seems that you wrote these labview code. So, is it possible to send these labview codes directly to me?

    Thanks a lot!

    Ping

  • Wang,

    We now have customers go through the Design House channel to help assure compliance with export regulations.  Please check the following link to make contact with the Design House:

    http://focus.ti.com/analog/docs/memsdlpdsgn.tsp?sectionId=622&tabId=2448

    If you click on the link of the Design House that the unit was purchased from, there should be contact information there.

     

    Fizix

  • Fizix,

    I having the similar problem as Greg was having where I am attempting to use the DDC4100 Control.ctl file and also attempting to use the D4100_usb.dll file. I am having trouble with enabling their functionality to fully control the DMD. Do you think you could you send LabView example vis or something to help me?

    Thanks

  • Salvatore,

    Welcome to the DLP section of the TI-E2E Community.

    You can request the LabView Example code from Design House that you purchased the D4100 kit from.  If they do not already have it, they can download it from their resource area.  They make sure that all import export regulations are met when providing the example code.

    Fizix

  • Hello Fizix ,

    I'm Aaron, from National Taiwan University.

    Recently I bought  a D4100 board  with 0.7" DMD  from TI .

    In our lab , we are quite familiar to C++ than FPGA.

    As you mention "For C, C++ and C# please use the D4000 example code available on the DLP Knowledgebase.  Replace all references to D4000 with D4100."

    Can you sent the D4000 (or D4100) sample code which is written in C or C++?

    Because I only see " DDC4000 Application FPGA Sample Code for XGA " in mySecureSorftware. 

    That may help me a lot  Thx.

  • Hi Aaron,

    I am looking into the name of the appropriate file which you will be able to find through your design house. Please allow a little extra time for response due to the U.S. holidays this week.

    Thanks,
    Trevor
  • Hi Trevor

    Thanks for your reply and help.

    I'll wait for your good news .

  • Hello Aaron,
    Please request the D4000 Example code file from the Design Partner that you purchased the kit from.
    I suggest bypassing ActiveX and calling directly into the DLL function calls. Since ActiveX is only a pass through layer, it does not add any functionality and only adds a layer of complexity and latency that is not needed. The Programmer's guide has all of the function prototype information needed to build C++ calls into the DLL.
    I hope this helps.Fizix.
  • Hello Fizix,
    First of all, thanks your kindly help, I've got the sample code from my design partner.
    Now it is okay to rum the sample code in MFC form and TI explorer software.
    So I think everything is done for the D4100 installation. 
    But when I run in windows form ( C++ or C#), 
    There is no bug but error which is show in the attachment.
     
    'System.WindowsForms.AxHost+InvalidActiveXStateException' was thrown."
     
    Method - getNumDevices' cannot be invoked at this time.
    So did I miss something? How can I avoid this ?
    I am looking forward to your reply. Thanks.
    Sincerely yours. 
    Aaron.
  • Hello Aaron,

    I suspect that there are some UUIDs in the D4100.OCX file that are different from the D4000.OCX that have to be matched.  They may be in the registry,  You may see if there is a utility that can inspect the UUIDs so you can change them.  However, I recommend bypassing the ActiveX (*.OCX) layer altogether and reaching directly into the D4100.dll file (or a similar name in the \WINDOWS\SYSTEM32\ directory (where the D4100.OCX file is).

    Fizix