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.

TUSB8020B: TUSB8020B drivers and I2C programming software

Part Number: TUSB8020B
Other Parts Discussed in Thread: TUSB9261

Hi. I have this Ic on a PCB. Device driver sees the hub, but leaves it as "Unknown Device". I have an un-programmed I2C EEPROM connected. Per the datasheet, the Hub goes into "programming mode". However I can't find any definition in the datasheet explaining how to program the device in programming mode. (The words "programming mode" are only used once in the datasheet.)

I looked in the eval kit datasheet, and under trouble shooting there is a note "Make sure that the latest drivers are installed for the host controller." Where can I find these drivers?

For the EEPROM, the following is noted in the Eval kit datasheet:

"The EEPROM interface defaults to programmable (not write-protected) so that any installed EEPROM’s contents may be modified to test various settings. If an EEPROM data change is required, the values may be changed using the register access methods outlined in the TUSB8020B data sheet. In addition, a Microsoft® Windows® based EEPROM utility is available upon request."

Can I get the EEPROM utility?

I'm going to try disconnecting the I2C IC to see if that helps. However I would like to be able to program this IC on the PCB going forward (my qty is too low for pre-programming).

Thanks

Tim Anderson

  • Disconnecting the EEPROM allows for a USB 2.0 Connection. I have the polarities swapped for both Upstream RX and TX lines (for SS). How do I program the device to recognize the swapped polarities?

    FYI, I have usbview installed, and can provide data as needed.
  • Hi Tim,

    Please accept my friend request and I will send you the programming tool.

    Superspeed connections should handle polarity swap without any external configuration.  USB 2.0 polarity swap requires EEPROM or SMBUS configuration.

    Regards,

    JMMN

  • Do I have to set up the IC in some way to use the SS? USBVIEW lists USB 3.0 as unsupported.
    Protocols Supported:
    USB 1.1: yes
    USB 2.0: yes
    USB 3.0: no
  • So interestingly enough, I changed from a debug cable to a normal cable, and now the IC will connect via SS. I must have had my directions swapped.

    While I had the debug cable and could only connect via USB 2.0, I was able to recognize the USB 2.0 device that was connected to DS2. Now that I can connect via SS, I can see the SS device connected to DS1, but the device connected to DS2 no longer appears. Is there some problem with connecting to a HS and SS device at the same time?

    The SS device is a TUSB9261. Do I have to set this up before the Hub will connect to the HS device?
  • HI Tim,

    When you look in USBVIEW you should see two instances for TUSB8020B - one a SuperSpeed hub and the other as a USB 2.0 (Generic or MultiTT) hub. Do you see both instances? The superspeed device will appear on one and the USB HS/FS/LS devices will appear on the other. Send a screenshot if you'd like us to take a look.

    Regards,
    JMMN
  • Now I see what you mean about the two instances. I missed that. I can see both devices.
  • Tim,

    Let us know if you have additional questions.

    Regards,
    JMMN
  • Can I get the default settings for the firmware? I tried the programmer, and it programs. I can get the computer to recognize the hub. What I don't know are how what I programmed differs from the default programming.

    Looking at the datasheet, there are a number of addresses listed (not the whole address space), with some of the default values listed. However many of the configuration bits are user selectable and left as "X". I know that the default settings work (since I can disconnect the EEPROM and it works). However I don't know if what I programmed is the same or different. 

    Can you send me the default settings for the TUSB8020B, as they would appear with the EEPROM Addressing?

    Thanks

    Tim

  • One further note. I have a TUSB9261 USB-to-SATA converter connected to the USB hub. With the EEPROM disconnected, I see and can program the TUSB9261 using the flash burner software. However the flash burner software does not see the TUSB9261 IC when the EEPROM is connected and programmed. So there is some difference between what I program in the Hub's EEPROM and the default. I'm trying to figure out what I set up incorrectly. My goal is to use the EEPROM going forward.
  • HI Tim,

    Per table 3, the undefined registers are reserved or not accessible by EEPROM. An "X" value in the register should mean that the value can be set by pin configuration if no EEPROM is used. Can you send me your EEPROM file and I can review it? You can send it directly to me if you do not want to post it on the forum.

    Regards,
    JMMN
  • Tim,

    I responded in direct email, but I wanted to document that register 09h should be 00h and register F1 should be 00h. These need to be updated in the documentation.

    Regards,
    JMMN