What are the typical causes of frying a Teensy 3.6?

Status
Not open for further replies.
I'm working on a custom PCB for a Teensy 3.6. It is a robot controller with various voltage regulators on board, a circuit for controlling Dynamixel servos, motor controllers, xbee connector, sensor connectors and so on. All the various features work fine, but several times now, I've killed the Teensy 3.6 and I can't figure out why. The Teensy just becomes unresponsive and has to be replaced.

What are the typical causes for killing a Teensy?

I've searched for and can't find any problems in these areas:
-I'm providing good 5V power to the VIN pin via a 5V 1A voltage regulator.
-I've checked all the pins with a multimeter. None are receiving high voltage (above 3.3V) (at least according to the design or when I'm measuring them).
-I've not measure the current draw on my pins, but in my design, I don't see anywhere that I'm pulling too much current through a single pin or the overall board. I'm powering the Xbee radio and a small current sensor through the 3.3V line on the Teensy, but that's it. All other components on the PCB are powered directly from the battery, not through the Teensy.
-I've confirmed that all the devices I have connected say they are 3.3V tolerant or work with 3.3V signals.

There is one area of possible concern that may or may not be the cause. I am controlling Dynamixel servos using half-duplex on Serial1 (using a modified version of KurtE's excellent BioloidSerial library). The Teensy is sending out a serial TTL signal at 3.3V. Other folks on this forum have indicated that they've had good luck with that (even though the Dynamixel servos indicate they want a 5V signal). I do know the servos are working fine (at least until the Teensy dies). Here is a possible theory. Most people use AX-12 servos. Maybe those work OK at 3.3V. I'm using XM-430 servos (the new X-series). Maybe those don't work OK. Maybe my XM-430 servos are sending back 5V signals and it's burning up the Serial1 pin and killing the Teensy. Is that feasible? (It's strange, though, because the servos are working fine)

I have various ideas for tests and diagnostics, including trying out the 5V-tolerant Teensy 3.5 to see if that resolves the issue, but at this point, I just want to see if there are any typical causes for killing Teensy boards that I'm not aware of and should be looking for. It may have nothing to do with the Dynamixel servos or anything else I'm looking at.
 
Since you mention use of a voltage regulator, I wonder if there is a power on reset issue as others have experienced with an external power supply. Either try a good POR chip to provide a clean reset to the Teensy or connect a 10uF capacitor to the RESET pin. NOTE: The RESET pin is NOT connected to the PROGRAM push button. Also try to use just the Teensy on a USB cable and try the 'blink' routine.
 
A typical cause may be latch-up, when external circuits power up quicker than the processor.
I do not know if Teensy is susceptible to latch-up. You would have to investigate.

Inductive voltage spikes. You are driving motors and perhaps relays. Are protection diodes in place?

Not many people look at ground wiring but I would look at ground wiring. Is the teensy on ground between motors and the motor power supply. If so the teensy may be seeing some large ground bounce signals.
 
A further thought about your servos: in setup() before the pins are defined as outputs, the teensy pin will float up to whatever the servo provides. So I would suggest powering up a servo out of circuit and see what voltage they have on the input pin when not driven.
 
Status
Not open for further replies.
Back
Top