T4 overheats when connected to my PCB

stereodan

Active member
I have a real puzzler here.

I have a PCB board designed with a few TLC5940 chips daisy-chained to a T4. I've used these boards many times before.

When run on the board, the Teensy gets extremely hot. According to tempmonGetTemp(), the internal junction temperature reaches 90C.

Now here's the puzzler. I put the T4.0 on a breadboard and connect it to my PCB using jumper wires. Now it runs fine, around 68C.

Ok, I think maybe there's a bad connection on one of the pins causing a stray current, or something. I remove all the pins from the T4.0 except the ones I need, so the electrical connections are exactly the same as when I used the jumper wires, except now the T4.0 is back on the board.

It still overheats!

So I think, okay, maybe it's the components nearby heating up the Teensy. But the components are a good distance away, certainly nowhere near close enough to get the Teensy's junction temp to 90C, and the entire board is not warm—it's just the ARM processor in the middle heating up, the heat is definitely coming from the Teensy itself.

The BJTs in the center, underneath the Teensy, are on the opposite side of the board and do not get hot.

What in tarnation is going on?! I'm at a complete loss.

Here's my board design.

Screenshot 2023-08-08 at 8.45.56 PM.jpg
 
Debugging a board from looking at the stacked Gerber files and following the individual traces is hardly possible.
Could you share (a link to) the schematics for us to check as well?
You stated "I've used these boards many times before"; so this is the only board where the (over)heating occurs?
Do you have an oscilloscope at hand to check the signals at the Teensy pins for signal integrity?
Does the Teensy 4.0 also run hot in the board when you run the "Blink" example?
Are any external peripherals connected to your board when running the test?

Sorry, lots of questions...

Paul
 
Debugging a board from looking at the stacked Gerber files and following the individual traces is hardly possible.
Could you share (a link to) the schematics for us to check as well?
You stated "I've used these boards many times before"; so this is the only board where the (over)heating occurs?
Do you have an oscilloscope at hand to check the signals at the Teensy pins for signal integrity?
Does the Teensy 4.0 also run hot in the board when you run the "Blink" example?
Are any external peripherals connected to your board when running the test?

Sorry, lots of questions...

Paul

All great questions!
I've attached the schematic.
The reason I included the PCB was because I suspect this is a physical heat transfer issue, not a circuit thing. For instance, when I raise the Teensy off the board with a set of headers, the temp definitely drops. When I set the TLC5940 outputs to off, the temp drops. But it's still running way hotter than expected when attached to the board.

I don't understand how so much heat is making its way into the Teensy core from the outside, and I don't see any reason why it would be generating the heat internally.

Yes, I've used these boards before, but this one has the most TLC5940s populated on it than I've ever tried before (10) so perhaps that's causing more heat on the board? I've verified all the connections.

The signals to the Teensy are fine as far as I can tell, and yes I'm checking with a scope.

Yes, the Teensy also runs hot when I run the blink program! Weird! But again, only when it's on the board. I've cut the Vusb/Vin and tested it powered on the board (via the onboard 12v to 5v buck converter) and then separately by applying 5V directly to Vin with the Teensy disconnected from anything else.

No other peripherals are connected when I'm running the test.

Screenshot 2023-08-08 at 11.23.27 PM.jpg
 
All great questions!
I've attached the schematic.
The reason I included the PCB was because I suspect this is a physical heat transfer issue, not a circuit thing. For instance, when I raise the Teensy off the board with a set of headers, the temp definitely drops. When I set the TLC5940 outputs to off, the temp drops. But it's still running way hotter than expected when attached to the board.

I don't understand how so much heat is making its way into the Teensy core from the outside, and I don't see any reason why it would be generating the heat internally.

Yes, I've used these boards before, but this one has the most TLC5940s populated on it than I've ever tried before (10) so perhaps that's causing more heat on the board? I've verified all the connections.

The signals to the Teensy are fine as far as I can tell, and yes I'm checking with a scope.

Yes, the Teensy also runs hot when I run the blink program! Weird! But again, only when it's on the board. I've cut the Vusb/Vin and tested it powered on the board (via the onboard 12v to 5v buck converter) and then separately by applying 5V directly to Vin with the Teensy disconnected from anything else.

No other peripherals are connected when I'm running the test.

View attachment 31712
The schematics as jpg are barely readable. But i suspect you push 5 volt logic levels from the tlc5940s into the Teensy i/o pins. That’s bad. Potentially fatal for Teensy41. The LDO may by now be dead also…
Also unclear from the poor resolution schematics is what you do with the Teensy 3V output - does that supply anything on your board?
 
For instance, when I raise the Teensy off the board with a set of headers, the temp definitely drops
That observation may be a clue that points towards an external heat source.
Did you perhaps measure the current flowing into the board?
I couldn't tell from the schematic (the characters are just not distinguisable) but what buck converter are you using and where/how is it placed on the board?
Can you measure the current flowing in and out of that converter? Also current flowing into the Teensy 4.0?
You don't happen to have a thermal camera, do you?
Last question for now: could you attach the schematic as PDF to your post? Hopefully it's not too big as attachment.

Paul
 
If you can't attach a PDF, try capturing the schematic as a PNG image. PNG preserve the image detail better than JPG.
 
PDF attached.

View attachment Schematic.pdf

Did you perhaps measure the current flowing into the board?

Yes, at 12V input I was at 100 mA and the Teensy was running at 85C and climbing.

It's a very slow temp creep, over 10 minutes it goes from room temp to 90C.

what buck converter are you using and where/how is it placed on the board?

Right now it's a 5V converter. I know it should be 3.3v, I recently changed my board from T3.2 to T4.0 so the 3.3v converters are in the mail, but since the T4.0 accepts up to 5.5V I'm using that for now. This is not an ideal situation but I haven't been able to see how it would contribute to this particular thermal issue, since I'm unable to replicate it when the Teensy is off the board but still connected.

Traco Power 1.5A 5V

Screenshot 2023-08-09 at 9.19.18 AM.jpg

You don't happen to have a thermal camera, do you?
Ordered one yesterday! Good to have in general I think. Arriving tonight, I will have a look with it.
 
The R, G and B transistors that drive the 12 V MOSFETs look a bit strange.
NPN transistors as emitter followers intended i think. But is the max voltage at the base not clamped to ~0.7 V? While the Teensy outputs aim to drive high at 3.3V?
 
Oh my, Traco again!

Many years ago Adafruit was selling a 3-pin Traco DCDC switcher that behaved very badly (when attempting to power Teensy 3.0) if you didn't add a capacitor at its input. Normally people only think to add capacitors at the output, but that only made things much worse. Traco's datasheet even said an input capacitor wasn't necessary, and maybe it would have worked ok if powering a simple resistor load. But with the sudden change in current as Teensy crosses certain voltage thresholds during startup, that little Traco converter absolutely did need a capacitor at its input. It would burst into oscillation going at high as 9 volts at the peaks as its feedback loop tried to regulate but it needed surges of current from the input to accomplish regulation. Even 10uF was enough. But it had to be connected between the input pin and GND. Eventually we got Adafruit to update their web page, and on the first edit they even wrote to add the capacitor at the output because almost everything thinks that way at first.

This little Traco part may be completely different. Looks like it has capacitors. Still, even today I shudder a little when I see a 3 pin Traco, because that old one caused so many people such terrible problems!
 
It looks like the Traco converter module that stereodan referred to has 2 big ceramic caps on board:

traco.png

@stereodan: does the PCB layout from message #1 match the photo from message #7?
When I compare the photo, layout and Traco pinout, I see a discrepancy (look at the 3 Traco pins in relation to 5V pin of the Teensy):

traco board.png

Paul
 
@stereodan: does the PCB layout from message #1 match the photo from message #7?
When I compare the photo, layout and Traco pinout, I see a discrepancy (look at the 3 Traco pins in relation to 5V pin of the Teensy):
Paul

Ah! The board outline I shared is of a later revision, where I flipped that around. Here's the correct outline for this board:
Screenshot 2023-08-09 at 2.43.37 PM.jpg

The R, G and B transistors that drive the 12 V MOSFETs look a bit strange.
NPN transistors as emitter followers intended i think. But is the max voltage at the base not clamped to ~0.7 V? While the Teensy outputs aim to drive high at 3.3V?
I'm using NMOS, N7000, so I think it should be correct, no?
 
Well, I think I learned an important lesson—The TLC5940s simply produce a massive amount of heat!

Screenshot 2023-08-09 at 8.27.34 PM.jpg

I didn't see any hotspots on the Teensy itself...the TLCs however slowly warmed the entire board. It still doesn't make sense to me how the Teensy can reach an internal junction temp of 90C from this, but perhaps enough conductive heat through just a few pins is enough?

I'm going to see how some heatsinks on the TLC5940 chips affect things tomorrow.
 
Pinned and on a PCB adds heat sink area ... except when PCB is a heat source instead.

T_4.1's extra inch helps spread heat to dissipate over larger surface and run cooler than a 4.0 - soldering pins to a T_4.0 helps - plugging that to a board where it can lose more heat helps - having that board heating the pins and radiating heat to the area would have it build in the T_4.0.
 
the TLCs however slowly warmed the entire board. It still doesn't make sense to me how the Teensy can reach an internal junction temp of 90C from this, but perhaps enough conductive heat through just a few pins is enough?

I'm going to see how some heatsinks on the TLC5940 chips affect things tomorrow.

Heat is carried by radiation, convection and conduction - if the main board gets hot it radiates heat directly into the underside of the T4, as well as some conducted heat along the pins and convected heat through the air above the board. PCBs are efficient radiators and absorbers of heat radiation, I would expect them to be thermal coupled when mounted like this, mainly radiatively and convectively, not due to conduction through the pins.

Is this inside a metal enclosure? If so the PCBs will likely equilibrate to a similar temperature as the radiation is reflected back from the box.

Heat radiation is a big effect, if you've ever worked with temperator sensors in black epoxy (like the DS18B20), you'll discover they read 1 or 2 degrees hotter than the air temperature if you are near them radiating body heat at them.
 
Back
Top