2025-07-16 3:43 PM - last edited on 2025-07-25 6:07 AM by Andrew Neil
Hello,
I am working with the STM32F303E-EVAL control board and the STEVAL-IPMNM2S power board, using IAR Embedded Workbench 9.40.
I have struggled to get the motor running. I initially tried both MCSDK versions 9.3.2 and 9.4.0 separately, but in most cases, the motor either does not rotate or runs with excessive noise — overall, it fails to operate with error.
However, on one occasion, I accidentally recreated a project using MCSDK 9.3.2 and then rebuilt it using 9.4.0. Surprisingly, that build worked — the motor rotated smoothly, and I was able to Motor Pilot control speed and torque successfully.
Since then, I have tried many times (over 100 attempts) to reproduce the same working setup using both versions, separately and in combination, but without success. The motor fails to start or runs poorly.
Could someone please help me understand what might have gone right in that one successful attempt and how I can reliably replicate it?
Thank you in advance for your support.
2025-08-27 7:00 AM - edited 2025-08-27 7:01 AM
Hello @kumarairia,
Did disabling both auxiliary sensors and tuning the pulse-width modulation (PWM) frequency improve performance?
2025-09-03 4:47 PM
Hello Sir,
Sorry for the delayed response.
After spending significant time and money working with STM and the MCSDK 6.3.2, 6.4.0, and recent 6.4.1, I have to share that the experience has been very disappointing. The framework has caused unnecessary delays and stress, and in my opinion, it is not suitable for mass production in its current form.
I have bought so many boards both power and control boards.
I have uploaded everything for your reference. The SDK has multiple issues and is not user-friendly, which makes the development process much more difficult than expected.
Going forward, I would suggest avoiding presenting this as a production-ready solution, as it sets false expectations.
Regards,
2025-09-04 12:26 AM
Hello @kumarairia,
Thank you for your feedback.
We put significant effort into developing the best solutions we can provide, and we are sorry that it does not meet your expectations.
To improve our product, referring to your video, once stepping through the NVIC initialization function, the debugger continues running.
This issue could be caused by an incorrectly mapped interrupt that is enabled by the NVIC initialization. If you pause the debugger at the infinite loop point, does it stop at a specific IRQHandler position in the startup_stm32f303xe.s
file?
2025-09-04 4:56 AM
Hello Expert,
I do not believe this issue is on my side. I have tested multiple times using MCSDK versions 6.3.2 and 6.4.0, and the problem still persists.
When I tried version 6.4.0 with IPMNM2S, I noticed that with driver protection enabled, the issue disappeared. However, as soon as I enabled OCP, the same issue occurred again.
Based on these tests, I think this may be a bug in the MCSDK related to the internal op-amp and comparators.
I have attached here picture what happens when i pause debugger.
I need help to solve the issue please.
2025-09-07 9:29 AM
Hello Expert,
I am reaching out regarding the same issue with the MCSDK. I have tried versions 6.32, 6.40, and 6.41, but the above configuration does not work as expected.
The system consistently gets stuck in the TIM1_BRK and TIM8_BRK interrupt handlers if OCP is used. also usart is not working if driver protection configuration is used. I notice usart issue with 6.40 and 6.41. I am looking for an immediate fix or support from the ST MCSDK team to resolve this bug.
We are ready to engage with ST for paid support to quickly address this issue. Your prompt assistance would be highly appreciated.
2025-09-09 7:23 AM
Hello @kumarairia,
Could you share your MCSDK 6.4.1 STM32F303/STEVAL-IPMNM2S project? The previously shared project was based on the STEVAL-IHM045V1 power board.
2025-09-09 3:12 PM
Hello,
I have attached a video demonstrating the problem, along with the project files for MCSDK 6.4.1 and 6.3.2. Unfortunately, both versions are not working.
I understand there may still be some follow-up questions, which could delay the resolution further. However, I would greatly appreciate your prompt support, as this issue is blocking my project.
Thank you in advance for your help.
2025-09-09 3:14 PM
2025-09-10 1:36 AM - edited 2025-09-10 2:52 AM
Hello @kumarairia,
We have identified an issue on one side.
With MCSDK 6.4.1 version, replace HTMIN2 define in the parameters_conversion.h file located in the project\inc
directory as follows:
/* Required for main.c compilation only, CCR4 is overwritten at runtime */
#define HTMIN2 1
Replace the r3_2_f30x_pwm_curr_fdbk.c
file located in the project\MCSDK_v6.4.1-Full\MotorControl\MCSDK\MCLib\F3xx\Src
directory with the attached file.
For the overcurrent occurrence, increase the current threshold or the digital filter duration to make the system less sensitive to current spikes that may occur at starting point.
For the full STM32F303E-EVAL switch settings description, refer to Tables 19 and 20 of the board user manual.
2025-09-10 4:36 PM
Hello Expert,
Thank you for your support. I have implemented both of the suggested instructions (HTMIN2 = 1 and changes in r3_2_f30x_pwm_curr_fdbk.c) across all my test cases.
I tested the system under four different situations and have documented the results as cases in the attached Test Case Execution Summary. To confirm consistency, I also repeated the tests using two different STM32303E-EVAL boards.
However, the internal OPAMP is still showing issues. I would greatly appreciate your further assistance in resolving this.
P.S.: I also have a STEVAL-IHM039V1 board, which has always worked reliably without any issues. Unfortunately, it only includes an external OPAMP.