AM263Px Motor Control SDK  10.02.00
Release Notes 10.02.00

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 AM263PX Industrial Communications SDK Release Notes 10.02.00 and AM263PX MCU+ SDK Release Notes 10.02.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

New in this Release

Feature Module
Nikon A-format version 3.0 Position Sense Nikon A-format
Support for up to 8 encoders in bus connection Position Sense Nikon A-format

Device and Validation Information

SOC Supported CPUs EVM Host PC
AM263Px R5F AM263Px ControlCard Rev A (referred to as am263px-cc in code).
Windows 10 64b or Ubuntu 18.04 64b or MacOS
AM263Px R5F AM263Px LaunchPad Rev E2 (referred to as am263px-lp in code).
Windows 10 64b or Ubuntu 18.04 64b or MacOS

Dependent Tools and Compiler Information

Tools Supported CPUs Version
Code Composer Studio R5F 12.8.1
SysConfig R5F 1.23.0 build, build 4000
TI ARM CLANG R5F 4.0.1.LTS
FreeRTOS Kernel R5F 11.1.0
LwIP R5F STABLE-2_2_0_RELEASE
Mbed-TLS R5F 2.13.1

Key Features

Position Sense

Module Supported CPUs SysConfig Support OS Support Key features tested Key features not tested
BiSS-C R5F YES FreeRTOS, NORTOS Single channel, point-to-point connection, control communication, automatic processing delay detection and compensation, Interface speed of 1, 2, 5, 8, and 10 MHz, Boosterpack with LP-AM261 Daisy chaining, Multi Transmission Mode
EnDat R5F YES FreeRTOS, NORTOS Single channel, Continuous mode, Recovery Time for 2.2 command set, Interface speed of 5 and 10 MHz, Boosterpack with LP-AM261 Encoder receive communication command
Nikon A-format R5F YES FreeRTOS, NORTOS Nikon A-format version 2.1 and version 3.0, Single channel, Multi channel using single PRU core, point-to-point connection, bus connection up to 7 encoders, Individual and multiple transmission mode with encoder addresses ranging between ENC1-ENC8, baud rates from 2.5 MHz, 4 MHz, 6.67 MHz, 8 MHz, and 16 MHz, up to 40-bit absolute position (single turn + multi turn) data with additional information, long cable (upto 100 meters), Boosterpack with LP-AM261 Bus connected with 8 encoders (Tested up to 7 encoders)
Tamagawa R5F YES FreeRTOS, NORTOS Absolute position, Encoder ID, Reset, EEPROM Read, EEPROM Write, 2.5 Mbps Encoder, Boosterpack with LP-AM261 5 Mbps encoder

Real Time Libraries

Module Supported CPUs SysConfig Support OS Support Key features tested Key features not tested
Control R5F YES FreeRTOS, NORTOS Field Weakening Control, Maximum Torque Per Ampere, Strator voltage frequency generator support -
Digital Control Library (DCL) R5F YES FreeRTOS, NORTOS Linear PI, Linear PID, Linear PI with double integrator (PI2), Direct Form 1 (first order), Direct Form 1 (second order), Direct Form 1 (third order), Direct Form 2 (second order), Direct Form 2 (third order), Non-linear PID controller -
Observer R5F YES FreeRTOS, NORTOS Sensored eQEP-based encoder, Hall sensor, Sensorless Enhanced Sliding Mode Observer, both speed measurement for sensored (speedcalc) and sensorless (speedfr) -
SFRA R5F YES FreeRTOS, NORTOS Software Frequency Response Analyzer support -
Transforms R5F YES FreeRTOS, NORTOS Clarke transformation, Park transformation, Inverse Park transformation, Space Vector Generation (SVGEN), Common-mode subtraction approach, DPWM Generation (Part of SVGEN), Maximum Modulation, Minimum Modulation, SVGEN current reconstruction for single-shunt (SVGENCURRENT), Phase voltage reconstruction in overmodulation (VOLTS_RECON) -
Utilities R5F YES FreeRTOS, NORTOS Angle Compensation Generator, Step Response, Datalog, Trapezoid generator -

Fixed Issues

ID Head Line Module Applicable Releases Resolution/Comments
PINDSW-8087 Tamagawa: UART clock source is used for TX fifo Position Sense Tamagawa 10.0 onwards -
PINDSW-8358 BiSS-C/Nikon/EnDat/Tamagawa: Exiting Periodic Trigger mode UART option does not work Position Sense BiSS-C, Position Sense EnDat, Position Sense Nikon A-format, Position Sense Tamagawa 10.0 onwards -
PINDSW-8399 EnDat: Implementation of Recovery time is not as per specification (RT counter is missing) Position Sense EnDat 10.0 onwards -
PINDSW-9123 Nikon: Data reversal not done correctly for EEPROM and ID commands Position Sense Nikon A-format 10.0 onwards Fixes done in nikon_update_eeprom_addr, nikon_update_eeprom_data, nikon_update_id_code and nikon_get_pos
PINDSW-9124 Nikon: Data reversal not done correctly for encoder status received in response Position Sense Nikon A-format 10.0 onwards Fixes done in nikon_get_pos
PINDSW-9127 Nikon: For commands 8 to 12, 9 requests are sent instead of 8 Position Sense Nikon A-format 10.0 onwards Fixes done in nikon_get_pos
PINDSW-9128 Nikon: For EEPROM commands, request is sent 2 times from firmware Position Sense Nikon A-format 10.0 onwards Fixes done in nikon_get_pos, and updates in the application code for EEPROM command handling
PINDSW-9131 Nikon: EEPROM read for temperature does not use 10 bit data Position Sense Nikon A-format 10.0 onwards Fixes done in nikon_get_pos, and updated the application code for EEPROM command handling
PINDSW-9144 Nikon: For EEPROM/ID commands, same data is used for all channels in multi-channel mode Position Sense Nikon A-format 10.0 onwards Added provision for different address/data per channel
PINDSW-9180 Nikon: 10 us delay between CDF-MDF and MDF-MDF is used for commands needing MDF Position Sense Nikon A-format 10.0 onwards -
PINDSW-9238 Nikon: IEP compare value is not set correctly for continuous mode Position Sense Nikon A-format 10.0 onwards Change the units to IEP clock cycle count
PINDSW-9239 Nikon: nikon_config_periodic_trigger assumes fixed receive size of response Position Sense Nikon A-format 10.0 onwards Remove receive size hard-coding in driver
PINDSW-9248 EnDat: RX arm delay and TST delay settings are hard-coded for a 200MHz core clock Position Sense EnDat 10.0 onwards -
PINDSW-9255 Nikon: If Debug log/scan is removed and encoder resolution is fixed in application code, initialization fails Position Sense Nikon A-format 10.0 onwards Add 0.5 seconds delay in application after powering up the encoder
PINDSW-9308 Nikon: nikon_calc_clock API does not handle baud rate correctly Position Sense Nikon A-format 10.0 onwards -
PINDSW-9312 Nikon: Data type of velocity and acceleration is unsigned integer Position Sense Nikon A-format 10.0 onwards -
PINDSW-9317 BiSS-C: bissc_update_data_len does not set number of encoders correctly Position Sense BiSS-C 10.0 onwards -
PINDSW-9372 BiSS-C/Nikon: SysConfig shows option for load share mode Position Sense BiSS-C, Position Sense Nikon A-format 10.0 onwards This option is not relevant for AM263Px
PINDSW-9385 EnDat: Recovery time does not work with EnDat 2.2 supplementary commands for certain EnDat frequencies Position Sense EnDat 10.0 onwards -

Known Issues

ID Head Line Module Applicable Releases Workaround
PINDSW-9179 Nikon: PRU Firmware gets stuck if encoder does not respond with number of bytes expected by driver Position Sense Nikon A-format 10.0 onwards -

Upgrade and Compatibility Information for Motor Control SDK 10.02.00

This section lists changes which could affect user applications developed using older SDK versions. 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
Position Sense Nikon A-format Multiple variables Refactor code to avoid unsigned to signed and signed to unsigned conversion -

Drivers

Module Affected API Change Additional Remarks
Position Sense Endat Endat_ChRxInfo Added new variables: Endat_ChRTInfo and Removed variables: resvdInt2, resvdInt3" andrecoveryTime` -
Position Sense Endat struct pruss_xchg Added new variables: enableRTM -
Position Sense Nikon A-format structure pos_data_info Added variables raw_data4, raw_data5, velocity and acc Needed for Nikon A-format version 3.0
Position Sense Nikon A-format structure alm_bits Added variables ov_spd_s, st_err_s, ps_err_s, busy_s and inc_err_s Needed for Nikon A-format version 3.0
Position Sense Nikon A-format structure alm_bits Updated variable inc_err's name to inc_err Updated as per Nikon A-format version 3.0
Position Sense Nikon A-format structure nikon_priv Added parameters tx_rx_clock_source and protocol_version Needed for configuring clock source selection and specifying protocol version respectively
Position Sense Nikon A-format structure nikon_priv Updated parameter tx_mdf

Updated the variable type from uint32_t to 2D array of type uint32_t to store different tx_mdf data for each channel and each MDF

Position Sense Nikon A-format structure nikon_priv Updated parameter mem_data Updated the variable type from 1D array of type uint32_t to 2D array of type uint32_t to store different mem_data data for each channel and each MDF
Position Sense Nikon A-format structure nikon_priv Added variable velocity_coefficient, pm_alm_field, and bank_error Needed for Nikon A-format version 3.0
Position Sense Nikon A-format API nikon_init Added input parameters tx_rx_clock_source and protocol_version Needed for configuring clock source selection and specifying protocol version respectively
Position Sense Nikon A-format structure nikon_pruicss_xchg Updated parameter mdf_frame Updated the variable type from 1D array of type uint32_t to 2D array of type uint32_t to store different mdf_frame data for each channel and each MDF
Position Sense Nikon A-format structure nikon_pruicss_xchg Add parameter num_mdf It stores the number of MDFs to be sent
Position Sense Nikon A-format structure nikon_pruicss_xchg Removed delay_300us, delay_30ms, delay_10us and added delay_1us 300 us, 30 ms and 10 us delay values are not needed in firmware. 1 us is needed for delay between CDF and MDFs.
Position Sense Nikon A-format structure nikon_pruicss_xchg Renamed variable icssg_clk to icss_clk -
Position Sense Nikon A-format API nikon_get_pos CRC is not removed while copying data into last raw data byte for all commands (priv->pos_data_info[ch].raw_data<x>[enc_num]) -
Position Sense Nikon A-format APIs nikon_get_pos, nikon_init, nikon_generate_cdf, nikon_reverse_bits, nikon_config_load_share Refactor code to avoid unsigned to signed and signed to unsigned conversion. Update the data type of function arguments. -
Position Sense Nikon A-format APIs nikon_update_eeprom_addr, nikon_update_eeprom_data, nikon_update_id_code Add channel as function argument, and update the data type based on bit width needed for address, data, and ID code -