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.

LAUNCHXL-F280025C: Motor Control SDK Universal Project and Lab - Migrating From F28004xC to F28002xC

Part Number: LAUNCHXL-F280025C
Other Parts Discussed in Thread: DAC128S085EVM, , BOOSTXL-DRV8323RS, LAUNCHXL-F280049C, TMDSCNCD280025C

We are working on migrating code from F28004xC to F28002xC and are experiencing a few issues.  Our initial setup of the LAUNCHXL-F280025C, BOOSTXL-DRV8323RS, and DAC128S085EVM is as follows:

BoostXL-DRV8323RS Board Changes:

  • Replaced R2, R3, R4, R28 with a 16.9k for an ADC full scale voltage of 14.476
  • Populated a 33nF capacitor to C9, C10, C11 (There is a discrepancy in the lab docs as the setup states to use 33nF but the image say to use 47nF)
  • The above 2 changes gives a voltage filter pole value of 1269.638  (Is this too high?)  Our previous filter pole with F28004 Launchpad was 414.25
  • Replaced shunt resistors R6, R8, R10 with 0.030ohm with a gain of 40V/V to provide a ADC full scale current of 2.75
  • Connected J3-29 of LaunchXL-F280025C to J3 of BOOSTXL-DRV8323RS to enable POT
  • Connect J4-4 to J4-18 for connecting DRV_SCS to SPI_STE

LAUNCHXL-F280025C Board Changes:

  • Disconnect J3-30 to BOOSTXDRV8323RS
  • Disconnect J5-42 to DAC128S085EVM

DAC128S085EVM Board Changes:

  • Connect JA-2 to JB-2

We have made the appropriate changes in user_mtr1.h and drv8323s.h to account for the voltage/current sense hw changes, motor parameters (pulled from F28004 working code user.h), CSA gain of 40v/v.

After compiling Level 1 Incremental Build we are able to run the code and successfully set the motorVars_M1.flagRunIdentAndOnLine variable to 1 without having any faults.

Below are some of the discrepancies/issues we are seeing:

  • motorVars_M1.ISRCount is stuck at 0 and not increasing
  • offset_I_ad values are all different at 54,1638, 841.  Not sure why this is the case as the lab document states all 3 should be close to 1/2 ADC value?
  • When connecting the PWM signals to the oscilloscope we are not seeing any duty cycle and only constant voltage.  Wondering if this is related to the ISR count not incrementing? 

Again, we have a LAUNCHXL-F280049C where we have everything working perfectly so we have the luxury of being able to cross reference values/settings for anything HW and/or motor specific.

Any help or suggestions would be greatly appreciated!

  • We are working on migrating code from F28004xC to F28002xC and are experiencing a few issues.  Our initial setup of the LAUNCHXL-F280025C, BOOSTXL-DRV8323RS, and DAC128S085EVM is as follows:

    What do you mean this? The current Universal lab is based on F28002x, and support LAUNCHXL-F280025C and BOOSTXL-DRV8323RS directly. 

    Please follow the below steps to check the setting you did. 

    • Make sure that switches on TMDSCNCD280025C are set as described below.
      • For S1:A, position both switches up for using the on-Card XDS100v2 emulator
      • For S2, position the left switch up (1) to route GPIOs 28 and 29 to the BoosterPack connector, and position the right switch up (1) to rout GPIOs 16 and 17 to the virtual COM port.
      • For S3, position the left switch down to pull GPIO24 down to logic 0, and position the right switch up to pull GPIO32 up to logic 1 to put the F280025C into wait boot mode for reducing the risk of connectivity issues or a previous loaded code execution.
      • For S5, position the left switch down to route Q1 to J12 for the encoder interface on J12, and position the right switch down to route Q2 to J13 for the Hall sensor interface on J13.
    • Make sure that the following items are completed as described below, and then connect the BOOSTXL-DRV8323RS to J1/J3 and J4/J2 of the LAUNCHXL-F280025C as shown in .
      • Populate C9, C10, and C11 with a 47nF capacitor.
      • Bend J3-29 and J3-30 of the LAUNCHXL-F280025C  90 degrees so that they are not connected to the BOOSTXL-DRV8323RS.
  • To better clarify:

    We have a design working perfectly for the F280049C but due to chip shortages we are working on migrating this solution to also work with the F28002xC MCU's.

    We are not using the TMDSCNCD280025C.  We are using LAUNCHXL-F280025C and BoostXL-DRV8323RS with DAC128S085EVM to help analyze.  All changes are listed in original post and were performed based on https://www.ti.com/lit/ug/spruj26/spruj26.pdf?ts=1646858206462&ref_url=https%253A%252F%252Fwww.google.com%252F

    Below are some of the discrepancies/issues we are seeing:

    • motorVars_M1.ISRCount is stuck at 0 and not increasing
    • offset_I_ad values are all different at 54,1638, 841.  Not sure why this is the case as the lab document states all 3 should be close to 1/2 ADC value?
    • When connecting the PWM signals to the oscilloscope we are not seeing any duty cycle and only constant voltage.  Wondering if this is related to the ISR count not incrementing? 

    Do you have any ideas on what could be causing the above 3 issues?

  • motorVars_M1.ISRCount is stuck at 0 and not increasing

    The lab guide is not correct, you may add a line code as below before the HAL_ackMtr1ADCInt() in motor1CtrlISR() or ignore this step.

        motorVars_M1.ISRCount++;

    offset_I_ad values are all different at 54,1638, 841.  Not sure why this is the case as the lab document states all 3 should be close to 1/2 ADC value?

    Set the jumpers and switches on LAUNCHXL-F280025C as mentioned above.

    When connecting the PWM signals to the oscilloscope we are not seeing any duty cycle and only constant voltage.  Wondering if this is related to the ISR count not incrementing? 

    The same as Q2.

    • For S1:A, position both switches up for using the on-Card XDS100v2 emulator
    • For S2, position the left switch up (1) to route GPIOs 28 and 29 to the BoosterPack connector, and position the right switch up (1) to rout GPIOs 16 and 17 to the virtual COM port.
    • For S3, position the left switch down to pull GPIO24 down to logic 0, and position the right switch up to pull GPIO32 up to logic 1 to put the F280025C into wait boot mode for reducing the risk of connectivity issues or a previous loaded code execution.
    • For S5, position the left switch down to route Q1 to J12 for the encoder interface on J12, and position the right switch down to route Q2 to J13 for the Hall sensor interface on J13.