Custom Board: drivers and Mosfests


I am starting the design of a custom board to run SimpleFoc and among the many decisions that have to be taken, there is the one to decide drivers and MOSFETs.

I have decided tou use DRV8305 since it is used by many developments similar to what I want to achieve. My question arises when deciding which MOSFEts to use with this driver since I have no idea about which criteria use to take a decision.

The simplest approach would be to use the same ones used by DRV8305EVM and select CSD18540Q5B NexFET … but I would like to know what criteria are to be applied to make an informed decision and if someone could suggest an alternative that considers a better option.



To choose a FET I generally look for the following:

  • 10V+ to the rate I’m looking for
  • low Rds, the lower the better (this tend to influence price)
  • small gate charge
  • good enough Id for the application (keeping in mind package limits)

Less importanty:

  • Nice small package
  • Reputable brand; most times reputable brands will have better datasheets

These are the most basic parameters, the DRV8305 datasheet has a lot of information that will help you on this quest :slight_smile:

1 Like

How much current are you intending to drive, and at what voltage?

Based on that you need parts that fall within the DRV8305’s driving capacity (drive current & threshold voltage).

Those would be the principle parameters to limit your search, I guess.
Then its a question of optimising:

  • RDSon
  • Switching times
  • Cost
  • PCB space

Here’s some nice ones I found based on their data sheets (sorry I don’t have links but I just keep the PDFs):

  • NVMTS1D2N08H
  • BSC022N04LS
  • BSC040N08NS5
  • BSC0921NDI (dual channel)
  • CSD13385F5
  • FDWS86368-F085
  • IAUA120N04S5N014
  • IRF1404ZPbF
  • IRFS7437-7PPbF
  • IRFS7440PbF
  • IRL3803PbF
  • IRLH5034PbF
  • PSMN1R2-30YLC

There’s an endless variety of MOSFETs, it seems.

1 Like

Hi @runger, @David_Gonzalez

Thank you very much for the pointers to continue investigating. It is the first time that I embark on the development of a minimally complete board, the previous thing I did was a fairly simple hat for esp32 with a bunch of buttons and leds, and I am still a little lost.

I’m going to continue pulling the pair of threads that you have given me. Thanks again.


looking at drv8305 datasheet. Are you planning on using the voltage regulator output? The 3.3v version which can provide 50ma might simplify your board (no buck/ldo) but 50ma is worryingly low. If you are careful you could stay under this but it may require sacrifices e.g not using wifi or underclocking.

1 Like

Hi @Owen_Williams,

Thanks for the suggestion. I didn’t know DRV8305 had a buck/ldoavailable … although I don’t think 50 would be is enough. My project, if someday works, is intended to be a robotic actuator that can be networked via CAN and RS485 bus with other controllers to be externally driven using something like OpenCAN and Modbus. I don’t think that 50ma will give me everything but it can be interesting for other more minimalist projects :slight_smile:

DRV8323R will be a similar solution to DRV8305, except it is in a smaller QFN package, is higher voltage, and has a 600mA DC/DC instead of an LDO.


I think @David_Gonzalez has been hoping the drv8323R will become available on jlcpcb but it has had stock of zero for months

@Owen_Williams Noted. Unless you want to find the part elsewhere (TI Store, DigiKey) it makes things difficult. From JLC rep: “I just check[ed] the demand record in our internal system, It seems that the need is very small that our purchasing department does not have a plan for it currently.” May be a chicken & egg type of problem.

Hi @xcalplaxis,

Thank you very much for the suggestion, it is an interesting alternative. I am in a very early stage of development and still have the ability to change the MOSFET drivers. In fact, one of the designs that inspired me uses this diver :slight_smile: I will have to rethink it.

Captura de pantalla 2021-02-25 a las 19.36.49

I’ve been looking at the DRV8323R datasheet and it says on the DVDD pin it offers 30 mA externally … not the 600 mA it commented. I don’t know if I’m looking at a different datasheet or if they are offered on another pin.


Hi @JorgeMaker,

DRV832x is my personal favorite gate driver family.

DVDD is actually an additional simple LDO (3.3V).

The “R” in the DRV8323R part number indicates that an additional buck regulator is integrated (an LMR16006X). Take a look at the block diagram on page 29 of the datasheet.


1 Like

Thanks for the info :slight_smile: Some times i feel lost when trying to understand DRVXXXX’s product nomenclature, It is a bit cryptic. A graphic resource like the one that STM has for its family of microcontrollers would be very useful, they have more than 1800 different products ans is very easy to find what you need.

Hey @xcalplaxis,

Thanks for the insight :slight_smile: Is there a way to show our interest to jlc so that they will carry the DRV8323? It would be a game changer!

1 Like

I suspect some of the newer 8A+ integrated drivers (DRV8316 and DRV8332) would be similarly popular.

“A fool and his money are soon parted”. If you come to a forum like this, you are probably not a professional. The way to succeed is : study like crazy. There is no substitute for it.
Why would you choose a $2 part if a 40 cents part will do ?

If you want less vague answers, ask more specific questions. Tell them what kind of motor you will be driving, at what speed, under what conditions.

BTW, Arduino-FOC is C++ code for a generic microcontroller. I can only control motors at low speed and it will not do sensorless FOC. If you want something else then go have a look at ST or Micorchip code-examples.

I see we have our community “hater” :smiley:
It is actually nice to hear everyone opinions, but I would like to use this comment and @Jan_Donker as an example to urge everyone to try to avoid rude comments. In my opinion it does not help the discussion and it just makes the atmosphere unpleasant.

Now to answer your questions.

This one is easy, because it is easier to use. :smiley:
I am all about simplicity and a lot of people who use this library and visit this forum seem to like it to :smiley:

Regarding the professional/not professional topic. I would say that simplefoc by definition is not intended for professionals who consider this problem easy to solve. It is not intended to find an optimal solution in any way, but to enable people to run BLDC motors in a simple manner.
To get great results you need to “study like crazy” I agree, with or without the simplefoc.

This is a holy-grail of any community forum and I agree with your statement, but I do not think this comment applies to this topic in any way.

Yes, I agree, no sensorless FOC. But you can use it in open-loop sinusoidal modulation mode (without position sensor) which is pretty common also.
Furthermore, simplefoc will still have a nice range of velocities (which depends on a motor, driver, mcu, power-supply and many more), the low speed comment is not really true. But what is true is that it was designed initially for low-speed smooth operation, no question there :smiley:

I agree that if you wish to be optimal and specific and use advanced hardware modules of STM chips for running the BLDC motors, the best approach will be to use stm examples. But even stm example codes are soooo specific that they are almost not transferable from one board to another. The solutions might be optimal but require a great degree of knowledge about the mcu architecture and code that has nothing to do with running BLDC motors.
This is not specific to stm foc examples and similar solutions, that is the case for most of solutions you can find in the wilderness of the internet :smiley:

Anyway, I really like this topic and I think it can help many people that are interested in designing their own boards and that just don’t know where to start and might not even know what are the questions to be posing. Finding the right questions and the right answers, that is the whole idea of this forum, this community and this project. :smiley:


As one of the non-professionals you mention :wink: I’d like to say that this forum has really helped me to “study like crazy”… it’s not the only source of information I have, but its a great one because so many friendly people take the time to give their help and advice (professional or not) to help amateurs like me.

And also I would say that while BLDC motor control is a pretty specific engineering topic, the use of BLDC motors is varied, and the projects often interdisciplinary. And while some of us might not be pros on the topic of MOSFETs or BLDC control, we might be pros in some other field, and having a place to exchange infos can be valuable beyond the FOC topics as well.

Finally, on the topic of pros and motor control, and I mean this as an honest question, why is it that the pros don’t deliver (m)any products that fit the maker community’s needs? I’ll totally admit the ST-micro, TI and microchip software solutions and examples are amazing, and I am sure they are widely used in the professional world, but in terms of products that can be used by makers, I see far more things like this:

  • Moteus
  • ODrive
  • VESC
  • Basecam
  • SimpleBGC
  • SimonK, BLHeli and all the Drone ESCs based on those
  • MIT Cheetah

These products seem very “professional” on the one side, and yet as far as I am aware they come from makers/hobbyists/students etc… It’s people creating their own solutions, because the pro solutions are either not available, or priced out of maker budgets.

1 Like

But does anybody already know what kind of motor it is going to be ?
You can not answer the question without knowing that first.
What current, what voltage ?
Sinusoidal or trapezoidal ?
Is it spinning fast and does it have a fan ? Does it have some kind of sensor ?
What kind of load is it going to drive ?
Do you have the space for a heatsink ?

1 Like

@Jan_Donker, i think Jorge was asking what factors help you decide driver/fet selection. It is possible (but harder) to answer that question without knowing exact application.

But i agree that knowing if Jorge wants to drive a 500w or 5W motor might frame the question.

What sort of applications do you want your board to be used for @JorgeMaker?

Hi @Owen_Williams .

I don’t think @Jan_Donker understood the generalist approach of my question. I was not asking for a concrete recommendation of any specific MOSFET for use in closed, well-defined application.

What I was asking is what are the most relevant parameters to be taken in consideration, to make a proper and informed decision, when selecting MOSFETs to build a BLDC driver in general. @David_Gonzalez gave me a concise and wonderful answer :slight_smile:

  • 10V + at the rate you want to achieve
  • Low Rds, the lower the better (this tends to influence the price)
  • Small door load
  • Id good enough for the application (considering the package limits)
  • Nice little package
  • Reputable brand; most of the time reputable brands will have better datasheets

I made a general question and I got a general answer that is not directed at any specific requirement beyond being used to build a generic BLCD controller.

I think this answer can be useful for anyone else with specific needs when choosing MOSFETs to build a BLDC controller.