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.

AM6442: SDFM-Example SysConfig

Part Number: AM6442
Other Parts Discussed in Thread: LP-AM243, SYSCONFIG

Tool/software:

Hello,

I’m trying to run an SDFM current sensing example on the SK-AM64. However, the most up-to-date examples are only available for the LP-AM243. The only example I found for the AM64 is from an older SDK version:
mcu_plus_sdk_am64x_08_06_00_45\examples\motor_control\icss_sdfm\am64x-evm.

Unfortunately, the SysConfig tool in that version doesn’t work properly. It throws the following error:
"AM64x is not a valid device for the product MCIJ+ SDK for AM64x."

Is there any workaround or updated guidance to get this example running on the SK-AM64?

  • Hi

    MOTOR-CONTROL-SDK-AM243X Software development kit (SDK) | TI.com is the latest SDK supporting ICSS SDFM on AM243x devices. You can try to reuse the latest code and port it to AM64x. We do not have support for AM64x in the latest SDK.

    Regards

    Dhaval

  • Thank you for your quick response!

    I’m currently encountering some issues while porting the code to the AM64x. Could you please advise me on how to resolve this problem?

    Here is the error message I’m seeing:

    Building target: "icss_sdfm_am64x-sk_r5fss0-0_freertos_ti-arm-clang.out"
    Invoking: Arm Linker
    "C:/ti/ti_cgt_arm_llvm_4.0.1.LTS/bin/tiarmclang.exe" -mcpu=cortex-r5 -mfloat-abi=hard -mfpu=vfpv3-d16 -mlittle-endian -mthumb -DSOC_AM64X -D_DEBUG_=1 -g -Wall -Wno-gnu-variable-sized-type-not-at-end -Wno-unused-function -Wl,-m"empty.Debug.map" -Wl,-i"C:/ti/mcu_plus_sdk_am64x_11_00_00_15/source/kernel/freertos/lib" -Wl,-i"C:/ti/mcu_plus_sdk_am64x_11_00_00_15/source/drivers/lib" -Wl,-i"C:/ti/ti_cgt_arm_llvm_4.0.1.LTS/lib" -Wl,--reread_libs -Wl,--diag_suppress=10063 -Wl,--diag_wrap=off -Wl,--display_error_number -Wl,--warn_sections -Wl,--gen_xml_func_hash -Wl,--xml_link_info="icss_sdfm_fromam243x_am64x-sk_r5fss0-0_freertos_ti-arm-clang_linkInfo.xml" -Wl,--ram_model -o "icss_sdfm_am64x-sk_r5fss0-0_freertos_ti-arm-clang.out" "./app_sdfm.o" "./epwm_dc.o" "./epwm_drv_aux.o" "./epwm_mod.o" "./syscfg/ti_dpl_config.o" "./syscfg/ti_drivers_config.o" "./syscfg/ti_drivers_open_close.o" "./syscfg/ti_pinmux_config.o" "./syscfg/ti_power_clock_config.o" "./syscfg/ti_board_config.o" "./syscfg/ti_board_open_close.o" "./syscfg/ti_enet_config.o" "./syscfg/ti_enet_open_close.o" "./syscfg/ti_enet_soc.o" "./syscfg/ti_enet_lwipif.o" "./main.o" "./sdfm_example.o" -Wl,-l"syscfg/linker.cmd"  -Wl,-lfreertos.am64x.r5f.ti-arm-clang.debug.lib -Wl,-ldrivers.am64x.r5f.ti-arm-clang.debug.lib -Wl,-llibc.a -Wl,-llibsysbm.a 
    makefile:153: recipe for target 'icss_sdfm_am64x-sk_r5fss0-0_freertos_ti-arm-clang.out' failed
    warning #10247-D: creating output section ".gSdfmSampleOutput" without a SECTIONS specification
     
     undefined                           first referenced
      symbol                                 in file     
     ---------                           ----------------
     SDFM_configComparatorGpioPins       ./sdfm_example.o
     SDFM_configDataFilter               ./sdfm_example.o
     SDFM_configEcap                     ./sdfm_example.o
     SDFM_configFastDetect               ./sdfm_example.o
     SDFM_configIepCount                 ./sdfm_example.o
     SDFM_disableComparator              ./sdfm_example.o
     SDFM_disableDoubleSampling          ./sdfm_example.o
     SDFM_enable                         ./sdfm_example.o
     SDFM_enableComparator               ./sdfm_example.o
     SDFM_enableContinuousNormalCurrent  ./sdfm_example.o
     SDFM_enableDoubleSampling           ./sdfm_example.o
     SDFM_enableEpwmSync                 ./sdfm_example.o
     SDFM_enableLoadShareMode            ./sdfm_example.o
     SDFM_enableZeroCrossDetection       ./sdfm_example.o
     SDFM_getFilterData                  ./app_sdfm.o    
     SDFM_getFirmwareVersion             ./sdfm_example.o
     SDFM_init                           ./sdfm_example.o
     SDFM_measureClockPhaseDelay         ./sdfm_example.o
     SDFM_selectClockSource              ./sdfm_example.o
     SDFM_setClockInversion              ./sdfm_example.o
     SDFM_setCompFilterOverSamplingRatio ./sdfm_example.o
     SDFM_setCompFilterThresholds        ./sdfm_example.o
     SDFM_setEnableChannel               ./sdfm_example.o
     SDFM_setFilterOverSamplingRatio     ./sdfm_example.o
     SDFM_setSampleTriggerTime           ./sdfm_example.o
     
    error #10234-D: unresolved symbols remain
    error #10010: errors encountered during linking; "icss_sdfm_am64x-sk_r5fss0-0_freertos_ti-arm-clang.out" not built
    tiarmclang: error: tiarmlnk command failed with exit code 1 (use -v to see invocation)
    gmake[1]: *** [icss_sdfm_am64x-sk_r5fss0-0_freertos_ti-arm-clang.out] Error 1
    gmake: *** [all] Error 2
    makefile:149: recipe for target 'all' failed

  • Hi

    It seems like you are not linking the SDFM driver to your project. The driver sources are present in "motor_control_sdk\source\current_sense\sdfm" folder.

    Regards

    Dhaval