Dead time control in DRV8301


I hope this is not a dumb question.

I tried to implement the FOC for the DRV8301 which was mostly successfully. But i dont really understand one thing. In the hardware the DRV8301 offers a “dead time” feature (which i can adjust with a resistor). But as i saw in the datasheet i can set it from 50ns to 500ns (from 20 000kHz to 2000 kHz). But this chip just can operate up to 200 Khz( opening the gate of the FETS in this freq). Whats the meaning of this dead time in this concept? Like if i will run this chip at 200kHz and maybe i will not pay attention to the dead time (open up two phase) then this “defence” feature wont work. Am i right or i misundestanding something? I could adjust the dead time in software so it’s not a problem but is this feature in the hardware is useless?

Thank you much for the answer!

Doing deadtime in software should be avoided if possible. A bug in simplefoc could damage your hardware.

The driver has no idea what pwm frequency you’ll switch it at or the switching characteristics of mosfets, hence deadtime is configurable.

It makes sense that the smallest dead time (50ns) is a fraction (1/10th) of the period of fastest pwm (200khz),
if you did 200khz pwm and 500ns deadtime (i.e. pwm period == deadtime) then the hardware dead time might end up holding high and low mosfets off ‘all the time’ to avoid shoot through. Not great if you want your motor to move :grinning:.

Yes, thats right. I was a little bit confused about it but yee it make sense! Thank you !