Forum Rule: Always post complete source code & details to reproduce any issue!
Results 1 to 11 of 11

Thread: Teensy 3.0 stopped working after 2 weeks

  1. #1

    Teensy 3.0 stopped working after 2 weeks

    Hi Robin,

    We have purchased a few Teensy 3.0 to use as a power control / watchdog to our system. We made two sets of prototype and put them in sealed enclosuers. The maximum air temperature logged was 76C / 168F and the teensy failed to boot up after power cycle. The failed chip while powered on generated excess amount of heat and the measuring between 3V and GND is near to 0 Ohm resistance.

    We did not use much of the Teensy, we only read a few digital input and operate on digital output and control the power using P-MOSFET. The two samples behave exactly the same, so we'd willing to know if we did something wrong.

    We made pretty sure all input never exceeded 3.3V, actually most of them are coming from other ARM boards, which is 3.3V rated.

    Very much appreciated if you can give us some hint about what went wrong.

    Many Thanks,

    Bai Shi.

  2. #2
    Senior Member
    Join Date
    Dec 2013
    Location
    Manchester, NH
    Posts
    104
    Did you use resistors between the teensy's pin and the gate of the mosfets? I've been told that a mosfet behaves like a capacitor and needs to charge when you switch it on, and you can end up sourcing too much current from a microcontroller's pin if you don't have a resistor on there to limit the inrush current I think it's called. The Teensy runs at 3.3v and the absolute maximum current per pin is 25mA, so I think you'd need a 132 ohm resistor on there at minimum. The higher you go the slower the maximum switching speed of the mosfet too. I don't know how to calculate the switch speed. But I think unless you're doing very high frequency pwm even something as large as 1K should be fine. If it's too large though and your switch speed is too fast then the mosfet will stay in the region where it's not fully on or off for too much of the duty cycle and generates a lot of heat so then that might fail on you.
    Last edited by scswift; 01-06-2014 at 11:51 AM.

  3. #3
    Senior Member
    Join Date
    Jan 2013
    Posts
    966
    At the very least you should be posting a schematic so we don't have to guess what the problem might be.

  4. #4
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    Posts
    20,304
    Quote Originally Posted by baishi View Post
    Very much appreciated if you can give us some hint about what went wrong.
    How could anyone give you any hint about what went wrong? The only information you've provided is vague descriptions that provide nothing more than claims you did everything correctly.

    I can tell you most hardware failures are caused by power supply problems. But I have no idea how you powered this Teensy 3.0. Perhaps it was by USB only?

  5. #5
    Quote Originally Posted by scswift View Post
    Did you use resistors between the teensy's pin and the gate of the mosfets? I've been told that a mosfet behaves like a capacitor and needs to charge when you switch it on, and you can end up sourcing too much current from a microcontroller's pin if you don't have a resistor on there to limit the inrush current I think it's called. The Teensy runs at 3.3v and the absolute maximum current per pin is 25mA, so I think you'd need a 132 ohm resistor on there at minimum. The higher you go the slower the maximum switching speed of the mosfet too. I don't know how to calculate the switch speed. But I think unless you're doing very high frequency pwm even something as large as 1K should be fine. If it's too large though and your switch speed is too fast then the mosfet will stay in the region where it's not fully on or off for too much of the duty cycle and generates a lot of heat so then that might fail on you.
    Hi scswift,

    No I didn't put any resistor between teensy's pin and MOSFET and the MOSFET itself is a quite powerful one. This is the one I'm using https://www.sparkfun.com/products/10349. There is a 1K resistor between pull up and 3.3V and using Teensy as sink to draw the voltage of MOSFET gate near to 0 to switch it on. It might be the cause. I have done regression test for more than 3 weeks and everything was fine and this two cases both happen in short period and both runtime less than 2 weeks. That's why I feel a bit weird. Maybe I shall add a resistor between teensy's pin and mosfet. Erm...

    Regards,
    Bai Shi

  6. #6
    I don't think a schematic is much useful here. Our use case is soooo simple, it only drives MOSFET Gate to ground. That's it. The input comes from another Arm7 chip and it could never be anything higher than 3.3V. I understand your eager to understand the situation, but we are not trying to troubleshoot a logic behavior. We more willing to know what could cause a short between 3V and GND with absolutely nothing else connected. Nothing at all, the teensy is by itself alone but the resistance between 3V and GND is near to 0.

  7. #7
    Hi Paul,

    Sorry for the late reply. Wife just delivered and spent all my time at hospital.

    Yes I claim myself did everything correctly, otherwise I don't believe the Teensy would working for around 2 weeks before failure and we have quite a few Arduino chips running around for several months. We know basic circuits and our use case is so simple, it only drives a LED or a MOSFET. So I don't want to give too much details as it won't help too much, the major thing I want to highlight is the 3V output is short circuit to ground which sounds weird. So it would be very helpful if the designer of Teensy could advice it is highly suspicious for over voltage on input pin, or the pull up is higher than the output pin will cause severe damage (from what I read, it shouldn't), or we drew too much current from the chip.

    We are using a ATX power supply and tap the V-Standby 5V to the VUSB. The USB data pair is connected separately to an ARM board. The same 5V V-standby is providing the pull up for the MOSFET. The pull up resistor is 1K. So the output pin is actually sourcing current even on its high state, but I assume this shouldn't be a big problem? The grounds are common and connected together. The post in this forum (http://forum.pjrc.com/threads/554-Te...e-tolerance-5v) says 1k resister should be safe for a 30V source and we only utilizing 5V.

    Is the capacitance problem mentioned by scswift a big issue here?

    Regards,
    Bai Shi

  8. #8
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    Posts
    20,304
    Congratulations on your newborn!

    Regarding the hardware failure, the large current that briefly flows through the Teensy's pin to GND when you discharge the FQP27P06 gate capacitance very likely would cause reliability problems. When Teensy drives a pin low, its internal mosfet has approx 15 to 20 ohms on resistance. This isn't formally specified by Freescale, but I have personally measured it on several boards (but only at room temperature and normal conditions).

    If the mosfet gate is charged to 3.9V, due to a 1K pullup resistor to 5V and Teensy 3.0's pin having a diode to 3.3V (without a schematic I'm doing the best I can with your description), the instant Teensy 3.0's transistor between the pin to GND turns on, approximately 217 mA will flow, assuming the internal transistor on resistance is 18 ohms. However, the time constant is very short, only about 20ns. So Teensy 3.0 will only see that current for very brief time, decaying to within the spec in less than 100 ns. Well, it could be longer, depending on the change in voltage on the FQP27P06's drain, which capacitive couples to Teensy 3.0's pin by the "reverse transfer capacitance", which is specified at 120 pF. That's not much, but if it's a large voltage that changes rapidly, it can also play a factor. This multiplication of the effective capacitance by the voltage gain is commonly called the Miller effect in analog circuit design.

    The pins have an absolute maximum spec of 20 mA, and a recommended maximum of 9 mA, so a brief pulse starting at (approx) 217 mA is pretty far beyond the chip's rating. But with the time so short, and the pulse decaying with a 20 ns time constant, I would expect it can probably survive that for quite a large number of pulses.

    A 1K resistor connected between a Teensy 3.0 pin and 5.0V is probably not an issue. The pins have a 10 mA injected current spec (through the internal diodes to the power supply), and a 1K resistor will bring a floating Teensy 3.0 pin to approx 3.9V and inject 1.1 mA.

    I'm also always a little cautious about ATX power supplies. Several people have blown up Teensy3s with ATX power supplies that produced bad 5V output with the 12V lines unloaded. But using the 5V standby power is probably fairly safe. Still, if you're trying to investigate the cause of mysterious failures, I would not necessarily rule out any ATX power supply simply because the standby power is used. Observing the power line with a good oscilloscope (100+ MHz bandwidth and proper probes) under all the loading scenarios is really the only way to be sure.

    If you're going to redesign this thing to make it highly reliable, even though it's overkill, I'd recommend creating the 5V power with a LM7805 voltage regulator running from the 12V output. And of course, you should add a mosfet driver chip, or a NPN transistor with a resistor between the Teensy 3.0 and transistor's base.
    Last edited by PaulStoffregen; 01-09-2014 at 10:26 AM. Reason: opps, typo, that's LM7805

  9. #9
    Hi Paul,

    Thank you for the detailed reply. I believe the only portion could go wrong is the MOSFET. I will add resistor to it as switching time for me is totally not important. I only use it to switch the other ARM board on and off at most once a day.

    I'm a little lost on the 3.9V on MOSFET's gate. Do you mean the forward voltage drop of the internal diode is about 1.1V?

    For the sake of curiosity, what would happen to MOSFET's internal resistance when temperature rises? I assume all resistance related components tend to appears a higher resistance when temperature goes up? My feeling is that teensy would be more tolerant to this transient surge of current in room temperature but when temperature goes high (around 80C / 176F) it seems start giving trouble.

    Regards,
    Bai Shi

  10. #10
    Junior Member
    Join Date
    May 2013
    Posts
    12
    I have experienced similar issues, but do not have a MOSFET -- or anything else for that matter -- connected to the Teensy. I've been teaching robotics at the high school level for 12 years, but this is the first year we've used the Teensy. In my lab we have 34 Teensy 3.0 controllers, each student with their own. Throughout the term, we've had five of them die on us. (One by me and four by students.) We are using the USB to power the boards and my students have thus far been spending their time learning the basics of programming. They haven't even connected sensors. All they are doing is uploading their sketches and opening the Serial Monitor to see the output.

    Intermittently, as the code is being uploaded, we will get a Windows message saying "Device driver software was not successfully installed." This is crazy because the device had been installed and had been working perfectly. After that message, Windows displays another message, "USB Device Not Recognized. One of the USB devices attached to this computer has malfunctioned, and Windows does not recognize it." Using the Device Manager to inspect the problem, it tells us that it is an "Unknown Device" and isn't working because "it has problems". Before it died, Device Manager tell us the port is taken by "USB Serial (Communications Class, Abstract Control Model) (and then some COM port)".

    At this point, the Teensy is trashed.

    One of my former students is taking a EE class at a prominent university and he tells me that the microcontroller they use (not the Teensy) will die just like this if the Serial Monitor is opened before the sketch has finished uploading. Could this be the cause of my issue with the Teensy 3.0? It is certainly possible and likely that the Serial Monitor is impatiently opened before the upload is finished.

    I am hoping that someone will tell me that this is the problem, which can be corrected through education and a bit of patience.

  11. #11
    Quote Originally Posted by ChrisOdom View Post
    I have experienced similar issues, but do not have a MOSFET -- or anything else for that matter -- connected to the Teensy. I've been teaching robotics at the high school level for 12 years, but this is the first year we've used the Teensy. In my lab we have 34 Teensy 3.0 controllers, each student with their own. Throughout the term, we've had five of them die on us. (One by me and four by students.) We are using the USB to power the boards and my students have thus far been spending their time learning the basics of programming. They haven't even connected sensors. All they are doing is uploading their sketches and opening the Serial Monitor to see the output.

    Intermittently, as the code is being uploaded, we will get a Windows message saying "Device driver software was not successfully installed." This is crazy because the device had been installed and had been working perfectly. After that message, Windows displays another message, "USB Device Not Recognized. One of the USB devices attached to this computer has malfunctioned, and Windows does not recognize it." Using the Device Manager to inspect the problem, it tells us that it is an "Unknown Device" and isn't working because "it has problems". Before it died, Device Manager tell us the port is taken by "USB Serial (Communications Class, Abstract Control Model) (and then some COM port)".

    At this point, the Teensy is trashed.

    One of my former students is taking a EE class at a prominent university and he tells me that the microcontroller they use (not the Teensy) will die just like this if the Serial Monitor is opened before the sketch has finished uploading. Could this be the cause of my issue with the Teensy 3.0? It is certainly possible and likely that the Serial Monitor is impatiently opened before the upload is finished.

    I am hoping that someone will tell me that this is the problem, which can be corrected through education and a bit of patience.
    Hi Chris,

    My use case is using Linux all the way with Makefile and teensy loader. So it has almost zero chance for a conflict Serial access to happen (such as Serial Monitor). However it still happens. After adding resistor for the MOSFET pin it didn't burn another chip so far since my last post. Could you check if you get the same short circuit between GND and 3V on the teensy? Is not so maybe we are experiencing different problem.

    I think a Serial conflict may highly likely cause program being burnt wrongly (especially for Arduino using serial to upload .hex), but Teensy since using special USB commands, it shouldn't be affected by Serial Monitor. Though I haven't dug into it too much.

    Regards,
    Bai Shi

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •