AM243x Motor Control SDK  09.02.00
BISS-C Diagnostic

BISS-C diagnostic application does the following:

  • Configures pinmux, GPIO, UART, ICSS clock to 200MHz (default is 200 MHz, 300 MHz can also be used)
  • Initializes ICSS0-PRU1
  • Initializes default parameters, loads the PRU firmware & executes it.

This application is controlled with a terminal interface using a serial over USB connection between the PC host and the EVM. Please connect a USB cable between the PC and the EVM/LP. A serial terminal application (like teraterm/ hyperterminal/ minicom) is then run on the host. To configure, select the serial port corresponding to the port emulated over USB by the EVM. The host serial port should be configured to 115200 baud, no parity, 1 stop bit and no flow control.

The BISS-C receiver firmware running on ICSS0-PRU1 provides a defined interface. The BISS-C diagnostic application interacts with the BISS-C receiver firmware interface. It then presents the user with menu options to select Data ID code. The application collects the data entered by the user and configures the relevant interface. Then via the BISS-C receiver interface, the command is triggered. Once the command completion is indicated by the interface, the status of the transaction is checked. If the Status indicates success, the result is presented to the user.

Note
BiSS-C firmware will only run with ICSSG Core Clock running at 200 MHz or 300 MHz frequency. 225/250/333 MHz values are not supported due to clock divider requirements.

Channel Selection In Sysconfig

Channel Selection In Sysconfig
BiSS-C configuration selection between Single/Multi channel

Important files and directory structure

Folder/Files Description
${SDK_INSTALL_PATH}/examples/position_sense/bissc_diagnostic
bissc_diagnostic.c BISS-C diagnostic application
${SDK_INSTALL_PATH}/source/position_sense/bissc
firmware/ Folder containing BISS-C PRU firmware sources.
driver/ BISS-C diagnostic driver.

Supported Combinations

Parameter Value
CPU + OS r5fss0-0 freertos
ICSSG ICSSG0
PRU PRU1 (single channel, multi channel using single PRU)
PRU1, RTU-PRU1, TXPRU1 (multi channel using three PRUs - load share mode)
Toolchain ti-arm-clang
Board am243x-lp (2 channel and 1 channel examples)
Example folder examples/position_sense/bissc_diagnostic

Steps to Run the Example

Hardware Prerequisites

Hardware Setup

Hardware Setup(Using Booster Pack & AM243x-LP)

Hardware Setup of Booster Pack + LP for BISS-C

Booster Pack Jumper Configuration

Designator ON/OFF Description
J11 OFF VSENSE/ISENSE select
J13 OFF VSENSE/ISENSE select
J17 Pin 1-2 Connected SDFM Clock Feedback Select
J18/J19 J19 installed: sets VSENSOR1 to 5.0V Axis 1: Encoder/Resolver Voltage Select
J20/J21 J21 installed: sets VSENSOR2 to 5.0V Axis 2: Encoder/Resolver Voltage Select
J22 OFF Axis 1: Manchester Encoding Select
J23 OFF Axis 2: Manchester Encoding Select
J24 OFF Axis 1: RS485/DSL MUX
J25 OFF Axis 2: RS485/DSL MUX
J26 OFF VSENSE/ISENSE Select
J27 ON 3WIRE/SDFM MUX
J28 OFF 3WIRE MUX

Build, load and run

  • When using CCS projects to build, import the CCS project and build it using the CCS project menu (see Using SDK with CCS Projects ).
  • When using makefiles to build, note the required combination and build using make command (see Using SDK with Makefiles )
  • Launch a CCS debug session and run the executable, see CCS Launch, Load and Run
  • Refer to UART terminal for user interface menu options.

Sample Output

Shown below is a sample output when the application is run:

BISS-C Sample Output

Shown below is a sample output to enable safety and the safety encoder results:

BISS-C Sample Output when safety is enabled

Test Case Description

# Name Description Pass/fail Criteria
1 Data readout (absolute position data) In this command we will receive: Absolute rotor position value, errors, and warnings CRC success with ABS, E, W and CRC values printed in the terminal.
2 Control Communication In this command we will receive: Absolute rotor position value, errors, and warnings, along with the result of the control communication command. CRC success with ABS position value, E, W and CRC values of position data along with the control communication result printed in the terminal.
3 Start periodic continuous mode In this command we will receive: Absolute rotor position value, errors, and warnings periodically. Rotate the rotor of motor and see the changes in Position value on UART. 0 CRC errors with ABS position value, E, W and CRC values printed in the terminal.
4 Enable safety mode In this command we will enable Safety mode by using control communication: Safety should be enabled and CRC and Sign of Life counters will displayed from next position data request