VOGONS


First post, by RussD

User metadata
Rank Newbie
Rank
Newbie

Many PIIX3 based motherboards were designed with USB support in mind, but shipped without the necessary sockets and passives. Even though the USB support provided by the PIIX3 is pretty minimal (only 12mbps, most BIOS's don't provide any support ...no hit f2 to enter setup, navigate boot menus, etc..). But it's still a fun project and it's something handy to have. There's basically 4 areas to look at. The socket itself, the filtering and fusing on the power rail, the passives connecting the signal lines, and any necessary passives (termination, etc) for the USBCLK signal. A PIIX3 identified by the marking "Intel" "PCIset" "SB82371SB".

Anyway, here's what you might typically see around the USB socket:

PXL_20220627_163059168.jpg
Filename
PXL_20220627_163059168.jpg
File size
1.38 MiB
Views
308 views
File license
Public domain

The socket itself is bog standard. A wide variety of connectors will do, I chose a TE 5787745-4. Some

The little three pin components, L10 and L11, are LC EMI filters:

gnome-shell-screenshot-3k3jm3.png
Filename
gnome-shell-screenshot-3k3jm3.png
File size
3.4 KiB
Views
308 views
File license
Public domain

So power goes in one one end, comes out on the other and the center is grounded. In a pinch, you could probably just bridge pin 1 to pin 3. In this case I used DSS1NB32A331Q91A which has a 330pF capacitance. F2 is the shared polyfuse for both sockets. I chose a Littelfuse RUEF250 with a 2.5A hold current and a 5A trip current. L12 and L13 are filters for the ground signals from the USB ports. This is pretty uncommon. These can probably be shorted, in my case I used 220 ohm ferrite beads. On the backside we have some more components:

PXL_20220627_163127064.jpg
Filename
PXL_20220627_163127064.jpg
File size
1.09 MiB
Views
308 views
File license
Public domain

Since the LC filter provides a small value capacitance for high frequency components, these are either the other half of a Pi filter, or meant for bulk capacitance, but the footprint is a little small for that. Probably not too critical either way as it's just for full speed USB devices and there's probably a bunch of bulk decoupling in this area anyway. I went with a couple of 560pF capacitors, but I can certainly see going with something larger.

Because motherboards of this era are typically wave soldered, all the unused through holes will be populated with solder. If you are determined enough, you can get this out with a combination of wicking, solder sucking, fresh solder, flux, wicking, and a lot of frustration. If you have a hot air station, using that on one side while using a solder sucker from the other side is magical. Anyway, components ready to go:

PXL_20220627_165539121.jpg
Filename
PXL_20220627_165539121.jpg
File size
1 MiB
Views
308 views
File license
Public domain

Bit of soldering later:

PXL_20220627_171728013.jpg
Filename
PXL_20220627_171728013.jpg
File size
1.26 MiB
Views
308 views
File license
Public domain

And that takes are of the socket and power filtering/decoupling.

Reply 1 of 2, by RussD

User metadata
Rank Newbie
Rank
Newbie

The next step are the passives on the data lines. The PIIX3 datasheet indicates that there should be a 15k pulldown on the USB port side, a 27 ohm series terminator near the PIIX3, and a 47pF filter capacitor on the PIIX3 side of the series terminator. Tracing out the signals leads to this collection of unpopulated components on the back of the motherboard near the PIIX3:

PXL_20220825_122240223.jpg
Filename
PXL_20220825_122240223.jpg
File size
762.17 KiB
Views
294 views
File license
Public domain

It's pretty clear here by probing or even just taking a look at the traces which are which. They are 0805 or maybe 1206 footprints but rather than ordering some fresh components, I just used what's in my component drawers which include 0603's and 0402's. They look a bit wonky, but hey, it's the back of the board.

PXL_20220825_145638277.jpg
Filename
PXL_20220825_145638277.jpg
File size
1.43 MiB
Views
294 views
File license
Public domain

And the last bit is the 48MHz USBCLK. Depending on how this is hooked up, there may be some termination passives to populate. Probing around should let you know what you are dealing with. In my case, R101 and C63 form an AC terminator adjacent to where the clock signal hooks up to the PIIX3:

PXL_20220825_123058241.jpg
Filename
PXL_20220825_123058241.jpg
File size
1.08 MiB
Views
294 views
File license
Public domain

There's no hard and fast rule on these. There's a PCICLK nearby that's also terminated with an AC terminator with the resistor being 330 ohms. The capacitor is impossible to measure without depopulating it. There's a few rules of thumb out there for picking a capacitor value using the signal rise time and the trace impedance. The signal rise time is 1.2ns, and the impedance is whatever my best guess is. The exact value isn't super critical here. It's only 48MHz after all. I went with 47pF because I already had them out, and 270 ohm on the resistor because it's what I had in 0603.

PXL_20220825_150533002.jpg
Filename
PXL_20220825_150533002.jpg
File size
1.06 MiB
Views
294 views
File license
Public domain

Good to go. BIOS support for programming the chipset may be necessary and of course appropriate OS drivers are necessary as well. Without BIOS support it may be possible to poke the right register values early in the boot sequence to get things going. In my case, I needed to update my BIOS revision to get things working.

Reply 2 of 2, by Sphere478

User metadata
Rank l33t++
Rank
l33t++

Great work!

If you wanted more than 2 ports you may have been able to put in a pin header 😀 or so that you did and use an adapter.

Re: Adding more usb ports to old motherboards without using a card

Sphere's PCB projects.
-
Sphere’s socket 5/7 cpu collection.
-
SUCCESSFUL K6-2+ to K6-3+ Full Cache Enable Mod
-
Tyan S1564S to S1564D single to dual processor conversion (also s1563 and s1562)