Belmont

Table of Contents

This manual describes version 1 of the Belmont USB Hub.

Features

Diagram of the features of the board

The Belmont is a 4-port hub with a type-C upstream port. The downstream ports may be either type-A or type-C jacks. Next to each port are two LED indicators. The top one indicates that the port is powered. The bottom one indicates that the port has a power fault as reported by the power monitoring chips on each port. If the programmed current limit is exceeded, power will be cut and the fault light will light briefly before the hub disables power to the port.

Optionally, an external power supply can be connected to the external power jack. Belmont will operate with any supply from 6-24V through a standard center-positive 5.5mm barrel jack.

WARNING: Due to a quirk in the power switching circuitry, you should always connect external power before powering the upstream USB port. Otherwise, regulated 5V from the external power supply may backfeed into the upstream device.

There are two power LEDs. The one just to the left of the upstream USB jack indicates that 5V is supplied from the upstream USB host. The one to the left of the fuse indicates that the external power is connected and it is supplying 5V instead of the upstream USB power.

To the left of the upstream power LED are two indicator LEDs. The one to the left indicates that the upstream host has suspended the hub. And the one to the right indicates that the upstream is operating in High Speed mode.

Theory of Operation

At its heart, this is a pretty simple device. Plug one end into a USB host. Plug devices into the downstream ports. It's a hub. But let's discuss the finer points of the design.

Power Switching

5V power can be provided from either the upstream USB port or from regulated external power. There is a LM66100 "ideal diode" that switches between these two sources. It disconnects the USB 5V when the regulated 5V is higher than the USB 5V, and the state of this switching is reflected in the external power LED. If the LED is on, the ideal diode is switched off and the hub is powered from external power. If the LED is off, the ideal diode is switched on and the hub is powered from the upstream USB port.

Power Regulation

Primary 5V power is provided through the switched sources mentioned above.

The external power regulator is a LMR33640 buck regulator. It has a fairly wide voltage range that goes up to 36V. Unfortunately, not everything on the board is rated that high, so the input has been conservatively specified at a max of 24V. External power goes through a 5x15mm (2AG) fuse. It is recommended that you use a 3A fuse for standard downstream USB power (500mA per port). Likewise, the external power supply should be able to supply at least 12W to cover the power requirements of all four ports and conversion losses.

RV1 can be turned to adjust the 5V regulator output level from about 4.5 to 5.5V. It is recommended that 5V is adjusted to above 5.15V to put it out of the hysteresis range of the LM66100 (though this will depend on the voltage provided via USB so this is not a perfect solution!).

The TUSB4041 also requires 3.3 and 1.1V rails which are provided by two standard linear regulators. The 1.1V rail is actually provided by a 1.2V regulator, which is technically still in spec as long as it's below 1.26V.

Upstream USB

The upstream type-C port has standard 5.1K pull-down resistors to signal power to an upstream smart host. There is a 3A polyfuse protecting this input. The upstream port (and all ports) have a TVS diode array to protect against ESD from plugging in cables.

Downstream USB

Each downstream port is powered by the 5V supply, and power is switched by a TPS2552D controlled by the TUSB4041. Each port has its own decoupling capacitors and a ferrite bead to decouple power noise from downstream devices.

Two LEDs are provided to indicate status. One is powered directly from the switched port power, and indicates that power is on for that port. The second one is connected to the FAULT output of the TPS2552D, and lights when it detects an overcurrent event. In practice, this is a very brief event and you'll only see a brief flash before the TUSB4041 disables power to the port.

TUSB4041

The TUSB4041 is configured through a combination of strapping pins, EEPROM, or SMBus configuration. This board is designed to be configured via EEPROM, but it provides headers for SMBus and strapping headers in case those are useful.

The EEPROM only needs to be 256 bytes (a 24C02). There is an EEPROM Power Disconnect jumper provided to disconnect the EEPROM from system power. But in practice this isn't a problem. The TUSB4041 reads from the EEPROM on startup when SMBUS is strapped high on startup. This may corrupt a read or write that happens shortly after power is applied, but the EEPROM is idle after that.

The most important feature that needs to be configured is swapping the port polarity on all the ports. The board design flips the differential pairs to simplify routing and there is no strapping pin to configure this.

A default EEPROM configuration is provided in the Files section, which enables a set of reasonable features. The EEPROM configuration is described in more detail below.

A JTAG breakout is provided for giggles. The datasheet says nothing about it, but the evaluation board had it so I wired it out of curiosity.

Build and Configuration

There are a few build-time options and several EEPROM configuration options.

Power

Strictly speaking, the external power section is not required. If you want something that is powered only by the upstream USB port, you can omit J11, F2, D9, C33, C37, U13, C34, L1, C44, R49, R46, RV1, R42, R43, Q1, R50, and D13.

Downstream USB Ports

Each downstream port has a footprint for both type-A and type-C ports. Even though the type-C port fits inside the type-A port, the type-A jacks should have a plastic bottom that raises the metal shell off of the board, so there should be no risk of shorting the type-C pads.

There are two important programming resistors per port. R13-R20 are the CC pull-up resistors, which tell the downstream device how much power is available on this port. CC pull-ups only need to be fitted on type-C ports. Type-A ports have no such power signaling. Use values for these signaled power levels:

Pull-Up ResistanceSignaled Available Current
56K500mA
22K1.5A
10K3.0A (not recommended for this board)

The other important resistors set the current limit on the TPS2552D power controllers.

ResistanceCurrent Limit
47K500mA
22K1A
16K1.5A

This is based on a formula you can find in the datasheet. If you want higher current limits, you can swap in the pin-compatible TPS25221 which is limited to 2.7A and can supply 2A continuously.

EEPROM Configuration

The provided EEPROM configuration sets these basic values:

Register AddressNameValueDescription
0hSignature55hMarks the EEPROM as valid configuration data
01-02hVendor ID0451hlittle-endian (default value)
03-04hProduct ID8140hlittle-endian (SEE DATASHEET FOR DETAILS ABOUT THE FLIPPED BIT)
05hDevice Configuration00hdefault values
06hBattery Charging00hdisabled on all ports
07hDevice Removable8Fhall ports removable
08hPort Used0Fhall ports used
0AhDevice Configuration 200hdefault values
0BhPort Polarity9FhAll ports flipped
20-21hLanguage ID0409hlittle-endian, set to US English
F0hAdditional Feature10hSets status output for upstream port

All other values are zero.

You can configure a lot more features like the strings and battery charging configuration. See the datasheet.

Datasheets