This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

BOOSTXL-DRV8320S: BOOSTXL-DRV8320S operation in 4 quadrants ?

Part Number: BOOSTXL-DRV8320S
Other Parts Discussed in Thread: C2000WARE-MOTORCONTROL-SDK, MSP-EXP430F5529LP, DRV832X, MSP430F5529, DRV8320, TIDA-01585, MSP430FR2311, BOOSTXL-DRV8320RS, MOTORWARE

Good morning to everybody

I have a BOOSTXL-DRV8320S whit an BLDC motor (sensored control speed).

Need to make it keep the speed constant even if I apply force in the direction of rotation of the motor. How can I make it maintain the same speed on the motor shaft even if it is accelerated by external forces?
Thanks in advance.


  • Hello Gonzalo,

    The C2000 MCU team has a resource called MotorControl SDK (C2000WARE-MOTORCONTROL-SDK) that has a speed control lab (is07_speed_control) for sensorless FOC commutation. This may work to keep a regulated speed through all 4 quadrants of operation if the inertia and mechanical bandwidth of the BLDC motor is already known. 

    Can you describe if you are using a trapezoidal or sinusoidal algorithm? 

    If you are interested in the solution described above, I can forward this thread to the C2000 for more information. 


  • Hello Aaron, 

    I am using an MSP-EXP430F5529LP + BOOSTXL-DRV8320S, control software is BOOSTXL - DRV832X EVM GUI.
    Spin motor sensored and trapecial mode.
    The application works well, it maintains the speed when there are variations of resistive load on the shaft (in the opposite direction to the rotation of the shaft). What I need is that it also maintains the same speed when these load variations occur in the same direction as the shaft rotation, that is, if we accelerate the motor externally. Is it possible to get it with the MCU + DRV configuration that I currently have?
    Thank you very much for the help.



  • Hi Gonzalo,

    Unfortunately the MSP430 will likely not be able to support speed control, as there are no resources for it and the MSP430 is likely not fast enough to support it. To put into perspective, the CPU frequency is ~25MHz for the MSP430F5529 and ~100MHz for the TMS430F280049C. 

    If you migrate to the BOOSTXL-DRV8320RS instead of the BOOSTXL-DRV8320S, then you can use the MotorControl SDK (which includes speed control firmware) to support speed control for at least quadrants 1 and 3 (forward and reverse motoring). However, you will likely need to create your own functions to support quadrants 2 and 4 (forward and reverse braking). You may be able to get assistance from the C2000 team for that.


  • Hello Adam

    I made a query to Texas Instruments to know which equipment was the right one (I attached the post), in which it said that I needed the control to be able to brake the engine in case of external acceleration, they replied that although, I did not include it in the configuration, it was possible to include it without much difficulty. You tell me that it is not possible to do it, please, could you clarify if it can or not and in what way can I do the engine control as I explained to you?

    Thank you


    BOOSTXL-DRV8320H: Need help to find correct evaluation board

    Gonzalo de Alfonso
    Prodigy 150 points
    Part Number: BOOSTXL-DRV8320H
    Other Parts Discussed in Thread: MSP-EXP430F5529LP, MSP430F5529, DRV8320

    Hi All, 

    I need help to know if with the combination of the MSP-EXP430F5529LP + BOOSTXL-DRV8320 ​​controller to spin a BLDC motor, it could work with the following features:

    * Voltage rated 24 Vdc.

    * Current rated 10 Amp.

    * Close loop control (Hall Sensors).

    * Speed control external or internal (no relevant).

    * If the speed increases up to seting for external conditions, actived brake to reduced at set point.

    Is there any software to be able to see the motor variables speed, torque, current ...?
    Would the DRV8312 Evaluation Kit be better?

    Thanks in advance!

  • Hi Gonzalo,

    I'm not sure what you did but I cant actually reply to that post you just made.



  • Hi Gonzalo,

    I am checking with the team and will give you a more detailed reply tomorrow.



  • Hi Aaron

    Thanks for your help, if you need more information about the application, please tell me.
    I look forward you reply. 

    Many thaks 


  • Hi Gonzalo,

    I misread the first E2E response and saw you are using a sensored trapezoidal algorithm. The MSP430F5529 should be fast enough to implement speed control because there should be enough processing speed to implement a closed-loop speed controller. The other resource was for sensorless-FOC, which requires a lot of processing speed to implement a speed controller while calculating the position and commutating the motor. 

    TIDA-01585 (see section 2.3.3 of the design guide) describes a PI controller used for speed control, perhaps you can use it for programming the controller. The available firmware uses the MSP430FR2311 to implement the PI controller. 

    There may be better resources available through our TI Reference Designs for BLDC motors:


  • Hi Aaron, 

    Thanks for your reply

    The solution you propose does not match what I need. Sorry, I may not have explained myself well. I will open the post in which I asked for advice to select the solution that I currently have (and that works well, except for the braking detail). I hope you can help me to know what I need to be able to develop the application.

    Many thanks


  • Hi Gonzalo,

    This question is very algorithm focused now and it is outside of knowledge of our team. My final inputs are that even though the MSP430F5529 likely has the processing speed needed to perform 4-quadrant speed control with the BOOSTXL-DRV8320RS and sensored trapezoidal, there are not any resources I know about at TI that implement speed control through four-quadrant operation. 

    The closest I can assist you with is our speed control solution through the C2000 MotorControl SDK solution, but this is for Sensorless-FOC for only motor operation (quadrants 1 and 3). You may need a motor control expert from the C2000 team to help with finding resources to develop your application.

    I will forward your thread to the C2000 team and see if they can assist. 

    Thank you,

  • Hi Aaron

    Yes, please, refer the query to the team. I need help to implement the application, is it possible to contact directly by email to make it faster?
    Thank you very much for your help!



  • There is no reference code for running the machine in a four-quadrant operation till now in motorWare or MotorControlSDK, you have to add additional codes by yourself if you need.

    It seems like you don't need a four-quadrant operation in your case, you just need to control the motor with a speed-close loop or torque-close loop.