Skip to main content
Associate II
September 25, 2024
Question

MCSDK 6.3.0 + FreeRTOS Motor Pilot doen't connect (MCP: ASPEP BEACON TIMEOUT)

  • September 25, 2024
  • 3 replies
  • 1503 views

Hello everyone,

I have a motor control project that I'm testing out using Motor Pilot. If I generate it with FreeRTOS support, Motor Pilot can't connect to the board (the board sends a probably malformed ASPEP_RESP and then it's always a timeout).

grisharevzin_0-1727248546108.png

I have verified that motor control code is working correctly with test code (the motor spins as expected):

void test_task(const void *arg)
{
vTaskDelay(5000);
(void)arg;
MC_AcknowledgeFaultMotor1();
MC_ProgramSpeedRampMotor1_F(250, 1000);
MC_StartMotor1();
vTaskSuspend(NULL);
}

Noticed that void ASPEP_HWReset(ASPEP_Handle_t *pHandle) from aspep.c is always getting called.

If I untick the FreeRTOS button in the workbench and regenerate the code (keeping all other settings), then MCP works as expected.

General params:

  • MCSDK 6.3.0
  • FOC
  • EVSPIN32G4 

Maybe this is known issue and there's a fix/workaround?

3 replies

ST Employee
September 25, 2024

Hello @grisharevzin ,

Could you try with the latest version of MCSDK (6.3.1) which has been released?

It should fix your issue.

BRs

Associate II
September 25, 2024

Hi @LHOUE,

I've regenerated and recompiled everything with 6.3.1, same issue (void ASPEP_HWReset(ASPEP_Handle_t *pHandle) is always getting called if I'm trying to connect with Motor Pilot).

 

grisharevzin_0-1727275841410.png

 

Associate II
November 14, 2024

Did you find a resolution to this issue? I am having the same problem

Associate II
November 14, 2024

Nope, sorry. It's either FreeRTOS or MCP. My intuition tells me it should be easy enough to debug but I didn't go this way.