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.

msp430 and USB host for existing TUSB3410 device

Other Parts Discussed in Thread: MSP430F148, TUSB3410, MSP430F248

I have an existing device A built with a TUSB3410 and an MSP430F148, speaking with a Windows PC through TI driver and virtual serial port, classical architecture. Now I want to replace the PC by a new device B based on an MSP430F248 and a USB host chip (maybe Vinculum from FTDI) to control the device A through USB. Of course I cannot modify the existing device A (already deployed 500 times).

Do you have any advice for the USB host chip ?

Would the Vinculum USB host chip handle the TUSB3410 USB slave ?

How can I emulate the UART serial port on device B ?

Tx for help

Stef

 

  • The TUSB3410 has a built-in two-channel DMA controller for USB/UART bulk I/O.

     

    From the USB perspective, the TUSB3410 looks like a USB peripheral device. It uses endpoint 0 as its control endpoint, as do all USB peripherals. It also configures up to three input and three output endpoints, although most applications use one bulk input endpoint for data in, one bulk output endpoint for data out, and one interrupt endpoint for status updates. The USB configuration likely remains the same regardless of the serial port configuration. Most data is moved from the USB side to the UART side and from the UART side to the USB side using on-chip DMA transfers.

     

    From the DMA Controller perspective, this is how the DMA channels have their associated transfer directions. Two channels are provided for data transfer between the host and the UART:

     

    DMA−1 ------ Host to UART (DMA writes to UART TDR register)

    DMA−3 ------ UART to Host (DMA reads from UART RDR register)

     

  • So if I understand correctly, having the TUSB3410 on the slave side, I can use 'any' USB host chip on the host side. Writing data to the DMA1 will send data to 'UART' and listening to the DMA3 will read data from the 'UART'.

    Is this correct ?

     

  • Yes, you are correct. For further details I suggest taking a look to the following link (wich contains the TUSB3410 spec): http://www.ti.com/lit/gpn/tusb3410

    I hope this helps.

    Best,

    Ismael 

  • is it possible to connect below order

     

    msp430 uart---->TUSB3410--------->TUSB2136(UART). is it possible that type of interface?

  • The TUSB3410 has two "interfaces" on it. 

    The first is the USB port.  It is an "upstream" port - in other words it must be connected towards the USB host.  Therefore it can be connected to a stadard USB  host port - such as what is on a PC - or to a downstream port on a hub. 

    The other is the enhanced UART port, which obviously connects to another UART.

    Your diagram shows the MSP430 connected to the TUSB3410 - this must be the UART port of the TUSB3410.  The TUSB2136 is a hub, so the TUSB3410 can connect to one of its two downstream USB ports.  However in your diagram, you call out the UART port of the TUSB2136.  The UART port of the TUSB2136 is really just a debug port for the 8052 MCU and is mapped to one of the GPIO ports. Since the TUSB3410 only has one UART port, and that is the only way for the TUSB3410 to talk to the MSP430, then the TUSb3410 must connect via USB to the TUSB2136.  The TUSB2136 must then in turn connect upstream to the USB host (PC).

    Could you explain what you are trying to do there?

    Reagrds, Dan

  •  already our device output is TUSB3410(USB). we want to interface uart thermal printer.so we need uart output of data instead of USB.that y we try like that.Can u reconfirm if  i send data from msp430 via uart and tusb3410 usb and usb TUSB2136  , get the data from TUSB2136 uart?

  • USB is a host centric bus and therefore, all USB communication must start (and end) with a USB host.

    The TUSB3410 will allow a USB host (i.e. PC) to talk to a UART "peripheral" - in you case, the TUSb3410 could allow the thermal printer to talk to a USB-enabled PC (host).

    I am unclear what you are wanting the TUSB2136 to do? Where is the MSP430 in the system?

    Maybe a system level blcok diagram of what you are trying to connect together, and the interfaces available on each "block" - leaving out our chips - will allow me to pick which chips you need.

    Sorry, Dan

  • our device is handheld medical device which has msp430 & TUSB3410 usb output.presently we use pc as receing the data.instead of pc we want to recive the data in the standalone device.ie we want to interface with any type of microcntroller do the job not only tusb2136.

    we want to solution like below sata path

    MSP430 UART-----> UART TUSB3410 --->TUSB3410 USB----> USB  Microcontroller ----Microcontroller UART data---------->thermal printer

    we want to which microcontroller support this type interface.

     

  • Senthil,

    The USB port of the TUSB3410 must talk to a USB host controller (either directly or via a hub connection) that runs an operating system including drivers to support the virtual COM port driver functionality.  This is not a limitation of the TUSB3410, it is the nature of the USB bus system - it is a host centric bus.

    If you dropped a "PC" in place of your USB MCU, then no issue. An embedded USB host controller (TI does not have such a device) that also has a serial port is what you need. Many embedded USB host still need a companion processor to function.  If you think about the USB host functionality on a PC, there are four major components to it - the host IC itself (which handles the USB packetizing and connection/removal events), the operating system (drivers), the processor (to manipulate the data), and the memory (to store data waiting transfer). 

    Your "USB microcontroller" needs to enable equivalent functionality in order to support any USB peripheral device - not just the TUSB3410.

    Regards, Dan