AM335x GP IDK Diagnostics User Manual

Disclaimer: These diagnostics and source code are provided as a reference and aid to the tests performed on all GP and IDK boards post production. No support is implied or provided.

For supported and maintained source, drivers, and examples it is highly advised to utilize the Starterware project. Starterware information can be found at http://www.ti.com/tool/starterware-sitara.

Introduction
This document describes the usage of diagnostic suite software for the Texas Instruments AM335X General Purpose(GP) and Industrial Design Kit(IDK), also known as Industrial Automation(IA), EVM hardware board.

When diagnostic suite is executed, logo is displayed first. Then software will automatically detect the boards defined in the EEPROM. If the EEPROM read fails or unexpected data is found, the user will be prompted to enter board specifics. "1. Detecting the Base Board""2. Detecting the GP Board""3. If GP Board is available, then a. Detecting the LCD Board""b. Reading the Profile ID from CPLD"4. If GP Board is not available, then detecting the IA Board "5. Reading the Board versions""6. Based on the detection, it loads the test configurations" The profile ID will be read from CPLD. If the CPLD read is failed, then the user has to enter profile number.

This profile information is not valid for IA Board and Base Board; by default profile 0 is set. User can define appropriate valid profile number for GP board with range of 0-7.

Main Menu Overview
"All Peripherals Test with recursive" "This option will run all tests with the option to repeat recursively any number of times." "Group / Individual Peripherals Test" "This option will allow selection of groups or individual tests. Groups of tests are entered as a comma separated list." "Base Board Peripherals Test" "This option displays only base board tests to be selected." "GP Board Peripherals Test" "This option displays only GP board tests to be selected. Note: This option is only available when a GP board was detected." "LCD Board Peripherals Test" "This option displays only LCD board tests to be selected. Note: This option is only available when a LCD board was detected." "IA Board Peripherals Test" "This option displays only IA board tests to be selected. Note: This option is only available when an IA board was detected."

ESC Key – Quit the Tests
A double press of the “ESC” key will exit all tests, print results, and return to the menu.

A single press of the “ESC” key will exit a single test when multiple tests are executing, then proceed to the next test.

Introduction
This section describes the prerequisite steps required to perform the peripheral tests on the AM335x EVM Boards.

Base Board
Following are the modules present in the baseboard. The steps needed to validate the module are described individually in the respective sections. "Base board DDR" "No prerequisite steps needed." "Base board I2C EEPROM" "No prerequisite steps needed." "Base board NAND FLASH" "No prerequisite steps needed." "Base board SD/MMC Card" "User has to insert the Working SD/MMC Card in the Base board SD/MMC Card slot before starting the test, else test will be failed." "Base board USB" "A: Be prepared for the USB0 OTG driver tests with the necessary USB cables, USB device (mass storage device) and USB host machines (windows) ready before start of test.""Use proper USB micro ended cables:" "1. To connect a USB device (eg. Usb mass storage device) to the USB0 port, USB micro A end should be connected to the board. And other end to the USB device" "2. To connect a USB host (eg. Windows machine) to the USB0 port, USB micro B end should be connected to the board. And other end to the USB host." "B: Before the start of tests, do not connect any USB device to USB0 and USB1 ports and do not connect any USB host machine to USB0 and USB1 ports" "C: Only a USB port under test should be connected with the cable at a given instance. Say for example, if the Host mode test is running in USB0 port, then no cable should be connected to the USB1 port and vice versa." "D: USB Device Mode test for USB0 port and Host Mode test for both the USB0 and USB1 port. USB test is divided to three tests in diagnostics suite as below:" "1. USB0 port host mode Test" "2. USB0 port device mode Test"  "3. USB1 port host mode Test (refer USB0 host mode test for instructions)"  "E: Following are the steps to help the user to run the USB OTG test:" "1. Do not connect any USB device to USB0 port and Do not connect any USB host machine to USB0 port"  "2. Begin the USB OTG test from the menu." "3. First the USB0 Host mode is tested." "4. When the message ‘Please connect a USB device to USB0 port and Press Enter, is displayed, then connect any USB mass storage device to the USB0 port and wait for a while." "5. The test will start by displaying ‘USB Enumeration begins for USB0’" "6. The USB0 Host mode test result will be displayed." "7. Next, the USB0 Device mode will be tested." "8. When the message ‘Please connect USB Host Machine to USB0 port and ENTER’ is displayed, try connecting any USB host machine (eg., windows machine), to the USB0 port and wait for a while." "9. The test will start by displaying ‘USB Host Machine Connected to USB0 port’" "10. The USB0 Device mode test result will be displayed." "Base Board Ethernet" "The Ethernet tests are performed in 10Mb, 100Mb, and 1000Mb with the following tests performed for each speed:" "1. MAC Loopback" "2. PHY Internal Loop back"  "3. PHY External Loop back"  "For the PHY External Loop back test, an external loop back cable is required. This cable needs to be attached before the start of this test. The pin out of this loop back cable is created by shorting the pins as below:" "As per EIA/TIA 568A cable colors:" "Pin 1 (White with green stripe) – Pin 3 (White with Orange stripe)"  "Pin 2 (Green with white stripe/ solid green) – Pin 6 (Orange with white stripe/Solid Orange)." "Base Board COM CONNECTOR UART1" "Ensure that the loopback is provided for the UART1 by connecting the pin 66 and pin 68 of the J11 connector in the base board." "Base Board COM CONNECTOR AUDIO" "Ensure that the loopback is provided for the AUDIO by connecting the pin 56 and pin 58 of the J11 connector in the base board."

GP Daughter Board
Following are the modules present on the GP daughterboard. The steps needed to validate the module are described individually in the respective sections. "GP Board I2C EEPROM""No prerequisite steps needed." "GP Board NAND Flash" "No prerequisite steps needed." "GP Board I2C GPIO" "This test has the user check the status of LED on the GP board. It will display the patterns of binary numbers from 0 to 15 for validation. The LED’s are present near the push buttons on the GP Board." "GP Board I2C Accelerometer" "No prerequisite steps needed." "GP Board DCAN" "There are two tests available in the DCAN, one is internal loopback and the other is data transfer to the remote node. Internal Loop back mode is enabled by default. Remote data transfer, or DCAN board-board test, is a user selectable option. Note: For remote node data tests two GP EVM boards must have CAN0 ports connected together via CAN Cable. The second EVM board will need to be booted with the “am335x_gpevm_dcan_utility” binary. Ensure the CAN cable is connected prior to running the test. This test requires the GP EVM to run in profile 1 mode." "GP Board Audio Codec" "This test requires a speaker to be connected to the line-out jack and a PC lineout to be connected to the line-in jack. There are two parts to the test as described below:" "1. A tone is played is for 5 seconds on the line-out jack." "2. Audio played from the PC to the line-in jack will be repeated on the line-out jack." "GP Board SPI Flash" "No prerequisite steps needed." "GP Board Temp Sensor" "Apply some heat to the TMP275 temperature sensor found at U13 when requested." "GP Board GPIO LED" "Confirm the status of the four LEDs on the GP board found near the Buzzer." "GP Board Audio Buzzer" "Confirm the sound from the Audio Buzzer." "GP Board Push Button" "Press any of the buttons found on row “A” followed by any of the buttons found on row “B”." "GP Board HAPTIC Vibrator" "Confirm the HAPTIC vibrator does vibrate." "GP Board Volume Control" "Press the volume control push buttons on the GP board." "GP Board UART" "Connect the UART Loop back cable in the corresponding UART port before starting the test. Note: In GP Board for each profile UART loop back cable to be connected to the different DB9 connectors, the details are mentioned in the following table." "GP Board Ambient Light sensor""Increase and decrease light when requested. Note: Ambient light Sensor is a four pin IC with transparent Outer Body and body has some light yellow shade, it is near to EEPROM CAT24C256W U1 and JTAG connector on GP board which is used for CPLD programming." "GP Board ADC""Voltages on the ADC pins will need to be changed." "GP Board NOR Flash""No prerequisites are required for this test."

IA Daughter Board
"IA Board I2C EEPROM" "No prerequisite steps needed." "IA Board UART" "Connect the UART loopback cable in the corresponding UART port before starting the test." "IA Board NAND Flash" "No prerequisite steps needed." "IA Board DCAN" "See GP Board DCAN above. Note: For remote node tests, the second board must be a GP EVM board. Support for two IA boards is currently not supported." "IA Board EMAC100" "Ethernet loopback cable must be connected to EMAC100 port. See section 2.1.6 regarding loopback cable." "IA Board LED Driver (TPIC2810)" "Confirm LEDs change status based on the 0-255 decimal number binary pattern across the 8 LEDs." "IA Board SPI Flash" "No prerequisite steps needed." "IA Board ICSS Ethernet" "ICSS Ethernet test requires a method of Ethernet packet generation and capture. Note: Various hardware tools exist from Ixia and Spirent. Software options are available such as Wireshark for capture and Ostinato for generation, both available for Linux, Windows, and Mac OS X platforms. Once test is running, the following steps will need to be performed via Ethernet generation and capture." "-Send Ethernet packet to Port 0 and/or Port 1. -Use Ethernet capture to capture return packet. Packets sent to Port 0 will be echoed back. Packets sent to Port 1 will echoed back with a modified source address." "IA Board Serializer (SN65HVS882 - SPI)" "Apply 25V DC to connector J16. Apply jumpers as desired to J15. Serializer will read status of J15 and return decimal value. Example: For 10101010 status of J15 connector, data return from Diagnostic is 170 i.e . decimal value for 0xAA." "IA Board RS-485" "No prerequisite steps needed." "IA Board Stellaris" "Stellaris processor must be programmed. See below steps." "a. Setup a JTAG emulator and CCS to support both the Piccolo TMS320F28027(first in scan chain) and the Stellaris LM3S5R31 (see screen shot below)"" b. Connect the JTAG emulator to J18 on the Industrial Daughterboard c. Power on the EVM and connect to the Stellaris target in CCS d. Load the program stellaris_test_rev1_00.out e. Run the program." "Note: To confirm Stellaris programming, LED D36 will be blinking. SW3 near D36 can be used to reset Stellaris MCU." "IA Board Piccolo" "Piccolo processor must be programmed correctly. See below steps." "a. Setup a JTAG emulator and CCS to support both the Piccolo TMS320F28027(first in scan chain) and the Stellaris LM3S5R31 (see screen shot below)"" b. Connect the JTAG emulator to J18 on the Industrial Daughterboard c. Power on the EVM and connect to the Piccolo target in CCS d. Load the program C2000_Foc_test_rev1_00.out e. Run the program" "Note: To confirm Piccolo programming, LED D41 will be blinking." "IA Board Motor Control" "Piccolo processor must be programmed correctly for DRV8412 to come out of reset. See Piccolo section above. SW2 Switch must be all ON Add jumpers on J33, J34, J35, J36 and J37 Supply 24V to IA Board Probe the pins as below to confirm PWM_A, PWM_B, PWM_C and PWM_D signals are toggling." "PWM_A = pin J20 PWM_B = pin J21 PWM_C = pin J22 PWM_D = pin J24"

Introduction
This section describes the prerequisite steps required to build the Diagnostics Code in the Code Composer Studio.

Build Diagnostics
"1. Extract the am335x_gp_idk_evm_Diagnostics.zip file to a Folder and note the Path. 2. Open the CCS compiler. 3. Import the diagnostic suite code to CCS by Project&gt;&gt;Import Existing CCS/CCE EclipseProject. 4. Set “search-directory” to the previously extracted am335x_gp_idk_evm_Diagnostics. 5. Select the “am335xDiagnostics” in the “Discovered Projects” field and click “Finish”. 6. Use Ctrl+B or Project &gt;&gt;Build All to build the diagnostic suite. Check the Console window for compilation’s result." "Notes: " "a. The compiled files are found in &lt;project directory&gt;/Debug/ b. Build options for the project automatically convert the default *.out file to a *.bin file and to a *_ti.bin file. c. For the GP EVM, the *_ti.bin file must be renamed to “app” to boot directly from the MMC card. d. For the IDK EVM, the *.bin file must be renamed to “u-boot.bin” to boot directly from the MMC card."

Requirements
Windows system with USB based MMC Card reader. HP USB Disk Storage Format Tool for Windows (found at download.cnet.com)

Steps to create bootable MMC card (Windows)
"1. Download, install, and launch HP USB Storage Format Tool. 2. Select USB reader with MMC card inserted. 3. Perform “Quick Format”. 4. Copy all files for specific EVM platform to MMC card. a. MLO and u-boot.bin for IDK EVM. b. MLO and app for GP EVM." 5. Now MMC card is ready for AM335x booting

Downloads
Binaries