I'm about to layout the USB connection on our boards and wondering whether the termination resistors and pull-up on D+ are necessary when using the STM32F437xx. The datasheet tells:

No external termination series resistors are required on DP (D+) and DM (D-) pins 
since the matching impedance is included in the embedded driver.

Concerning the pull-up resistor on D+ it is stated:

HNP/SNP/IP inside (no need for any external resistor)

However, all development boards I checked (Olimex STM32-H407 and ST STM32F4DISCOVERY & STM32439I-EVAL) seem to include at least the termination resistors of 22Ohms. The Pull-Up on D+ is not included.

For now, I will simply place the two resistors and go with it. Still, I would like to understand the reason why one would "double-terminate" the lines.

  • 5
    \$\begingroup\$ If in doubt, put the pads for the resistors, and then either populate with 22Ω or 0Ω depending on which way the wind is blowing at the time. \$\endgroup\$ – Majenko Oct 17 '14 at 14:05
  • 4
    \$\begingroup\$ My STM32F4DISCOVERY board has 0Ω resistors for both the STM32F4 chip's USB connection and the STM32F1's connection. That's made by ST, so I'd go with no termination, since both their datasheet and their official demo board have it that way. \$\endgroup\$ – Majenko Oct 17 '14 at 14:16
  • \$\begingroup\$ @Majenko thanks for checking with the real boards. I don't have them at hand and only checked the schematics. \$\endgroup\$ – Arne Oct 17 '14 at 14:25

The reason hardware designers put the extra pads in is because they live in the real world. Chip manufacturers often claim a lot of things, especially in their 'preliminary datasheets' (power consumption figures are notoriously bad) only to drop the ball on production parts. This can be particularly important for things such as high speed termination resistors, where a wrong value can cause signal or EMC issues that you'll only discover on a finished board. Having the pads there means the hardware engineer can easily add some extra resistance if they find the design is not performing as required.

For example, the early STM32 parts were advertised as having built-in 1.5kΩ pull-up resistors on the USB lines. This was a great feature, except that it turned out all production units only had 0.81kΩ to 0.95kΩ resistors due to manufacturing issues. This would not allow a device to pass USB compliance and needed quite an extensive redesign to fix the issue.

A few extra pads and jumpers isn't really worth much compared to the costs of having to re-do a board near the end of the design cycle and this is why good hardware designers will act very conservatively on these sorts of things until they have experience that the chip manufacturer is delivering on their promises.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.