This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

usb2uart for com1 & com2

Hello,

Currently i am doing an USB2UART project. My COM1 flow is getting through.

But COM1 + COM2, I am facing a system hang problem.
I had changed only desciptor tables. ( configuration descriptor - no.of interface for com1 only is 2. now com1 + com2 i have changed no.of.interface is 4) please help me regarding this issue

Thanks,
Vasanth B

Parents
  • The outline of descriptor modification for two CDC (virtual COM port) functions is,

    Device descriptor - firmware
    Set the triad (class, subclass, protocol) to IAD (Interface Association Descriptor) - (0xEF, 0x02, 0x01)

    Config descriptor set - firmware
    Bind the CDC interfaces (communication and data class) by IAD. List up two sets of bound CDC interfaces.

    - Config descriptor

    - - first IAD
    - - first CDC communication class interface
    - - - CDC class-specific descriptors (Header function, Call management, ACM function, Union function)
    - - - interrupt IN endpoint descriptor
    - - first CDC data class interface
    - - - bulk IN and OUT endpoint descriptors

    - - second IAD
    - - second CDC communication class interface
    - - - CDC class-specific descriptors (Header function, Call management, ACM function, Union function)
    - - - interrupt IN endpoint descriptor
    - - second CDC data class interface
    - - - bulk IN and OUT endpoint descriptors

    You can append any number of CDC interfaces, as much as the number of device endpoints can support.

    INF file
    Add device IDs with the interface number (MI_xx) to the [DeviceList] section.
    Please note, the interface number for the CDC communication interface is assigned to the device ID.
    for example of five CDCs on MCB2300, the interface numbers, MI_00, MI_02, MI_04, MI_06, MI_08, are attached.

    [DeviceList]
    %DESCRIPTION%=MCB2300USB, USB\VID_c251&PID_1705, USB\VID_FF00&PID_0300&MI_00, USB\VID_FF00&PID_0300&MI_02, USB\VID_FF00&PID_0300&MI_04, USB\VID_FF00&PID_0300&MI_06, USB\VID_FF00&PID_0300&MI_08

    I'll post the descriptor example separately, as the forum system complains it doesn't fit to single message.

    Tsuneo

Reply
  • The outline of descriptor modification for two CDC (virtual COM port) functions is,

    Device descriptor - firmware
    Set the triad (class, subclass, protocol) to IAD (Interface Association Descriptor) - (0xEF, 0x02, 0x01)

    Config descriptor set - firmware
    Bind the CDC interfaces (communication and data class) by IAD. List up two sets of bound CDC interfaces.

    - Config descriptor

    - - first IAD
    - - first CDC communication class interface
    - - - CDC class-specific descriptors (Header function, Call management, ACM function, Union function)
    - - - interrupt IN endpoint descriptor
    - - first CDC data class interface
    - - - bulk IN and OUT endpoint descriptors

    - - second IAD
    - - second CDC communication class interface
    - - - CDC class-specific descriptors (Header function, Call management, ACM function, Union function)
    - - - interrupt IN endpoint descriptor
    - - second CDC data class interface
    - - - bulk IN and OUT endpoint descriptors

    You can append any number of CDC interfaces, as much as the number of device endpoints can support.

    INF file
    Add device IDs with the interface number (MI_xx) to the [DeviceList] section.
    Please note, the interface number for the CDC communication interface is assigned to the device ID.
    for example of five CDCs on MCB2300, the interface numbers, MI_00, MI_02, MI_04, MI_06, MI_08, are attached.

    [DeviceList]
    %DESCRIPTION%=MCB2300USB, USB\VID_c251&PID_1705, USB\VID_FF00&PID_0300&MI_00, USB\VID_FF00&PID_0300&MI_02, USB\VID_FF00&PID_0300&MI_04, USB\VID_FF00&PID_0300&MI_06, USB\VID_FF00&PID_0300&MI_08

    I'll post the descriptor example separately, as the forum system complains it doesn't fit to single message.

    Tsuneo

Children