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.

CCS/LAUNCHXL-F28069M: motor not spinning for motorware lab12 a

Part Number: LAUNCHXL-F28069M
Other Parts Discussed in Thread: MOTORWARE

Tool/software: Code Composer Studio


I am trying to do Lab 12a of motorware. i followed the lab procedure as instructed. I am using a IE3-1024L incremental encoder. i have connected the encoders A,B,I and 5 v and GND according to the encoder data sheet with QEP2 of launchxl-28069M. I have rechecked the encoder connections and they seemed to be correct. I have also seen in oscilloscope the level shifted encoder Pulses A and B in pin 50 and 11 (which coresponds to GPIO 54,55 for the encoder pulses)  when i set gMotorVars.SpinTAC.VelIdRun to 1, the motor seems to move once to a fix position and stops. after few seconds gMotorVars.SpinTAC.VelIdErrorID gives an error 2004. I made the gMotorVars.SpinTAC.VelIdGoalSpeed_krpm to half the rated speed still no result. what can be the problem?

note that I have successfully run lab 5c,d,e.

I am using a faulhaber 3274g024bp4 motor.the motor has 2 pole pairs and has rated 8.7krpm no load speed. it has the encoder builtin with it. encoder has 1-1024 lines per revolution.

useful User.h settings bellow:

#define USER_IQ_FULL_SCALE_FREQ_Hz        (800.0)

#define USER_PWM_FREQ_kHz                (45.0)

#define USER_SYSTEM_BANDWIDTH      (1.0)

#define USER_MOTOR_Rr (NULL)
#define USER_MOTOR_Rs (0.131655052)
#define USER_MOTOR_Ls_d (0.000029107603)
#define USER_MOTOR_Ls_q (0.000029107603)
#define USER_MOTOR_RATED_FLUX (0.0535894074)
#define USER_MOTOR_FLUX_EST_FREQ_Hz (20.0)
#define USER_SYSTEM_INERTIA (0.02089852095)
#define USER_SYSTEM_FRICTION (0.01076946259)



  • 1. Which connector of the LaunchPad is used for the inverter? J1 or J5? The J1 is the default setting in user.h for the lab12a, so you must use the QEP_A(GPIO20/A, GPIO21/B, and GPIO23/I) of the launchPad. The index input is necessary for all instaSPIN-motion and must be connected to EQEPI pin (GPIO23).

    2.  It is very important to ensure that the motor or encoder wires are connected in the right order and both are corresponding. And the USER_MOTOR_ENCODER_LINES is defined in user.h as part of your motor definitions

    Btw, you may use the recommended motor (Teknic_M2310PLN04K) to study these lab project first.

  • hello,

    thanks for the reply.

    Inverter connected to J1. so I changed to QEP A (encoder channel A,B,I connected). now I facing a problem here. For QEP1A  GPIO20/A (checking at J5 pin 45 if i am not wrong) i dont see the required square pulses, by manually rotaitng the shaft, at pin 45 with oscilloscope. Though I can see the square pulses for QEP1B GPIO21/B (at J5 pin 48). 

    What could be the reason? also let me know if I am checking the correct pins or not?

    Note when I was using QEPB for the encoder. I could see both square pulses for QEP2A GPIO54/A (at J5 pin 50) and QEP2B GPIO55/B (J2 pin 11). 



  • Please make sure there is no any codes changed in the example lab12a project. You may check the signals on the connector QEP_A directly, and please pay attention to connection order of the encoder that matches the order of the connector.

    Btw, please ensure the "J1" is defined in user.h if you are using the inverter on connector J1 of the LaunchPad.

  • hello,

    it seems like QEPA was not functioning properly. so i change the inverter position to J5 and used QEPB. Now it is working.

    thanks for the help