# Driving a Motor with STM32 | Quick Tutorial (Drone Example using GaN Controller)

## Метаданные

- **Канал:** Robert Feranec
- **YouTube:** https://www.youtube.com/watch?v=39oh-85G_m0
- **Дата:** 23.04.2026
- **Длительность:** 55:31
- **Просмотры:** 5,196

## Описание

Easy way to generate STM32 code to drive a motor. Thank you very much Federico Unnia

Links:
- Federico's LinkedIn: https://www.linkedin.com/in/federico-unnia-830a931b5/
- EPC website: https://epc-co.com
- Github with files: https://github.com/epc-co/MotorDrive-RefDesign-Firmware
- FEDEVEL courses: https://fedevel.com/courses

Chapters:
00:00 What is this video about
00:47 Demo
05:34 Motor Control Workbench
10:14 Starting a new Motor Control Project
12:47 Adding a new motor
20:08 Generating the code to control a motor
22:47 STM32CubeIDE - opening project and flashing the code
26:26 Using Motor Pilot to test the code
29:30 About GaN
31:32 GaN - PWM Frequency increase advantages
34:30 GaN - Dead time reduction advantages
40:17 Power boards and GaN Transistors
44:39 Schematic of Power board
48:56 About EPC Company

------------------------------------------------------
(C) FEDEVEL by Robert Feranec
https://fedevel.com

## Содержание

### [0:00](https://www.youtube.com/watch?v=39oh-85G_m0) What is this video about

In this video, we are going to have a look how we can control motors with STM32 and again inverter. And it's going to be some kind of step-by-step tutorial. So, if anyone would like to control motor with STM32, this video will give you the idea how to do it. First, we will have a look at very simple demo. Then, we will talk about how to generate the firmware for STM32. And then, we will talk about the hardware what we are using. Is this what we are going to talk about, Federico? Oh, yes, Robert. We are going to see it live right now. Okay, perfect. So, let's start with the demo. Uh You can explain a little bit what you

### [0:47](https://www.youtube.com/watch?v=39oh-85G_m0&t=47s) Demo

can see in the camera and what we have on the desktop. Sure. So, in the camera, you can see that uh inside this safety cage, this is the safe cage that we use to uh operate the motor. The motor is um is a big uh agricultural drone motor. So, it needs a little safety. And it is directly connected to an EPC GaN inverter designed for high current uh drone applications and a control board which hosts the STM32 controller. Okay. The inverter is as I said, connected to the motor. Then, there is a DC power supply connection to the power supply which is here on the bench, which is out of the camera, but it's present. And of course, to the control board. Well, the control board is simply connected via an USB cable to my PC. And we will set the motor reference speed using the ST Motor Pilot web application that you can see in the shared screen. Mhm. It's a very user-friendly and um useful tool to operate the motor in whichever condition that are needed. Mhm. And this provided This is uh part of STM development environment, yeah? So, people can just download this and they can use it to control the firmware what we will generate a little bit later. Yes, it's it's a completely free and very user-friendly uh tool that can be downloaded from ST website and it's part of its workbench motor development kit. Mhm. Okay, so let's have a look. Let's see how the motor spins, but first of all, we need safety for my ears. First, we will set a low reference speed, 100 and 1,000 and 500 rpm. And then, we will execute a ramp speed of 1 second from the speed which will be 100 1,500 to the very high speed which is 3,500 rpm. Wow. Now, I know why you need the cage. — Yes, and also the I thought Yeah. And so, once this tool in this tool, you the user can set a reference speed and the control loop of the controller makes the the speed of the motor follow the reference. Mhm. And the measured speed the mechanical measured speed is also reported both in numbers Mhm. here in measured in rpm and also on the the tachometer. Mhm. As a graphical uh say what Mhm. Okay, so last time I need to say we had call before, so I know approximately how this works and I would like to explain a little bit more what is behind this application. So, basically uh as I explained, in the next step, we will generate the code for the STM32 microcontroller. And this code can talk to this application. And basically, inside of the code, when we will be setting up the code, then I believe you can there specify some parameters like maybe what kind of sensors you have uh how you connect the motors or something. And that's uh basically how these controls which are here know what to do and where to read the sensor from the microcontroller, correct? Yes. Okay. So, what is the first step when we are developing this kind of application? When we would like to control the motor, what do we need to do?

### [5:34](https://www.youtube.com/watch?v=39oh-85G_m0&t=334s) Motor Control Workbench

So, the first step is to open the Motor Control Workbench environment. — Mhm. Again, this is from ST, yeah? Yes. Which is part of the software development kit for motor control. Mhm. There are many tools. One we already saw it is the Motor Pilot which is the uh the tool to operate the motor once the firmware is produced. — Mhm. And there is the board step manager and board designer. Mhm. Which are the tools that can be used to describe the boards, so to create the boards in a software let's say in the software environment. Mhm. I have already — [snorts] — prepared them because the both the control board is already provided by ST and the power EPC and is available online. Mhm. So, we'll jump directly to what is called the project. A project is um a specific motor project which includes the control board the power board and the motor. Mhm. Let's open it. So, the project that it's uh is made as let's say kind of a block diagram Mhm. where as you can see, there is on the right hand side, there is the motor. Mhm. And in the center, there is the three-phase inverter. Mhm. And all the blue blocks can be clicked and they can um all the sensing and all the control parameters can be set by clicking on these blocks. For instance, let's have a look at the PWM generation. Mhm. In this part of the configuration, it is possible to set the operating PWM frequency of the inverter. And in the case of the GaN inverters, they can operate at a higher frequency, so I've set the frequency to 80 kHz. And the dead time to 75 nanoseconds. It could be actually be also a little lower. Mhm. All the other parameters that can be seen, for instance, the motor control the microcontroller pin mapping they can be seen from this software, but they cannot be modified because all this information is found in the file which is which reports the description of the hardware. Mhm. Which is provided by the manufacturer. But also in the in that case, it's very easy to create a new board if the user needs it and there is a very detailed guide provided by ST which is available online and whose link is also reported there in in the description. Mhm. Uh So, I have a question. If someone would like to completely uh replicate what we are doing here, can they download what they need to download? Where are the files what they would need to download? On GitHub. On your GitHub? Yes. Uh can we show it then later where they can download it or we can show it now? Uh yes. Let me check. Oh, you have even like Altium files for your boards. Yes. Mhm. And design. Oh, okay, I see. Okay, so these JSON files, these are the files which describes the board. Yes. If they are using different kind of board, then they need to find this kind of file for this specific board what they are using, yeah? Yes. Okay. And then when you start new project, we can go back to the previous software. Yeah, so when you start new project, I guess this will be completely empty. No, actually let's try I show you.

### [10:14](https://www.youtube.com/watch?v=39oh-85G_m0&t=614s) Starting a new Motor Control Project

When you start a new project uh test project There are a certain amount of parameters that can be — [clears throat] — set. The first is one or two motors and this is obvious. And also the driving algorithm. In general, it's useful to use a field oriented control algorithm, but it's also possible to use a six step algorithm. And then the last thing is that the hardware mode can be in three ways. The first one is the one that we are using and that I described, so where there are three key components, which are the motor, the controller and the power board. While it's also possible to use the inverter configuration in which uh there is the motor and the control board and the power board are integrated onto the same board. Mhm. And so in that case it's uh mhm It's just you have two pieces collapsed into one. While the pack uh is um So we use this. — mode. So in this case with which you can see on the left that in the case of modular we have motor, power and control. Mhm. In the case of inverter, we have motor and inverter. In the case of the pack is a is an already preconfigured pack, but it's less flexible. So today we are going to to see the more the most general configuration which is the modular. Mhm. The motors can be described as well with a JSON files. I have already some motors which are were already described and this one is from a manufacturer called T-Motor. You look well. Second. In the case of the motor, the parameters that have to be described are the pole pairs, the back EMF constant, the nominal voltage, the nominal current and also the motor parameters like uh uh the winding resistance and winding inductance. Mhm.

### [12:47](https://www.youtube.com/watch?v=39oh-85G_m0&t=767s) Adding a new motor

How can you add a new motor or It there is like only infinite number of motors, no, in the list? No, no, yeah, it's not so Here it's possible to import new motor. Oh, this is where you put the JSON file. — new JSON file. Okay, okay. Otherwise, it's possible also to create a new motor when there is a project and we will see it later. Mhm. In the case of the power board I have already a JSON file describing my hardware, so I just type it. And you can type it in the search bar. This one is called 9186. And this is a custom board. And I select it. And last one is the control board and in this case I'm using the nuclear. Almost all or all of them or all of all the control boards are present and in this case we are using a G431 controller. Mhm. The G431 is a the G4 is the family and this is nuclear board. And in this case I click okay. Mhm. And now Oh. — a new project. It's almost finished. — And that is as in the previous case I have all the blocks from the power supply settings, so for instance I know that my power supply is 48 V and limited to uh 50 amps. So I can click here and say that the maximum current is 50 and the bus voltage is 48. Mhm. Here the software is suggesting concurrently to the power supply info the maximum rated current and voltage supported by the board and the maximum [clears throat] current and voltage supported by the motor. Mhm. As I mentioned earlier the motor a new motor can be set directly on the software. So in this case I have this motor, but I can create new motor which is uh custom new motor. Mhm. And the description is uh to show a new [clears throat] motor creation. I can show choose the the magnetic structure, the pole pairs the all the other parameters. Also mechanical parameters such as inertia can be set. The maximum application speed and if the motor has sensors like Hall effect and Hall effect sensor or a quadrature encoder. For instance, I have Hall effect sensor with 120° displacement and zero placement electrical angle. When I click save the motor has been saved successfully and a new JSON file is uh automatically created and saved onto my PC. — Oh. Cool. So basically you use some kind of existing motor and you modify it or adjust it to create new motor which you can then use. Yes. Mhm. Now it's okay. And now later of course it's possible to select the current sensing method, so for instance the um So how does it know you have this current sensing because this is what is specified in the power Yes. board specification. All the parameters that are associated uh with the board are described in the board designer. Mhm. For instance, in this case there are um uh three shunt resistors with uh instrumentation amplifiers to read the current. Mhm. And the as in the case of the PWM generation the motor the microcontroller pin mapping is reported here even though it is not possible to modify it. — Mhm. And here there are also other functions such as the overcurrent protection which which is described in the JSON file and cannot be modified, can only be disabled. — Mhm. So if a user for instance needs to do tests above the overcurrent protection limits because he was he wants to test uh the functionality of the board above its maximum operating condition then it um it can just disable it. Mhm. Can you show me just temperature sensor, temperature sensing? I'm just curious. Yes. Sorry. Temperature sensing. Yes, yes. This one? No, the other temperature. — Temperature? Yeah. The temperature sensing can also There are several kind of uh features. There are over temperature protection, so it some thresholds can be set to protect by over temperature. And there are the microcontroller pin to which signal of the current sensor can be set in the JSON file. Mhm. And but um the sensitivity of the sensor can be also modified here. Mhm. Okay, I understand this. So uh we can go back to your original project and then we can compile it and you know, show what to do next. — Sure. Okay, sorry. No. So if someone would like to download your original project, it is also on GitHub. C- Can you say that again, please? I mean, if someone would like to download your original project with all the settings correctly set up, they can download it from your GitHub. Yes. Okay. We will put it there. And so for instance, this is my project. Mhm. In this case I have changed my current sensing to a different topology which is insulated current sensors but the meaning is the same. And I can I have set the PWM frequency to 80 kilohertz. This dead time is 75 nanosecond.

### [20:08](https://www.youtube.com/watch?v=39oh-85G_m0&t=1208s) Generating the code to control a motor

nanosecond. And then from this motor control workbench application it is possible to generate all the files. Okay. So, I click on generate the project. There are a certain parameters which are which can be set so which is the STM32 CubeMX version to address. They are already set to be the correct one once you download the firmware all the software package and then you just click on generate. This is so Cool. after generating all the files. So, basically this will create the basic starting point with all the functions what you need to control your motor. Yes. Wow. — [sighs] — Sometimes it's it gives errors but still generate the files. It happens often. But some errors can be let's say neglected. As soon as you see files appearing. I will show you. Okay. This can save a lot of time. What do you mean? Like if you don't have to write everything from scratch it this — Ah, yes sure. The very useful thing about this tool is that all the files are generated automatically. And all the your custom parameters can be set with very easy interface. Mhm. So, once the there is the generation of all these files, header files and C files then it means that generation is okay. Oh, I can see main. c. That's the file that is the most important file. Yes. Where you put your application. And then what will happen once this is generated? We will open it in the Cube and then you can compile it and flash to your STM32 board, correct? Yes, that's correct. So, this okay, it's it says completed with errors but because there were some errors in the beginning but the files are okay. — I click close. And this is done.

### [22:47](https://www.youtube.com/watch?v=39oh-85G_m0&t=1367s) STM32CubeIDE - opening project and flashing the code

So, now I switch to STM32 Cube IDE Mhm. which is the — [clears throat] — the program that we use to first build all these files that were generated and then flash them on the firmware. To open the project I need to click on file, open projects from file systems — Mhm. and then choose the correct directory. The correct directory is the folder where the file was generated. In this case it was this folder here and then I need to click STM32 Cube IDE folder. Mhm. Click on finish. And to to check that the I have correctly opened the project I need to see the name of the project and this light blue square box with IDE inside. Here I see I can open all the menus and I see that in under the includes there is a all the path with the folders. And here for instance I have all the header files. So, for instance the drive parameters that I previously set can be seen in the drive parameter. h file. For instance the PWM frequency which is reported at this row 72. Here there is a definition of the PWM frequency which is 80 kilohertz. Mhm. For instance if I turned this into 90 — [snorts] — You should not do this but it's possible Mhm. to also manipulate all the code. — Mhm. But ideally maybe you would like to change it in the other tool and then generate everything again. Yes, that is let's say the safest way but it's uh Let's say that now the files are not closed. They are open once they are generated. — Mhm. Then I need to click on the project title and the hammers symbol builds and finds possible errors in the files. I'm curious. In this case It's let's say that since this is uh These are files are automatically generated by the code so it's very unlikely that there are errors. Then now in this case now I have an executable file that can be downloaded on the microcontroller. It can be downloaded either from this workspace by clicking on the bug symbol. You see from here that now it's connecting to the debugger which is writing code on the microcontroller. I see LEDs flashing. Yes. And at the end so when all of this is done we can Now the the programmer is in debug mode so it's communicated with the with microcontroller. If we want to use

### [26:26](https://www.youtube.com/watch?v=39oh-85G_m0&t=1586s) Using Motor Pilot to test the code

the motor pilot, the first tool that we used to run the motor we now have to stop this by clicking on the terminate button. And for instance we can now go back to this — [clears throat] — to this program which is the motor pilot and connect to the microcontroller. And I see again that there is a that I'm correctly that the computer is correctly communicated communicating with the with the microcontroller. So, now — this I can lower for instance the DC voltage to 37 volts. Sorry, 37 volts. Oh, yeah. You can see it dropped. Yeah, yeah. And the bus voltage has dropped from 48 to 37. So, our firmware is working directly on the board what we just generated. Yes, it is. Can just for fun can we try to run the motor? I don't know if it's going to run. Sure. — And put — [snorts] — back on. — Perfect. This is really cool. Uh okay. So, these are the steps how to write the firmware for the motor. What about the hardware? So, I know you prepared the kind of short presentation because there are more ways how we can control the motors. But in this video we are going to specially talk about the GaN transistors because that's basically what your company is also focusing on, correct? Yes, our EPC provides gallium nitride GaN devices both discrete and integrated circuits which can only be allowed in a model monolithic uh device by GaN technology. The advantages of GaN devices in a motor drive applications is that the dead time can be set to a short to smaller values and the PWM frequency can be increased. And there are benefits both on the inverter and on the motor side. Mhm. Let's see a very short presentation on — Yeah, yeah. GaN technology in general. — I would like to say don't take this as a presentation. This is something to learn something new because maybe in your new applications you would like to use these kind of transistors because they are super special actually. I've seen many people are actually using these transistors in the new applications. Mhm. So

### [29:30](https://www.youtube.com/watch?v=39oh-85G_m0&t=1770s) About GaN

these devices can be used in a variety of different applications from uh the power what we call the power stage so the GaN integrated circuits can be used in very small um motors uh like the one present in the hands of the humanoid robots, but can also you know also be used in very high current applications like drones and small vehicles. These are some of EPC reference design boards. So — is the board what we are using here. This is the board that we are using, EPC9186. But there are also others and uh they can all be found uh on EPC website. And so usually GaN is uh associated with a high frequency operation and [clears throat] motor drives are operated at very low frequency with respect to other power converters [snorts] such as DC-to-DC converters. So the question is uh which are the benefits of GaN technology in motor drives? Is there a benefit? And the answer is there are benefits. And for instance the say that this um the benefits are both on the motor side and on the inverter side. On the inverter side we have a much faster switching which allows to uh reduce dead time. — [snorts] — And the increase of the PWM frequency can uh can allow to have um a smaller DC link capacitor, so to make the overall size of the inverter smaller. Mhm. Let's have a look at these two aspects.

### [31:32](https://www.youtube.com/watch?v=39oh-85G_m0&t=1892s) GaN - PWM Frequency increase advantages

So the reducing the PWM frequency results in a smaller ripple in the current. For instance, on the left-hand side we can see the uh hypothetical current operated at 100 kHz and uh which has uh and another current which is operated at 10 kHz. So they both have the same mean value but the ripple is much bigger in the 10 kHz case. And this is bad for the motor uh because the motor would like to have a perfectly sinusoidal excitation. And uh the higher is the PWM frequency, the closer is uh the waveform to a pure sinusoidal excitation. We'll see that in the next So in this case there is on the left-hand side there is a 20 kHz um operating uh inverter which is generating a sinusoid which is a little bit distorted. And there is a very high ripple and band uh close to the peak. Mhm. While on the right-hand side the same sinusoid because the RMS value of the two waveform is the same but in the case of the 100 kHz inverter the sinusoidal waveform is much smoother. And the motor likes it more smooth than with a higher ripple. — Mhm. And this is the effect of increasing the switching frequency on the motor side. But on on the inverter side there are also benefits because once the switching frequency is higher the the dimension of the input filter can be shrunk because the in the case of lower frequency inverters usually electrolytic capacitors are used and sometimes also in the inductive filters in the input while once the switching frequency is increased um it is possible to use only ceramic capacitors because very few capacitors are needed which are in general much smaller. And this is the case. So the typical field the typical um uh DC link that is using MOSFET inverters is with electrolytic capacitors while the typical the input filter which is used for GaN inverters is with ceramic capacitors.

### [34:30](https://www.youtube.com/watch?v=39oh-85G_m0&t=2070s) GaN - Dead time reduction advantages

The second aspect is the dead time reduction, so since uh GaN devices have much faster commutation and they have zero reverse recovery it is possible to reduce a lot the dead time. And again the dead time is a long dead time is responsible for generating harmonics into the motor. And they can be seen as discontinuities in the modulation of the motor. So then so the dead time can we explain a little bit more what it means? It means nothing is switched on or off. Yes, the dead time is um uh is uh an amount of time that um needs to be present when one of two legs of the transistor is turned off and the other one is turned on. So in switching power converters we only have we always have a half bridge, so two transistors and they can never be driven concurrently. So one is on while the other one is off. So the dead time is the time that passes when we switch off one of the two transistor and we turn on the other one. — Yeah, so it's basically when we are not delivering any energy. Yes. That's exactly the case. So the first thing is that — [sighs] — since we are not um we are not using the semiconductor because the energy is flowing through the body diode or of the MOSFET or the equivalent diode of the GaN FETs because GaN FETs don't have a physical diode, but they have reverse conduction. And this is a region where the semiconductor is not best because it has a very high voltage drop compared to when it is on. So the best thing would be to reduce the dead time to the very minimum so that we can exploit at best the semiconductor properties. But in the case of especially IGBTs, but also MOSFETs the dead time needs to be kept quite high. And this results as a discontinuity in the modulation frequency. And the frequency can be physically seen on on the waveform. Here in the yellow trace is the modulation index and also in the phase current. So in the right-hand side the spots the spots that are circled highlight all the discontinuities while on the right-hand side we have a much smaller dead time and we had don't have any discontinuities uh in the modulation and the sinusoidal waveform is clean. Mhm. And this can also be seen on the spectrum because the these discontinuities in the modulation frequency generate harmonics. In particular, they generate the fifth and seventh harmonic in the current and the sixth harmonic in the torque. So in this case uh this was measured. So there is the the magenta or pink waveform is the spectrum of the torque and there is an evident spike on the sixth harmonics of the of the PWM frequency when the long dead time the 500 nanosecond dead time is used. While there is a 21 nanosecond dead time that harmonic is just not present on the spectrum. Mhm. And this is the a consideration related to the to the previous point which is what the switching frequency. On the left-hand side there is the low switching frequency and high dead time waveforms and we can see that the input current has a very high ripple as is the which is the one in red. There's also ripple on the input voltage which is in blue despite there is a very big filter which is composed by electrolytic capacitors and also an inductor. While on the right-hand side we have a 100 kHz switching frequency and a 21 nanosecond dead time. We have a very low input current ripple compared to the previous case, a very low input voltage ripple and we don't have the same filter. We have a much smaller filter composed only by two ceramic capacitors. Big difference. So this was the end of, let's say, the uh theory part associated to GAN. Maybe we can have a look at uh a closer look at the hardware on our So, let's look at uh the schematic of this board. So, first I think we can go to your website, so everyone can see where they can download all these materials. So, there are pages both dedicated to the power boards, like this one. This

### [40:17](https://www.youtube.com/watch?v=39oh-85G_m0&t=2417s) Power boards and GaN Transistors

one is a EPC 9186. There are three versions. One is uh with um with an older device, which is EPC 2302, and there are four of them. And we have two new version, which is uh EPC 9186 HC2 and EPC 9186 HC HC3. These use, respectively, two instead of four and three instead of four devices, and they are newer devices. So, three of the new devices are equivalent to four of the old devices. Mhm. I would like to point out on the picture if people are expecting black chips, then it's not black. This is Some of them they are like direct silicon, or how does it work, this? Yes, so um from You mean how the devices are — yeah, the component, how it looks. It doesn't have any package. Does it have package? No. Yes, these are package parts, and they are QFN parts. Oh, QFN. So, why they are silver? — [snorts] — The because it's the the exposed die. So, let's have a look, for instance, at one of the devices. Okay. Oh, yeah. Um are flip chip devices, so there is um this is GAN on silicon devices. So, there is a substrate of silicon, then there are layers of aluminum gallium nitride and gallium nitride that are grown to make the device. And then the device is uh the wafer is chopped into pieces and flipped back onto the lead frame of the QFN component or of the QFN package. But in the middle there is that the silicon, yeah? Yes, so the exposed part is the silicon substrate. And the GAN is between the silicon substrate and the lead frame of the QFN package. And the reason why it's silver is because of the die is exposed. Mhm. And this is very important for top side cooling. Because while the most of the MOSFETs have uh um plastic on the top and they are good for bottom side cooling through the PCB. GAN devices both are good for the PCB cooling because the GAN is uh connected to the lead frame, which is connected to the PCB. So, um PCB cooling is still quite effective, but there is also top side cooling, which is even more effective because the semiconductor can be connected directly to a heat sink using a thermal interface material. It's a thin thermal interface material. Okay, let's continue with the board. I interrupted you. Yeah, it's okay. And uh there are certain amount of support files, like the schematic of the board, the Gerber files in case someone wanted to replicate the board, the bill of materials. There are all the feature products, so the EPC parts, which are mounted on the boards, are reported here, and all the control boards that are compatible with this board. And there is also a quick start guide, which is a PDF document that uh Let's go to the top page, which describes how the hardware is made. I was telling about the fact that this board comes in three different flavors. The original board has four of EPC 2302, which are uh it's like the older parts, while the new two boards, which are HC2 and HC3, have respectively two devices in parallel and three devices in parallel of EPC 2361, which is the lowest on resistance uh GAN transistor that can be currently bought Okay. We can have a look on the schematic now. Yeah, sure.

### [44:39](https://www.youtube.com/watch?v=39oh-85G_m0&t=2679s) Schematic of Power board

So, the schematic has uh uh been done with Altium Designer and follows an approach which is similar to a block diagram representation. So, there is the first page of the schematic contains all the sub circuits. So, there is the gate driver schematic, the power stage schematic, the um schematic where there are the phase shunt and the voltage sense, um the schematic of the overcurrent protection and all these sort of things. So, it is um a hierarchical schematic. And it is possible to use a a feature of Altium Designer, which is the repeat block. So, blocks that are identical, for instance, in a three-phase inverter, all the gate drivers, all the legs, all the current sensing is repeated three times. So, the schematic is just made once and then is repeated three times. Mhm. Let's take, for instance, uh a look at the power stage. In this case, the power stage is composed by four half bridge in parallel. So, there are four devices in parallel for on the top side device and the high four devices in parallel in the low side device. And then it is possible if the board with just three devices is wanted, then we just need the bill of materials change to mount three of them. Each of the GAN FETs has its own on and off resistance. This is very important for GAN transistors, and it is different with respect to MOSFETs. In the case of the GAN transistors, there are two resistors. One is used for turn on. Can be and it's used to um to bring uh the slew rate on the switching node to the desired value. And the other one is the off resistance, and this should be kept very low to switch off the transistor very fast. Interesting. And the in fact, the gate drivers that are compatible with gallium nitride transistors have split output. Their, let's say, regular gate drivers for MOSFET have a single output, which is high or low. While uh and the output is enabled by a P MOS and an N MOS. And the output of this uh logic inverter is just one pin. Instead, in the gate drivers for GAN, I saw it in We can find the driver, yeah. I'm curious what is it. Yes, the driver is present, of course. And it has, as I said, uh split outputs. So, for instance, this is a half bridge gate drivers with split output. So, there is the driver for the low side. This high side. And in the This is just a representation, but it's how it's made inside. There is an N MOS and a P MOS. And their outputs are separated. And they are connected to two different resistors, which turn on and turn off — [snorts] — Interesting. Who is manufacturer of this chip? This gate driver is for is made by ST. Oh, okay. But there are a lot of um other parts available on the market and indicated on I think also on our website. Okay. Or do we need to mention something else, or we covered everything? Uh I think we covered pretty much everything. Do you have something else in your presentation? No, the presentation is There are other things, but it's very long and, let's say, more associated to the company.

### [48:56](https://www.youtube.com/watch?v=39oh-85G_m0&t=2936s) About EPC Company

Okay. Still, we can say a little bit more about your company. So, you are focusing mostly on the transistors, correct? That's what you do. Yes. So, you see that there are some um As I mentioned, there are uh mainly two type of um — [snorts] — uh GAN parts, which are the integrated circuits and the discrete transistors. The integrated circuits have on the same substrate, they both the logic parts and the power transistors. So, let's have a look for instance at uh the EPC23102, which is the first monolithic uh um part which was uh provided by EPC. And let's have a look at its block diagram. So, everything that you see inside the blue box is integrated monolithically on a single chip. So, it's not a core pack. Mhm. It's all on the same silicon substrate. — So, you don't need controller and the transistor uh chips, yeah? Everything is in one chip. No, you still need a controller to provide the logic signal. You don't need to have a gate driver and two transistors. Okay. — And the gate driver and the two transistors are all in the same package. — I understand now. In fact, as you can see, there is uh the power transistor for the high side, low side, the gate drivers, and the input logic. So, the interest thing it's interesting thing about these devices is that you just need to provide low power logic signals uh that k- uh that come out from a microcontroller, connect them directly to this uh to this chip, and then you have a switching node. Mhm. This VIN is connected directly to for instance 48 V. Mhm. And then the switching node is correct- connected directly to the motor. Mhm. And they follow a logic in power out logic uh concept technology. Uh so, you uh these devices are capable of taking uh um a digital signal and directly transforming into a power that goes to in this case to a motor, in the case of uh other converters to magnetics. Mhm. I understand. So, uh what are the other applications of uh these transistors? Motors and I know they are uh used a lot in power supplies, no? Yeah, sure. So, I can show still on EPC website we have a certain amount of applications. We have seen it uh in solar applications both for uh maximum power point trackers and inverters. We have them in motor drives. We um GaN is also very suitable for space application because it's intrinsically radiated radiation hardened devices. So, it's used on many converters in space applications. And of course there is DC to DC applications, especially for um applications where you want to reduce a little the size of the magnetics to make more compact components. We have made uh AC to DC applications. — USB chargers, no? No, uh USB chargers, but we have made um a reference design for uh um servers because when GaN is used in multi-level structures, it even though they are 200 V limited devices, they can be used to provide a 400 V bus in uh in server application. — Mhm. No, I only mentioned my uh the USB chargers because I think uh now when you buy USB-C charger, often they say GaN. Yes, there are a lot of USB chargers made with a GaN — [sighs] — GaN parts. And also we also developed reference design for audio amplifiers and for lidar, which are especially mostly used in which actually GaN is state of the art for lidar. Uh okay. I think this is everything what I wanted to ask. I'm especially very happy uh to learn about the STM support for the firmware development because I think that is very useful. Uh okay. So, do you have any uh other topics what we should cover in this video? Next time we could cover power supplies. So, this time we covered motors. Next time, if people are interested, leave comments and we can do maybe video about power supplies. Yeah, sure. Okay. So, thank you very much, Federico, for this uh tutorial and all the explanations. Thank you, Robert. And thank you to all the viewers. That's all for this video. I hope it was helpful. If you would like to learn more about electronics and board design, check out our online courses. You will find everything important there from basic board design up to advanced board design and high-speed PCB layout. We have courses in Altium, Cadence, KiCad, and also courses covering many different topics. For example, FPGA, EMC measurements, and so on. Visit our website at federeal. com. Thank you very much for watching and don't forget to leave your comments. See you in the next video. Bye.

---
*Источник: https://ekstraktznaniy.ru/video/51815*