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.

How to implement MTP interrupt endpoint on TIVA microcontroller

Hi,

Not sure if this forum or the interface forum is the right place for my question, but here goes:

I am currently pretty far into implementing an MTP device using the TM4C129x processor, but have run into a problem with the interrupt endpoint.  MTP requires BULK-IN, BULK-OUT, and Interrupt IN endpoints.  I am using the bulk device class in the TivaWare USB library to implement the MTP device.  One of our developers had to hijack the USB descriptor sent to the host to make the host think that an interrupt IN endpoint exists.  As of today, I have many op-codes implemented and can successfully transfer objects to/from the host.  However, the fake interrupt endpoint is a problem as I cannot send events to the host.  Is there a way to do this on the TIVA?  Should I have used the CDC class instead since it has BULK-IN/BULK-OUT and Interrupt-IN?  However, the TivaWare library only support CDC specific events.  Has anyone successfully implemented MTP interrupt endpoint on a TIVA and has advice?

Thank you.

Yan

  • Hello Yan,

    There have been some threads on MTP on the forum. You can take the section of code on Interrupt End points from CDC class and create a new library

    Regards
    Amit
  • Amit,

    I believe I already looked at the other MTP posts and did not see anything on interrupt endpoint implementation. I forgot to mention that the MTP device is a composite that also includes HID and a CDC already. I assume that you are suggesting re-writing TI's USB lib by taking the CDC specific code and forming a new library? So forming a new CDC class sounds like it might break the other components that are working using the TI USB library. Also, it sounds like at least 2 weeks of effort if not more. My other alternative is to work around the endpoint limitation, but I was hoping that TI already has a solution for the MTP endpoint interrupt.

    Thanks for the response.

    Yan
  • Hello Yan,

    I am suggesting creating a new MTP class driver files. There are multiple classes of device that are not there in the current USB Library.

    Regards
    Amit