Teensy 4.0 Brushed Motor and Mosfet get hot

Ich guck lieber erst im Keller, Morgen, ob das Ding wirklich noch da ist... ich hab inzwischen den Verdacht, dass ich es beim letzten Umzug vielleicht doch entsorgt habe :(
'd better look in the basement first, tomorrow, to see if the thing is really still there.... in the meantime I have the suspicion that I might have disposed of it during the last move...
 
Ich bin gespannt, was du da historisches bei dir im Keller finden wirst 😄

Nonetheless, I'm still curious what you think of my last questions - Merging two pins together and synchronizing the PWM signals. At first glance this might sound completely stupid, but in the end it is often normal to run things in parallel in order to increase performance. I still have a few pins free 😂
 
I have one idea how to check whether the low voltage is the reason for the heating of the driver in your situation or not. Just power the circuit from five volts and see the result :). Even if you don't have a power supply, you can always use a phone charger, I think it's not so difficult to find a charger that can drive 1.5-2 amperes, and you will immediately understand whether the low voltage is the cause of overheating or not.

What about connecting two pins of a microcontroller together, this is usually considered a very bad idea. If you do not go down in your program to the level of the microcontroller's registers, then it is impossible to guarantee that both pins will switch simultaneously, respectively, at the moments of switching, the current from one output pin will flow directly into the other output pin of the microcontroller cause its heating or damaging GPIO driver.
 
Thank you khtos, that's a good idea. I am wondering why haven't done it actually, because I had a good power supply connected and could have easily tested it. I remember going down to 3.5V but not higher ^^ Maybe I was focussing on other stuff at that moment, very strange 😄 I should have done that first.

Yes, I assume that if the PWM frequency were not almost perfectly the same, it would not work at all, because the current always takes the path of the least resistance. I think I have read that someone did this with an Arduino and did not require much intervention on the registers or timers.
On the other hand, I am not very interested in playing with the Teensy registers, firstly I'm too stupid and secondly it would probably not be a professional solution.

Anyway have a nice Christmas Time everyone and thanks for your help!
 
... I had a good power supply connected ...
Just do not forget that teensy 4 can only accept 3.3V at its inputs and only up to 5.5V at the power input, connected to the micro-USB.

I burnt my first microcontroller in such a way many years ago. Just increased power voltage from 5 to 12V forgetting that controller is connected to the common voltage bus. :)

And you too have a nice Christmas... and successful finishing of the project!
 
OK, made a setup with a 8520 dronemotor on a Teensy 4.0 using an FFD3706 FET.

IMG_20211223_160617.jpg

Uploaded this code:
Code:
void setup() {
  pinMode(6, OUTPUT); 
  analogWriteFrequency(6, 20000);
  analogWrite(6, 128);
}

void loop() {
}

Pin 6 of Teensy 4 connected directly to the gate of the FET [green wire].
10K resistor from gate to source [= GND].
Drain of FET connected to motor negative side [blue wire].
Schottky diode over motor pins.
Motor positive side connected to an external power supply at +3.7V. Current consumption 220mA.

Hooked up a scope probe like this:

IMG_20211223_161019.jpg

Scope screen of rising & falling edge on FET gate using alternating trigger:

SDS00052.png

Horizontal scale 500ns/div.

After 15 minutes, the motor runs at 32°C, the FET runs at 22°C [= ambient + 1°C]. Using a Fluke IR thermometer.

I'll leave the setup on my desk in case you want me to measure more stuff.

Paul
 
Scope screen when the external motor voltage is switched off:

SDS00055.png.

So the ringing of the falling edge is indirectly caused by the motor current. I suspect the GNDs are not great at my setup with these wires & breadboard.

Paul
 
Thanks for testing Paul, I appreciate that. Also that you leave the setup for me :eek:

It seems to me that we were both busy again before Christmas. I have just come out of my garden shed and did some tests with the oscilloscope that arrived today.
It does seem quite useful, at least for the money. In any case, I could measure something. Before I interpret something wrong, I am curious what you think about it.

By the way, the Mosfet gets hot just as quickly at 5V as at 3.5V. I hope the mosfet is not broken already. My thermal camera is currently on loan, so my lips were used ;)

Here are my test pictures:
(Measurements were taken directly on the motor cables under load)

3.6-5V.jpg


And here the comparison at different frequencies
5khz-and-10khhz.jpg
 
If my measurements are in the wrong place, please just tell. Then I'll do the whole thing again. Maybe I should have measured right at the gate like you did Paul...
 
OK, made a setup with a 8520 dronemotor on a Teensy 4.0 using an FFD3706 FET.

View attachment 26979

Uploaded this code:
Code:
void setup() {
  pinMode(6, OUTPUT); 
  analogWriteFrequency(6, 20000);
  analogWrite(6, 128);
}

void loop() {
}

Pin 6 of Teensy 4 connected directly to the gate of the FET [green wire].
10K resistor from gate to source [= GND].
Drain of FET connected to motor negative side [blue wire].
Schottky diode over motor pins.
Motor positive side connected to an external power supply at +3.7V. Current consumption 220mA.

Hooked up a scope probe like this:

View attachment 26980

Scope screen of rising & falling edge on FET gate using alternating trigger:

View attachment 26981

Horizontal scale 500ns/div.

After 15 minutes, the motor runs at 32°C, the FET runs at 22°C [= ambient + 1°C]. Using a Fluke IR thermometer.

I'll leave the setup on my desk in case you want me to measure more stuff.

Paul

Without a load or propeller, the engine doesn't get hot here with me either.
 
The big difference between your and my measurements is that you measured across the motor and I measured the voltage on the gate of the FET.
I did so because I expect the FET to not be driven fast/fully enough with the result that it gets hot.
Could you measure the gate voltage and the drain voltage [with respect to GND] as well using your scope?

Paul
 
Ah, you're using a propeller as load... that probably explains the 10x higher current figure on your powersupply.

Paul
 
The big difference between your and my measurements is that you measured across the motor and I measured the voltage on the gate of the FET.
I did so because I expect the FET to not be driven fast/fully enough with the result that it gets hot
Could you measure the gate voltage and the drain voltage [with respect to GND] as well using your scope?

Paul

Sorry, I should have done this^^ Now I'm baking cookies 😄 I'll do it afterwards sure
 
It looks like you have the MOSFET driver (or MOSFET itself) out of order. Judging by your oscillograms - the MOSFET does not close completely. When the PWM turns off the MOSFET, the voltage on the motor should be either negative or zero, but as we can see it is positive in about 1 volt. This means that a current flows through the engine and, accordingly, through the MOSFET, with 1 volt is falling on the engine and 2.7 volts on the MOSFET. So it is warming up. Of course, in order to make the correct conclusion, it is needed at least to see the voltage at the gate, but it seems that the driver does not turn off the MOSFET.
 

Attachments

  • Picture.jpg
    Picture.jpg
    84.5 KB · Views: 23
It looks like you have the MOSFET driver (or MOSFET itself) out of order. Judging by your oscillograms - the MOSFET does not close completely. When the PWM turns off the MOSFET, the voltage on the motor should be either negative or zero, but as we can see it is positive in about 1 volt. This means that a current flows through the engine and, accordingly, through the MOSFET, with 1 volt is falling on the engine and 2.7 volts on the MOSFET. So it is warming up. Of course, in order to make the correct conclusion, it is needed at least to see the voltage at the gate, but it seems that the driver does not turn off the MOSFET.

Thank you, that does indeed look strange... I will replace both and do it again
 
I'm sorry it took me some time because after changing both the driver and the MOSFET it stopped working. The engine only turns for a short time ... I've had that several times and indicates a gross error somewhere ^^
Then I swapped both again. After that I measured directly at the motor again, to see if it was out of order. Here are the results:

New-Mosfet-and-Driver.jpg
 
If I'm not mistaken, it looks like the FET is not fully driven open. I would expect the negative pulse to be near GND. Now I see, especially on the righthand image, that the drain is at 1V. 1V x 1.5A = 1.5W being dissipated during the FET ON time.

Paul
 
I just measured the drain to GND voltage on my setup and it is ~25mV during the ON time. So the FET is fully driven open.
If you want I can mail you 2pcs FDD3706 for experimenting.

Paul
 
Back
Top