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.

MCF8329EVM: Help With Spinning Motor

Part Number: MCF8329EVM
Other Parts Discussed in Thread: BOOSTXL-DRV8305EVM, LAUNCHXL-F28069M

Tool/software:

Hello All. I am creating a drone esc project from scratch and would like to utilize the mcf8329 to do so. I am having issues running the MPET algorithm and I constantly get a HW_locklimit and the motor over heats very rapidly. It get stuck in the MPET loop and does not finish its calculations. The motor I am using is TMOTOR F90 2806.5 Brushless Motor for Cinelifter X8 FPV Drones – T-Motor . The inductance I recorded is 2.5 uH using a LCR meter at 1 khz. Listed below are my current registers and was wondering what could I change so the motor will complete the MPET test and give me the speed ki and kp? Also should I change the current sense resister since I keep reading that there are issues with the factory installed one?  Also would it be easier to go with the instaspin approach using BOOSTXL-DRV8305EVM and LAUNCHXL-F28069M. Let me know your thoughts! Thanks.

{
"idx":1,
"id":"REV_DRIVE_CONFIG",
"value":"0x48300000",
"addr":"0x00000082"
},
{
"idx":2,
"id":"MOTOR_STARTUP1",
"value":"0x10A24CC0",
"addr":"0x00000084"
},
{
"idx":3,
"id":"MOTOR_STARTUP2",
"value":"0x92AF2007",
"addr":"0x00000086"
},
{
"idx":4,
"id":"CLOSED_LOOP1",
"value":"0x167D064C",
"addr":"0x00000088"
},
{
"idx":5,
"id":"CLOSED_LOOP2",
"value":"0x8AAD5110",
"addr":"0x0000008A"
},
{
"idx":6,
"id":"CLOSED_LOOP3",
"value":"0x25F41828",
"addr":"0x0000008C"
},
{
"idx":7,
"id":"CLOSED_LOOP4",
"value":"0x000004B0",
"addr":"0x0000008E"
},
{
"idx":8,
"id":"REF_PROFILES1",
"value":"0x00000000",
"addr":"0x00000094"
},
{
"idx":9,
"id":"REF_PROFILES2",
"value":"0x00000000",
"addr":"0x00000096"
},
{
"idx":10,
"id":"REF_PROFILES3",
"value":"0x80000004",
"addr":"0x00000098"
},
{
"idx":11,
"id":"REF_PROFILES4",
"value":"0x00000000",
"addr":"0x0000009A"
},
{
"idx":12,
"id":"REF_PROFILES5",
"value":"0x00000000",
"addr":"0x0000009C"
},
{
"idx":13,
"id":"REF_PROFILES6",
"value":"0x00000000",
"addr":"0x0000009E"
}
],
[
{
"idx":0,
"id":"FAULT_CONFIG1",
"value":"0x0E483186",
"addr":"0x00000090"
},
{
"idx":1,
"id":"FAULT_CONFIG2",
"value":"0x71402888",
"addr":"0x00000092"
}
],
[
{
"idx":0,
"id":"INT_ALGO_1",
"value":"0x09460035",
"addr":"0x000000A0"
},
{
"idx":1,
"id":"INT_ALGO_2",
"value":"0x02008161",
"addr":"0x000000A2"
}
],
[
{
"idx":0,
"id":"PIN_CONFIG",
"value":"0x40032300",
"addr":"0x000000A4"
},
{
"idx":1,
"id":"DEVICE_CONFIG1",
"value":"0x00100001",
"addr":"0x000000A6"
},
{
"idx":2,
"id":"DEVICE_CONFIG2",
"value":"0x03E8C00C",
"addr":"0x000000A8"
},
{
"idx":3,
"id":"PERI_CONFIG1",
"value":"0x2A9845C2",
"addr":"0x000000AA"
},
{
"idx":4,
"id":"GD_CONFIG1",
"value":"0x8000807B",
"addr":"0x000000AC"
},
{
"idx":5,
"id":"GD_CONFIG2",
"value":"0x00000400",
"addr":"0x000000AE"
}
],
[
{
"idx":0,
"id":"GATE_DRIVER_FAULT_STATUS",
"value":"0x00000000",
"addr":"0x000000E0"
},
{
"idx":1,
"id":"CONTROLLER_FAULT_STATUS",
"value":"0x00000000",
"addr":"0x000000E2"
}
],
[
{
"idx":0,
"id":"ALGO_STATUS",
"value":"0x00000004",
"addr":"0x000000E4"
},
{
"idx":1,
"id":"MTR_PARAMS",
"value":"0x00000000",
"addr":"0x000000E6"
},
{
"idx":2,
"id":"ALGO_STATUS_MPET",
"value":"0x0A000000",
"addr":"0x000000E8"
}
],
[
{
"idx":0,
"id":"ALGO_CTRL1",
"value":"0x20000000",
"addr":"0x000000EA"
}
],
[
{
"idx":0,
"id":"ALGO_DEBUG1",
"value":"0x00000000",
"addr":"0x000000EC"
},
{
"idx":1,
"id":"ALGO_DEBUG2",
"value":"0x0000001A",
"addr":"0x000000EE"
},
{
"idx":2,
"id":"CURRENT_PI",
"value":"0x030503A0",
"addr":"0x000000F0"
},
{
"idx":3,
"id":"SPEED_PI",
"value":"0x00000000",
"addr":"0x000000F2"
},
{
"idx":4,
"id":"DAC_1",
"value":"0x00000000",
"addr":"0x000000F4"
}
],
[
{
"idx":0,
"id":"ALGORITHM_STATE",
"value":"0x00120014",
"addr":"0x00000196"
},
{
"idx":1,
"id":"FG_SPEED_FDBK",
"value":"0x7FFFFFFF",
"addr":"0x0000019C"
},
{
"idx":2,
"id":"BUS_CURRENT",
"value":"0x00000000",
"addr":"0x0000040E"
},
{
"idx":3,
"id":"PHASE_CURRENT_A",
"value":"0x00000000",
"addr":"0x0000043C"
},
{
"idx":4,
"id":"PHASE_CURRENT_B",
"value":"0x00000000",
"addr":"0x0000043E"
},
{
"idx":5,
"id":"PHASE_CURRENT_C",
"value":"0x00000000",
"addr":"0x00000440"
},
{
"idx":6,
"id":"CSA_GAIN_FEEDBACK",
"value":"0x00000000",
"addr":"0x00000450"
},
{
"idx":7,
"id":"VOLTAGE_GAIN_FEEDBACK",
"value":"0x00000000",
"addr":"0x00000458"
},
{
"idx":8,
"id":"VM_VOLTAGE",
"value":"0x02F67CB0",
"addr":"0x0000045C"
},
{
"idx":9,
"id":"PHASE_VOLTAGE_VA",
"value":"0x02B15B30",
"addr":"0x00000460"
},
{
"idx":10,
"id":"PHASE_VOLTAGE_VB",
"value":"0x02ADE461",
"addr":"0x00000462"
},
{
"idx":11,
"id":"PHASE_VOLTAGE_VC",
"value":"0x02B07D7C",
"addr":"0x00000464"
},
{
"idx":12,
"id":"SIN_COMMUTATION_ANGLE",
"value":"0x00000000",
"addr":"0x000004AA"
},
{
"idx":13,
"id":"COS_COMMUTATION_ANGLE",
"value":"0x00000000",
"addr":"0x000004AC"
},
{
"idx":14,
"id":"IALPHA",
"value":"0x00000000",
"addr":"0x000004CC"
},
{
"idx":15,
"id":"IBETA",
"value":"0x00000000",
"addr":"0x000004CE"
},
{
"idx":16,
"id":"VALPHA",
"value":"0x00000000",
"addr":"0x000004D0"
},
{
"idx":17,
"id":"VBETA",
"value":"0x00000000",
"addr":"0x000004D2"
},
{
"idx":18,
"id":"ID",
"value":"0x00000000",
"addr":"0x000004DC"
},
{
"idx":19,
"id":"IQ",
"value":"0x00000000",
"addr":"0x000004DE"
},
{
"idx":20,
"id":"VD",
"value":"0x00000000",
"addr":"0x000004E0"
},
{
"idx":21,
"id":"VQ",
"value":"0x00000000",
"addr":"0x000004E2"
},
{
"idx":22,
"id":"IQ_REF_ROTOR_ALIGN",
"value":"0x00000000",
"addr":"0x0000051A"
},
{
"idx":23,
"id":"SPEED_REF_OPEN_LOOP",
"value":"0x00000000",
"addr":"0x00000532"
},
{
"idx":24,
"id":"IQ_REF_OPEN_LOOP",
"value":"0x00000000",
"addr":"0x00000542"
},
{
"idx":25,
"id":"SPEED_REF_CLOSED_LOOP",
"value":"0x00000000",
"addr":"0x000005D0"
},
{
"idx":26,
"id":"ID_REF_CLOSED_LOOP",
"value":"0x00000000",
"addr":"0x0000060A"
},
{
"idx":27,
"id":"IQ_REF_CLOSED_LOOP",
"value":"0x00000000",
"addr":"0x0000060C"
},
{
"idx":28,
"id":"ISD_STATE",
"value":"0x00000000",
"addr":"0x000006B0"
},
{
"idx":29,
"id":"ISD_SPEED",
"value":"0x00000000",
"addr":"0x000006BA"
},
{
"idx":30,
"id":"IPD_STATE",
"value":"0x00000000",
"addr":"0x000006E4"
},
{
"idx":31,
"id":"IPD_ANGLE",
"value":"0x00000000",
"addr":"0x0000071A"
},
{
"idx":32,
"id":"ED",
"value":"0x00000000",
"addr":"0x0000075C"
},
{
"idx":33,
"id":"EQ",
"value":"0x00000000",
"addr":"0x0000075E"
},
{
"idx":34,
"id":"SPEED_FDBK",
"value":"0x0030BDE2",
"addr":"0x0000076E"
},
{
"idx":35,
"id":"THETA_EST",
"value":"0x00000000",
"addr":"0x00000774"
}
]
]
}

  • Hi Peter,

    Thanks for posting your question. We will go through the details and get back to you.

    Thanks and Best Regards

    Venkatadri S

  • Hi Peter,

    I constantly get a HW_locklimit and the motor over heats very rapidly. It get stuck in the MPET loop and does not finish its calculations

    With respect to this point, a few suggestions:

    a. Could you please run the "Measure Motor BEMF Constant" and "Measure Motor Mechanical Parameter" in the MPET tab separately. Enable one, once done write the results to shadow registers and run the other.

    b. Increase the Open loop and closed loop current limits to around 20-25%

    Also should I change the current sense resister since I keep reading that there are issues with the factory installed one?

    And yes, the factory installed resistor is found to have offset issues, please replace this with another shunt for better performance.

    Thanks and regards,

    Sachin S