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.

LM3644EVM: Running the executable LM3644_GUI_r1.exe generates this message: "TestApp has stopped working"

Part Number: LM3644EVM
Other Parts Discussed in Thread: LM3644, USB2ANY

When we run the Windows C# executable LM3644_GUI_r1.exe the following message is generated "TestApp has stopped working".

  • Hello,

    Please try the software found in this link below.  Please make sure to unzip all of the files into one folder including the embedded zip files as well.  Hopefully this should take care of things. 

    http://www.ti.com/lit/zip/snvc183

    Greg

  • Hi Greg - That works!  Thank you.  The GUI application runs successfully. 

    In that zip file, there is a c++ dll file.  Where can I find documentation for that?  I assume it is an API to control the driver.  A sample application would be great.

    Thanks again,

    Casey 

  • Casey,
    Unfortunately I don't believe a public sample application or documentation is available. The USB2ANY I2C box was never intended for use outside of working specifically with the EVMs themselves which is why they are not available for purchase on the web. The newer TI launchpads have replaced this box and are more user configurable.

    Greg
  • Hi Greg,

    That's unfortunate. I have an OnSemi camera sensor dev kit that I am controlling with a separate C-application. I need to do some imaging at one LED level then when a threshold is reached, I switch the camera to a different configuration and the LEDs to a different level and capture an image. All of this happens at 60+fps. It's under these conditions that I need to evaluate the driver. In particular, the two main performance questions I have are: 1) can I change its state between frames and 2) can I control it with a signal from the sensor (I want to synch the LEDs with the sensor frame)? Is there another way I can implement this type of control test through c/c++?

    Casey
  • Casey,
    For your 1st question, when you say change state, are you referring to a current level or a change in modes (ex. Torch to Flash)? In the case of current level change you can change the current within a flash event via an I2C write. Drops in current occur much faster than increases due to the boost loop interaction.
    2) For control, you can use the Strobe pin on our device in conjunction a synchronized frame signal from the imager. You can decide whether our device follows the pulse width from the camera or you can have us control the pulse width and use the external signal as a trigger.

    With regards to C or C++, if your controller has an I2C bus output, you can issue the commands to our device in any order you want. The tricky part is it the timing. I have seen some imagers that have an I2C bus output to help with this, but I am not sure if your sensor has that capability. Getting the sync with the USB2ANY would be tough due to the USB communication lag I have seen using it.
    Are you wanting to change brightness during the off time?

    Greg
  • Hi Greg,

    Yes, after processing some images at the first LED level, I want to increase the LED level (and some camera registers) and capture another image. I want to change these LED levels between frames. The only thing I see we have access to on the camera board is a set of GPIO pins (no sign of I2C).

    Casey
  • Casey,
    Ok. One thing that you might be able to do is get a TI launch pad that should have the I2C commands documented and use one of the inputs to the launchpad to start a sync'd timer (same signal going to our Strobe pin) where after XXms, you force an I2C write to change the brightness. Keep in mind I think you could probably do this with any microcontroller that has an I2C port. I did look around and found we have a driver for the LM3644 that might be of use to you with regards to interacting with our part. It does not solve the controller side of things but maybe it is of some use.

    git.ti.com/.../leds-lm3644.c



    Greg
  • Hi Greg,

    Do you think I could use a generic USB to I2C interface that runs on Windows (like this: www.i2ctools.com/.../) to control the LM3644? Eventually this will shift to Linux but right the camera dev kit runs on Windows (then I will use the driver you pointed to above).

    many thanks,
    Casey
  • Casey,
    I think something like what you are showing could work so long as you can store a small routine in the memory of the tool. I think sending the commands through the USB and ultimately to I2C could take too long but maybe the one you highlight is fast enough.

    Greg
  • Hi Greg,

    We have the LED control through your controller chip using the Future Tech Dev C232HM USB2 to I2C device. Unfortunately it's only a USB2 device but we can control the LEDs on your dev kit board with a C-based API. Very nice. I'll follow up once we start using it at our required frame rates.

    Casey

  • Hi Casey,
    Glad you have a solution for now. Please let me know if you have any other questions.

    Greg