I am building an ESC. Motor: 22 V, max. current 90 A. Battery: max. current 60 A. My controller is a MIC4607.

The PWM frquency is 16 kHz, but I will try to get 20 kHz later.


As you see there is a RSNS resistor, which is connected to the source of the MOSFETs and to the MIC4607, where ILIM+ and ILIM- is a comparator which would trigger if the voltage rises above 200 mV and turn all high-side MOSFETs off. I want to use this function to protect my batteries and motor from overcurrent.

How do I do that? I would need a shunt resistor, but they are very bulky. I found SMD shunts that have 1 mΩ resistance and could withstand the current. P=I2·R would be 3.6 W. Is this possible? The voltage drop over it would be only 60 mV, but I could amplify it.

Another solution would be to measure the current at the battery with the current sensors of Alegro, up to 100 A bidirectional, and just apply a voltage to IlIM+ if the current excides the max. allowed current that would instantly switch off the MOSFETs.

  • \$\begingroup\$ I bet your max current is far more than 90A. What is the motor DCR? and Vbat? ESR? The only way to solve this design is to identify all component resistance, duty cycle, resulting current stress, and heat rise. \$\endgroup\$ Feb 23, 2018 at 18:36
  • \$\begingroup\$ Imax is rated for max power, but I surge is Vbat/DCR is up to 4x~8x Imax for full acceleration start. You control the current by controlling the acceleration from start which is far more than load at max RPM.. \$\endgroup\$ Feb 23, 2018 at 19:22
  • \$\begingroup\$ @TonyStewart.EEsince'75 i can just provide you with the links I'm sorry : <hobbyking.com/en_us/…> <akkuteile.de/lithium-ionen-akkus/18650/…> \$\endgroup\$
    – Petar
    Feb 23, 2018 at 20:05

1 Answer 1


With reference to the datasheet for the MIC4607, you can see that the current detected by Rsns is a latched fault current. This is the absolute maximum (peak) current at which you declare a fault, and all commutation stops.

enter image description here

If you want to set a LOWER trip point you can use the same Rsns that you have now and set your tripoint to accommodate your design but leaving the fault detection unaltered. There seems no need to provide another sense resistor, simply apply your desired external tripoint and logic functions to the voltage across Rsns.

  • \$\begingroup\$ So you suggest I use the 1mOhm shunt, amplified by an OPV which will provide 0.2V at 60mV drop from shunt resistor to trigger the internal logic of the controller? [![enter image description here][1]][1] [1]: i.sstatic.net/o7LnJ.png \$\endgroup\$
    – Petar
    Feb 23, 2018 at 20:01
  • \$\begingroup\$ Correct as per your schematic. \$\endgroup\$ Feb 23, 2018 at 22:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.