1
\$\begingroup\$

I have a custom STM32F103C8T6 board. Long story short, the MCU works fine, I can connect to it, program it, read sensors, toggle GPIO etc. The problem is that, one of the crucial pins seems to be shorted to VDD. The pin is PA9, which I wanted use for USART_TX1. I have no control over this pin. I can not digitally toggle it, can not use uart, nothing. I checked the pin via a multimeter ,with the board powered on and off, and both times I noticed a short between VDD and the pin. The length of the track out of this pin is about 7 inches. I visually inspected the route to see if short was on the board but I didn't notice anything, route is neat and isolated. Thus, I believe the pin is internally tied to VDD somehow?

I also performed a full chip erase, still tied to VDD. I also think it is worth noting that sometimes there exists an amount of resistance that the multimeter measures when checking for shorts. I read values ranging from 2 to 190 ohms.

What is going on here?

Edit: schematic and layout of the relevant parts. Top layer being ground, and the bottom being VDD. Let me know if more info is needed.

enter image description here

enter image description here

\$\endgroup\$
9
  • \$\begingroup\$ Schematics, Layout? \$\endgroup\$
    – Tyler
    Aug 10 '18 at 16:16
  • \$\begingroup\$ @Tyler added.... \$\endgroup\$
    – zeke
    Aug 10 '18 at 16:21
  • 1
    \$\begingroup\$ Using an ohm meter on I/O pins of an MCU can be complicated, in part depending on applied polarity and pin protection structures (though is probably a 5v tolerant pin so may not have diodes). It's possible your MCU has been partially damaged by an ESD event. One thing you could do is to try measuring the voltage on the pin while you connect say a 1K or even 470 ohm resistor to ground. I once had something similar happen on a board that matched a 5-pin FTDI cable that then got plugged in backwards - one of the UART pins died but the rest of the chip at least superficially kept working. \$\endgroup\$ Aug 10 '18 at 16:34
  • \$\begingroup\$ @ChrisStratton I did as you asked, the voltage before was 3.17V, after adding a 550 ohm resistor it dropped to 2.85V. I think this indicates the pin is directly tied to VDD. Also, how can you possibly kill a uart pin? It's not like mixing RX and TX would cause this.. \$\endgroup\$
    – zeke
    Aug 10 '18 at 16:43
  • \$\begingroup\$ ESD event or out of specified range voltage. Possibly a negative voltage in the flipped connector case - would have to stare at the pinout for a while to figure out exactly what happened. After that I removed the uneeded 5v power lead from the UART cable connector and taped it off. \$\endgroup\$ Aug 10 '18 at 16:46
1
\$\begingroup\$

Unsolder and carefully lift the pin of the part then measure the trace with a DMM and check for shorts to ground. If the trace is still high impedance, it's probably the MCU and the MCU will need to be replaced. Odds are the port is blown out, especially if this has been connected to a non TTL uart by mistake, or ESD damage.

While the PIN is up you can check the I/O on the PIN independent of the PCB

If the trace is shorted (still reads a value lower than 100kΩ (although should be more like few MΩ)), it's the PCB (and all PCB's are not perfect). I've had a few through hole vias that shorted planes together. The nice thing about this trace is it's only tied to one pin, which makes it easy to troubleshoot. I've had problems like this where there are 5 pins, and you have to go down the line and cut traces and remove parts until you've found the offending part or trace.

\$\endgroup\$
4
  • 1
    \$\begingroup\$ That difficult and risky pin-lift test is unnecessary. It's already been conclusively demonstrated not to be a PCB short, as the voltage on the pin varies when loaded with a resistor. If it's shorted to anything, it's something with a moderate amount of its own impedance, probably on-chip. An adjacent I/O is theoretically possible, but that can be tested by software toggling those. \$\endgroup\$ Aug 10 '18 at 17:26
  • \$\begingroup\$ It's unlikely to be the board because I have a few clean, spare boards of the same design and I checked the pin to see if it was shorted, it was not. \$\endgroup\$
    – zeke
    Aug 10 '18 at 17:40
  • 1
    \$\begingroup\$ I have seen boards of the same batch, some with shorted vias to ground and some not. PCB manufacturers are not perfect. I don't think it's likely either, but when there is a problem likelhood doesn't matter until you find the problem. I'll bet its a bad pin on the processor, which I have seen much more with the STM32's due to ESD or overcurrent \$\endgroup\$
    – Voltage Spike
    Aug 10 '18 at 17:59
  • 1
    \$\begingroup\$ @ChrisStratton, "conclusively demonstrated", really? Have you heard of hair-wide defects/bridges on PCBs that can have 50 - 100 Ohm impedance? \$\endgroup\$ Aug 10 '18 at 19:20
1
\$\begingroup\$

I have suffered from exactly the same symptom, in my case it was due to tin whiskers. These were forming in real time - within minutes of the rework that I was doing to clear them - and were invisible to the naked eye (and we didn't have optical instruments to hand so I never saw them). They caused shorts ranging from units to 10s of ohms. Absolutely amazing.

The root cause was a problem with a cleaning process at the PCB fabricator. They proactively contacted me to advise that other customers were seeing the same issue with boards made that day.

\$\endgroup\$
0
\$\begingroup\$

I soldered a new chip to the same board, and it seems to work fine for now.

\$\endgroup\$

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.