- Attention
- Also refer to individual module pages for more details on each feature, unsupported features, important usage guidelines.
-
For release notes of Industrial Communications SDK and MCU+ SDK, please refer to AM243X Industrial Communications SDK Release Notes 09.01.00 and AM243X MCU+ SDK Release Notes 09.01.00 respectively.
- Note
- The examples will show usage of SW modules and APIs on a specific CPU instance and OS combination.
Unless noted otherwise, the SW modules would work in both FreeRTOS and NORTOS environment.
Unless noted otherwise, the SW modules would work on any of the R5F's present on the SOC.
Unless noted otherwise, the SW modules would work on all supported EVMs
-
Tamagawa over SoC UART example is not supported for AM243x
New in this Release
Feature | Module |
EtherCAT-Connected, Single-Chip, Dual-Servo Motor Drive Reference Design (TIDEP-01032) | Reference Design |
Three channel BiSS-C with one PRU-ICSSG Slice | Position Sense BiSS-C |
Point-to-point and daisy chaining connection support for BiSS-C | Position Sense BiSS-C |
Multi channel BiSS-C with daisy chaining | Position Sense BiSS-C |
Multiple interface speed support | Position Sense BiSS-C |
Long cable (upto 100 meters) | Position Sense BiSS-C |
Nine Channel ICSS SDFM Examples | Current Sense SDFM |
ICSS SDFM Example with Continuous Normal Current Sampling | Current Sense SDFM |
ICSS SDFM Example with Phase Compensation | Current Sense SDFM |
Fast Detect | Current Sense SDFM |
Trip Generation using PRU-ICSS TripZone | Current Sense SDFM |
Zero Crossing Detection | Current Sense SDFM |
Three channel support with one PRU-ICSSG Slice | Position Sense HDSL |
SYNC Mode support for 1 to 10 frames per cycle and 8 kHz to 50 kHz cycle frequency | Position Sense HDSL |
API support for Parameter Channel Long Message Read and Write | Position Sense HDSL |
Add support for PIPE_D register for SensorHub Channel | Position Sense HDSL |
Add support for PIPE_D register for SensorHub Channel | Position Sense HDSL |
Long cable (upto 100 meters) with Free Run mode | Position Sense HDSL |
Two channel example with LP-AM243 + BP-AM2BLDCSERVO | Position Sense HDSL |
Compare event based command trigger support | Position Sense Tamagawa |
Two channel example with LP-AM243 + BP-AM2BLDCSERVO | Position Sense Tamagawa |
Two channel example with LP-AM243 + BP-AM2BLDCSERVO | Position Sense EnDAT |
Three channel PRU-ICSS PWM Example | PRU-ICSS PWM |
Transforms Library and Example | Real Time Libraries |
Device and Validation Information
SOC | Supported CPUs | Boards | Host PC |
AM243x | R5F | AM243x EVM (referred to as am243x-evm in code),
AM243x LAUNCHPAD (referred to as am243x-lp in code) | Windows 10 64b or Ubuntu 18.04 64b |
Tools, Compiler and Other Open Source SW Module Information
Tools / SW module | Supported CPUs | Version |
Code Composer Studio | R5F, M4F | 12.5.0 |
SysConfig | R5F, M4F | 1.18.0, build 3266 |
TI ARM CLANG | R5F, M4F | 3.2.0.LTS |
FreeRTOS Kernel | R5F, M4F | 10.4.3 |
Tiny USB | R5F | 0.14.0 |
LwIP | R5F | STABLE-2_2_0_RELEASE |
Mbed-TLS | R5F | mbedtls-2.13.1 |
Key Features
Position Sense
Module | Supported CPUs | SysConfig Support | OS Support | Key features tested | Key features not tested |
EnDat | R5F | YES | FreeRTOS, NORTOS | Single channel, Multi channel using single PRU core and three PRU cores (load share mode), Continuous mode, Recovery Time for 2.2 command set, Long cable (upto 100 meters), Boosterpack with AM243x-LP | Encoder receive communication command |
HDSL | R5F | YES | FreeRTOS, NORTOS | Single channel, Multi channel using three PRU cores (load share mode), Free Run mode, Sync mode, Short Message Read and Write, Long Message Read and Write, Pipeline Channel Data, Long cable (upto 100 meters) with single channel Free Run mode, Boosterpack with AM243x-LP | 225 MHz PRU-ICSSG Core Clock based firmware, Multi-channel with long cables(100m length), Long cable (upto 100 meters) with sync mode |
Tamagawa | R5F | YES | FreeRTOS, NORTOS | Absolute position, Encoder ID, Reset, EEPROM Read, EEPROM Write, 2.5 Mbps and 5 Mbps Encoder Support, Boosterpack with AM243x-LP | - |
BiSS-C | R5F | YES | FreeRTOS, NORTOS | Single channel, Multi channel using single PRU core and three PRU cores (load share mode), point-to-point connection, daisy chaining, control communication, automatic processing delay detection and compensation, interface speed of 1, 2, 5, 8, and 10 MHz, Long cable (upto 100 meters) | |
Current Sense
Module | Supported CPUs | SysConfig Support | OS Support | Key features tested | Key features not tested |
ICSS SDFM | R5F | YES | FreeRTOS, NORTOS | Three SDFM channels on single PRU core, Nine SDFM channels on three PRU cores (load share mode), SDFM Sync with EPWM, Single/Double Normal Current Sampling per PWM cycle, Continuous Normal Current Sampling, High and Low Threshold Comparator (Over-current detction), Fast Detect, Phase Compensation, Zero Cross Detection, Trip Generation using PRU-ICSS TripZone, Tested with SDFM clock from ECAP, Tested with 5MHz Clock from EPWM | - |
Fixed Issues
ID | Head Line | Module | Applicable Releases | Resolution/Comments |
PINDSW-6628 | HDSL: Reset value of PRST bit is not correct | Position Sense HDSL | 9.0 onwards | - |
PINDSW-6629 | HDSL: SSUM bit in EVENT_S is not set when SUMMARY is non-zero | Position Sense HDSL | 9.0 onwards | SSUM bit in EVENT_S was masked with MASK_SUM which was incorrect. |
PINDSW-6931 | Tamagawa: Firmware build failing | Position Sense Tamagawa | 9.0 onwards | - |
PINDSW-6944 | HDSL: QM increment is not correct | Position Sense HDSL | 9.0 onwards | QM updates for Safe Channel 2 were incorrect. |
PINDSW-6973 | Flash addition in SysConfig of Industrial Communications and Motor control SDK fails to load flashconfig.json due to error in file path | Motor Control SDK | 9.0 onwards | - |
PINDSW-6977 | Unable to build the examples of Industrial Communications SDK inside Motor Control SDK | Motor Control SDK | 9.0 onwards | - |
PINDSW-7048 | HDSL: SCE bit in ONLINE STATUS 1 gets cleared before seeing a correct CRC in safe channel | Position Sense HDSL | 9.0 onwards | - |
PINDSW-7115 | Gmake based command for PRU empty project build fails in Motor Control SDK and Industrial Communications SDK | Motor Control SDK | 9.0 onwards | - |
PINDSW-7125 | EnDat: Initialization is failing for multi-channel single pru example with LP | Position Sense EnDat | 9.0 onwards | - |
PINDSW-7126 | HDSL: Protocol reset is seen multiple times with certain encoders | Position Sense HDSL | 9.0 onwards | - |
PINDSW-7129 | HDSL: Stuffing Data in Learn state is incorrect with Free Run Mode | Position Sense HDSL | 9.0 onwards | - |
PINDSW-7157 | HDSL : Sync mode does not work for ES value greater than 1 | Position Sense HDSL | 9.0 onwards | - |
PINDSW-7467 | Industrial Communications SDK modules are not visible in the SysConfig of Motor Control SDK | Motor Control SDK | 9.0 onwards | - |
PINDSW-7473 | HDSL : 100 meter cable length does not work for Free Run mode in 300Mhz PRU clock | Position Sense HDSL | 9.0 onwards | - |
Known Issues
ID | Head Line | Module | Applicable Releases | Workaround |
PINDSW-5537 | HDSL not working with 225 MHz PRU-ICSSG Core Clock Frequency | Position Sense HDSL | 9.0 onwards | Use 300 MHz frequency for PRU-ICSSG Core Clock |
PINDSW-5690 | HDSL: EDGE register is not updated | Position Sense HDSL | 9.0 onwards | - |
PINDSW-6486 | HDSL: RSSI register shows higher values than expected for a non-noisy setup | Position Sense HDSL | 9.0 onwards | - |
PINDSW-6544 | SDFM: Incorrect samples seen intermittently with EPWM as SDFM clock | Current Sense SDFM | 9.0 onwards | Use 5MHz SDFM clock from EPWM1 (tested with 5MHz clock from EPWM) or use PRU-ICSSG ECAP as SDFM clock source |
PINDSW-6630 | HDSL: POS bit is not set during initial fast position alignment | Position Sense HDSL | 9.0 onwards | - |
PINDSW-7130 | HDSL: Few protocol resets seen during initialization with Free Run mode on AM243x-LP | Position Sense HDSL | 9.0 onwards | - |
PINDSW-7158 | HDSL: Reset Value of SSUM bit is not correct | Position Sense HDSL | 9.0 onwards | - |
PINDSW-7163 | HDSL: Trailer data contains 4 zeros instead of 5 | Position Sense HDSL | 9.0 onwards | - |
PINDSW-7474 | HDSL : 100 meter cable length does not work for sync mode in 300Mhz PRU clock | Position Sense HDSL | 9.0 onwards | - |
PINDSW-7480 | HDSL: Continuous short/long message requests cause PRU to get stuck | Position Sense HDSL | 9.0 onwards | - |
Limitations
ID | Head Line | Module | Reported in Release | Applicable Devices | Workaround |
MCUSDK-208 | gmake with -j can sometimes lock up Windows command prompt | Build | 7.3.0 | AM64x, AM243x | Use bash for windows as part of git for windows or don't use -j option |
Upgrade and Compatibility Information for Motor Control SDK 09.01.00
- Attention
- When migrating from MCU+ SDK, see Migration Guide for more details.
This section lists changes which could affect user applications developed using Motor Control SDK 09.00.00. Read this carefully to see if you need to do any changes in your existing application when migrating to this SDK version relative to previous SDK version. Also refer to older SDK version release notes to see changes in earlier SDKs.
Examples
Module | Affected API | Change | Additional Remarks |
| | | |
Drivers
Module | Affected API | Change | Additional Remarks |
Position Sense HDSL | HDSL_write_pc_buffer | Updated parameters to take only buffer offset and data, instead of data for all buffers. | - |
Current Sense SDFM | SDFM_init | Added new parameter for PRU core Id. | - |
Current Sense SDFM | SDFM_configComparatorGpioPins | Removed parameter: threshold_type . | - |
Current Sense SDFM | Structure: SDFM_CfgTrigger | Added new variable: en_continuous_mode . | -
|
Current Sense SDFM | Structure: SDFM_ChCtrl | Added new variables: en_fast_detect , en_phase_delay , clock_phase_delay & clock_edge . | - |
Current Sense SDFM | Structure: SDFM_ThresholdParms | Added new variables: zeroCrossTh , zeroCrossThstatus , zeroCrossEn , lowThStatus and highThStatus . | - |
Current Sense SDFM | Structure: SDFM_Cfg | Added new variables: fd_window , fd_zero_max , fd_zero_min , fd_one_max and fd_one_min . | - |
Current Sense SDFM | Structure: SDFM_Interface | Added new variables: sampleBufferBaseAdd and firmwareVersion . | - |