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.

TUSB3410 Stand alone usable

Genius 4170 points
Other Parts Discussed in Thread: MSP430F5437A, TUSB3410

Hello everyone,

I am starting to work on some USB solutions for new product, since I have never realised something like this before, I am getting into beginner troubles right now, perhaps some of You did already find solutions to my basic problems :)

I want to connect the PC with USB to my µC, from my point of view, right now it doesnt matter what µC i am using, plans are to connect the PC to an MSP430F5437A, since the TUSB3410 should work for himself!?

I did read a lot of posts already about this IC and of course did some research, now whenever I connect my own PCB with the TUSB3410 circuit ( I did design it similar to the ones in the Eval module etc.) my PC recognises an unknown USB device, and I cannot work with it ( for example when I want to use the EEPROM flash utility, no USB device is recognized etc.)

From my standpoint right now, I have to assume that my circuit is wrong somewhere, but it looks pretty similar and working to me. So does anyone know, if a TUSB3410 should work stand alone, without EEPROM attached just with USB, so for example if I connect only the TUSB to my PC it should identify itself as a TUSB3410 ( this is what I assume should happen after reading the Datasheets Appnots etc.) but its not happening with my devices?

Thanks for your help and reading,

Seb

  • seb said:
    whenever I connect my own PCB with the TUSB3410 circuit ( I did design it similar to the ones in the Eval module etc.) my PC recognises an unknown USB device, and I cannot work with it ( for example when I want to use the EEPROM flash utility, no USB device is recognized etc.)

    Have you already installed the Drivers of the TUSB3410 device on your pc?

    In the Device Manager of your operating system, when you do right click on the "Unknown USB device", Properties --> Details , what is the device Instance Id (perhaps you can just provide a screen shot of that window)

    Also, is it possible for you to provide the schematic of your TUSB3410 design?

    seb said:
    So does anyone know, if a TUSB3410 should work stand alone, without EEPROM attached just with USB

    Yes, the TUSB3410 devic can work stand alone with no EEPROM attached. By default has its own VID/PID stored on the internal memory. However by using the EEPROM you will be able to store your own VID/PID and also the Firmware of the TUSB3410.  On each start-up the TUSB will try to read these information from the EEPROM. If the EEPROM is not present or is defective for some reason or has not the required data in it, the TUSB will load its own default VID/PID and Device Desc (VID=0x0451, PID=0x3410, DeviceDesc = "TUSB3410 Device") which is stored in the internal Memory of the TUSB Bridge.

    For more information please check the USB/Serial Applications Using TUSB3410 VCP Software (Rev. F)  App Note.

    For USB compliance, any USB product must have a unique vendor ID and product ID. The OS uses the VID/PID combination to determine what driver to load. The VID and PID are reported to the USB host in the USB device descriptor when this descriptor is requested by the host.

    A unique VID can be obtained from the USB Implementers Forum (www.usb.org). A product ID can be whatever a vendor chooses, but since the VID/PID pair determines what driver is loaded, the same PID should not be given to two different products. If you do not want to obtain your own VID, you have the option of requesting a unique PID from TI to be used with TI's VID (0x0451). Contact TI for more information at usb@ti.com.

    Firmware in TUSBxxxx applications can either be stored on the USB host PC or in an EEPROM on the I2C port of the TUSB3410. Storing it on the host has the advantage of simplifying the process of field firmware updates, since all that is required for an update is replacing the firmware file on the host. Updating of firmware in the EEPROM requires use of a TI USB EEPROM Burner Utility for the TUSB3410. Storing firmware in EEPROM in TUSB3410 applications has the advantage of automatically using the 3410's unique device ID as the USB serial number.

    Hope this information will be helpful.

    BR,

    Mo.

  • Hello,

    Thank You for the fast reply and your inside, it kind of did help me by assuring my assumptions were right. Now I would like to deliver the HArdware-ID and the shematic as You wished:

    Mo. said:
    Also, is it possible for you to provide the schematic of your TUSB3410 design?

    I hope it will be big enough to see everything, I will check as soon as I posted.

    Mo. said:
    Have you already installed the Drivers of the TUSB3410 device on your pc?

    I think so, at least I did install all the stuff that was presented in the TUSB3410 TI webfolder.

    My next step will be to take a Launchpad and desolder a lot of USB parts to see when it starts malfunctioning, to perhaps find my own fault in my PCB.

    As your answer did somehow acertain myself that I have some PCB failure. What is weired, because at least my PC detects the connected device in some way. I assume, if I did something wrong in my PCB design, nothing should be detected, no ?

    Thanks for checking my designs.

    Seb

  • 1) In your schematic Vcc and Vcc1 (pin 3 and pin 25) seem not to be connected to 3.3V !?! Are these connected but not labeled? Can you please verify? What is the voltage at these pins?

    2) The pulldown Cap on the /RESET line should be 1uF

    3) Is the USB_RST signal line at J8 connected to some logic circuit?

    4) As far as I know CTS, DSR, DCD and RI pins should be left unconnected (floating) when these pins are not used!

    5) What is the crytsal that is being used?

    6) How do you generate the 3.3V supply voltage? Do you have a stable power supply?

    BR,

    Mo.

  • Hello,

    here are the answers to your questions, after that I try the things you are suggesting:

    Mo. said:
    1) In your schematic Vcc and Vcc1 (pin 3 and pin 25) seem not to be connected to 3.3V

    They are both connected to 3V3 supply, but not labled, I checked that in my PCB

    Mo. said:
    2) The pulldown Cap on the /RESET line should be 1uF

    I will change that after writing

    Mo. said:
    3) Is the USB_RST signal line at J8 connected to some logic circuit?

    Not really, it is connected to a IO pin of the attached MSP430 ( the part isnt in the USB schematic ), but I dont think a left open Jumper will cause any problems.

    Mo. said:
    4) As far as I know CTS, DSR, DCD and RI pins should be left unconnected (floating) when these pins are not used!

    I have no clue at all about this, mine are pulled down to GND, I just read am schematic from TI ( TUSB 3410 GPIO ) where they are all pulled up to 3V3 via a 5k resistor...

    Mo. said:
    5) What is the crytsal that is being used?

    I am using an microcrystal 12 MHz oscillator with external load capacitances

    Mo. said:
    6) How do you generate the 3.3V supply voltage? Do you have a stable power supply?

    I have soldered the supply directly to the VCC Pins.

    I will try those minor changes of yours, but honestly I do not see it working then...

    One more time: Are you sure that the TUSB3410 is working alone, without any controller attached, I think I will to make my own PCB with only the TUSB on it, to see where my errors come from. If I did get it right yesterday, if my design would be working the PC would already know that an TUSB3410 is attached to it, when connecting the USB cable, right?

    Seb

  • Hello,

    did spent a couple of hours analyzing and resoldering my PCB:

    Seems to me, that my TUSB3410 is NOT very stable, I did a minimum components PCBwith only TUSB some Rs and Cs and the oscillator on it. Strangly a lot of time ( round 50 percent ) the oscillator does not begin to swing, nor does my PC see any device attached to it, when I then start shutting my PCB on and off from the power supply it starts to work, or to say the least, I do get the TUSB in my device manager ( windows)

    Now I am of course not happy with the 50% working chance, I cannot sell a product where the costumer has to plug and pray ( heard that befor, think it still is funny :) )

    Next step I wanted to try costumizing the EEPROM or external memory via the EEPROM burner, I did install the device as following:

    Now when I do start the EEPTROM burner.exe I get the follwing error:

    What does that tell me, I did hope the error was caused because my TUSB hadnt been detected yet, but now, I assumed everything works in my favour, but it isnt?!

    I could need some serious help with this USB stuff, it doesnt seem self explaining to me anymore :)

    Greetings

  • Glad to hear that at least you did some improvements :)

    seb said:
    trangly a lot of time ( round 50 percent ) the oscillator does not begin to swing, nor does my PC see any device attached to it

    In most of cases this is either related to the power-on Reset at the TUSB device or it is related to the crystal oscillator.

    For the power-on Reset: How do you generate the 3.3V on your board. Do you use a 5 V to 3.3V LDO on your Board?  Important is to make sure that you have a stable and fast rising Vcc voltage at power-on. Also makesure that your R/C configuration at the RESET pin has a 15k pullup and a 1uF pulldown Cap.

    For the Crystal oscillator. Can you try to use a different 12 MHz Crystal? Also try to use different parallel caps.

    Hope this helps, otherwise let me know.

    BR,

    Mo.

  • seb said:

    Now when I do start the EEPTROM burner.exe I get the follwing error:

    This error is most probably because you are on a Windows 7 or Vista machine.

    Unfortunately the current version of the EEPROM Burner will only run on Windows XP / 2000 machines.

    BR,

    Mo.

  • Mo. said:
    This error is most probably because you are on a Windows 7 or Vista machine

    True. And what does TI recommend :) of course I dont want to look for an old PC with older version of windows on it, just to be able to flash my RAM....

    And to the other thing with my stable or unstable power supply, thats just fine with me right now, I know it works so I do not care about reconnecting, as long as I am still debugging.

    Is there any other way to program my Flash so that I can name my own TUSB3410 device, or do I need to do it via the EEPROM burner?

    What I achieved today :

    MY TUSB3410 were only detected as EEPROM-burner, as shown above, it took me an hour to install and desintall the various possible drivers for the TUSB and now I got it back to an VCP, so I can test it with an terminal program under windows ( HTerm is use)

    I did shorten the SIN and SOUT of the TUSB in  order to receive an echo, and it just worked fine, I did receive what I sent.

    So this was already success enough for today :)

    No I am wondering, what USB exactly is?! Is there some USB stack out there, or some program code everyone uses for their own USB application?

    I once did a implementation of ModBus in an MSP430 device, there was an Stack available with all the commands, is USB a little the same, or do I have to come up with my own fantasy code :)

    So for example I just send a 1 via PC to the TUSB and attached MSP430, and in my MSP430 I will do some action whenever I receive this 1 from the PC?!

    Has anyone ever implemented USB for themselves in here?

    Could need some basic hints :)

    Thanks for still reading,

    Greets Seb

**Attention** This is a public forum