TCIEVMK2L Hardware Setup

From Texas Instruments Wiki
Jump to: navigation, search

Last updated: 01/12/2016

Hardware Setup

NoteNote: The EVM board is sensitive to electrostatic discharges (ESD). Use a grounding strap or other device to prevent damaging the board. Be sure to connect communication cables before applying power to any equipment.

Attach the Ethernet cable

Using the Ethernet cable supplied, connect one end of the cable to the Ethernet Port 0 (At bottom one) on the EVM and the other end to your PC. The below picture shows which Ethernet Port is port 0:


Connect the JTAG interface

Use the USB to USB mini-B cable provided. Connect the USB mini-B connector to the USB mini-B interface near to the RST_PWR (Red color) button on the EVM, and the USB connector to your PC. This enables XDS-2xx emulation and is directly useable by CCS. If you are using a different JTAG, you can connect it at MIPI60 connector (EMU1).

Set the boot mode switch SW1

SPI Little Endian Boot mode (Default factory setting)

 SW1 - 4(ON) 3(ON) 2(OFF) 1(ON)


NoteNote: Here a switch on “ON” position should be considered as “1”.

No Boot/JTAG DSP Little Endian Boot mode

 SW1 - 4(ON) 3(ON) 2(ON) 1(ON)

Attach the serial port cable to the SoC UART port

Connect the SoC UART port to PC using the serial cable provided with the EVM. The SoC UART port is the 4-pin white connector COM1 of the EVM.

Start Tera Term or HyperTerminal and set configuration to

  • Baud Rate or Bits per second: 115200
  • Data Bits: 8
  • Parity: None
  • Stop Bits: 1
  • Flow Control: None

Connect the power cable

Connect the power cable to the EVM power jack on the board. To be ESD safe, plug in the other end of the power cable only after you have connected the power cord to the board. Then turn on the board.

DIP Switch and Bootmode Configurations

EVM SW1 switch Bootmode Configuration

The table below shows the bootmode combinations for the BMC v1.1.0.x. and value selected from internal flash memory of LM3s2d93. Bootmodes 0-7 are read-only, and 8-15 are user-configurable.

DIP Switch settings Selected

High_value of that bootmode

Low_value of that bootmode

Selected bootmode




ARM NAND With CSISC2_0_MUX_SEL set to 0




DSP No Boot








ARM I2C Master












Sleep with Max PLL and ARM Bypass




Sleep with Max PLL








Sleep with Slow PLL and ARM Bypass




DSP SPI-boot




ARM I2C Master












Sleep with Slow PLL and Slow ARM PLL




DSP No-Boot – With CSISC2_0_MUX_SEL set to 1

How To Guides

Host driver for on-board mini-USB connector

The K2L EVM has a CP2105 device on-board. A driver must be installed on the host PC in order to be able to communicate with the EVM using the CP2105 mini-USB connector located at the corner edge of the EVM. The driver can be downloaded from CP2105 driver download.

Both Linux and Windows host machine drivers can be downloaded from this page. For Linux host machine, please follow the instructions given in the release notes. There are two versions of drivers for Linux kernel version 3.x.x and 2.6.x. Please download appropriate drivers after identifying the correct kernel version of the user’s host machine.

NoteNote: Before testing the USB connection, make sure that the mini-USB cable is plugged into the port on the base board.

After installing the driver and connecting the USB cable, two COM ports should be visible in the list of COM ports available to connect to in the PC Host terminal console. The lower COM port (Enhanced) corresponds to the SoC UART and the higher (Standard) one corresponds to the MCU UART.

BMC Version Check and Update

BMC, or Board Management Controller, takes care of the power, clocks, resets, bootmodes, etc. of the EVM.

You can check the version by:

  1. Opening a hyperterminal or another similar type of console application.
  2. Set COM Port to higher value
    • When you connect to CP2105 mini-USB on the EVM it will provide 2 COM port connections, one to the SOC UART and one to BMC UART.
    • The SOC UART will always be the “Enhanced” COM port, for example COM6. (Actual COM PORT values will vary).
  3. Set COM port properties appropriately:
    • Baud Rate or Bits per second: 115200
    • Data Bits: 8
    • Parity: None
    • Stop Bits: 1
    • Flow Control: None
  4. At BMC prompt type 'ver' (no quotes)
  5. Check BMC version


If an in-field update is needed, downloaded the latest version TBD (labeled “BMC”) and follow instructions below.

Prepare EVM for in-field update

  1. Remove power to the EVM.
  2. Set boot mode to "No Boot mode” (see above)
  3. Remove the MCU_BOOTSELECT (CN13) jumper (see picture below for location of jumper.)
  4. Make sure your USB cable is connected to CP2105 mini-USB (not XDS200 Emulator USB) OR connect 4pin UART cable to J1: MCU UART connector.
  5. Make sure no HyperTerminal/Console connected to BMC COM port are open or active.
  6. Use the LM Flash Programmer (available here) to update the firmware, as detailed in the steps below.


Perform in-field update

  1. Apply power to the EVM. No LED's will be illuminated and no LCD backlight or characters will be on because the BMC is waiting for a command rather than executing from Flash.
  2. Open the LM Flash programmer utility. (Default location Start Menu -> All Programs -> Texas Instruments -> Stellaris -> LM Flash Programmer -> LM Flash Programmer )
  3. In the LM Flash Programmer Utility ‘Configuration’ tab, in the interface section, select ‘Serial (UART)’ from the drop-down box on the left.
  4. Select the BMC COM Port (the same COM port used to issue the ver command earlier), and set the ‘Baud Rate’ to 115200.
  5. Set ‘Transfer Size’ to 60, and make sure ‘Disable Auto Baud Support’ is unchecked. See figure below.
  6. In the ‘Program’ tab, Browse to the location of the binary file containing the firmware update, and select it.
  7. Leave all other options as default, and press the ‘Program’ button.
  8. After the programming is complete, power off the board.
  9. Reconnect the jumper.
  10. Open the HyperTerminal/Console for the BMC COM port.
  11. Apply power to the EVM. When BMC completes initialization of board it will show latest version of BMC in Console.
  12. If step 9 was done after power was applied, just type "ver" at BMC prompt.


UCD Power Management Update

There is one power management module (a.k.a. UCD) located on the EVM. It can be identified by its address: 104(68h). Each module contains non-volatile registers that determine its operation. It may be necessary to update these registers in the field after the board has been shipped.

This update can be performed through the BMC, which can issue commands to the UCD modules to update the register settings. The Power Management Configuration Update Tool performs the task of sending commands to the BMC to get the current module versions, and perform updates using configuration files.

The latest version of the tool is available from TBD along with instructions on using the tool, and the latest configuration files (txt files). Please follow the instructions provided to check the current module versions, and update them accordingly.

NoteNote: The DIP switch configuration of the board when running the update is irrelevant.

Configure EVM to DSP Big Endian Mode

To set DSP as Big Endian the LSB of the lowest word of the BMC bootmode must be set to 0. BMC bootmodes 0 to 7 are read-only; bootmodes 8 to 15 are customizable.

Here are the steps for setting Big Endian for DSP No-Boot bootmode. These steps will overwrite the bootmode setting that is currently there. This procedure uses custom bootmode 9 but you can select any custom bootmode that you are unlikely to use.

  1. Connect to the EVM's BMC console port.
  2. Type "bootmode all" to list all bootmodes available.
  3. Please view bootmode #1 setting (would be entred as "bootmode #1 0x0 0x100001 DSP No-Boot"). This is DSP No-Boot for Little Endian.
  4. Type "bootmode #9 0x0 0x100000 DSP No-Boot Big Endian". As you can see only the LSB of the lowest word has been modified to have DSP as Big Endian.
  5. Type "bootmode #9". This sets BMC to use bootmode #9
  6. Type "reboot". This reboots the EVM to come up in the bootmode just set. In this case DSP No-Boot Big Endian.

NoteNote: If the unit is power cycled the bootmode will be based on the bootmode EVM switches. If you would like the bootmode to come up as the default after power cycle as bootmode #9 then set the bootmode switches to 9.

Change And Configure The Boot Mode

There are 5 different formats to the bootmode command:


When the command is entered with no arguments the current bootmode will be displayed.

bootmode all

This format will display all 16 bootmodes and mark the currently selected bootmode.

bootmode #x

This will change the currently selected bootmode to the bootmode represented by x. For example, if the board is booted with DIP switch setting 1(OFF) 2(OFF) 3(OFF) 4(ON) then the bootmode would be 1 - DSP NO-BOOT. If 'bootmode #2' is entered, the bootmode represented by DIP switch setting 1(OFF) 2(OFF) 3(ON) 4(OFF) would become the current bootmode (ARM SPI-NOR BOOT). If the 'reboot' command is given, the SoC will be rebooted using this new bootmode. This format is volatile, meaning once power is removed, the bootmode at the next power up will be determined by the DIP switch.

bootmode read

This format reads the current value of the DIP switch, and changes the current bootmode to this value. For example, if the board is booted with DIP switch setting 1(OFF) 2(OFF) 3(OFF) 4(ON) then the bootmode would be 1 - DSP NO-BOOT. If the DIP switch is changed to 1(OFF) 2(OFF) 3(ON) 4(OFF) and then the command 'bootmode read' is given, the board will change to bootmode 2 - ARM SPI-NOR BOOT. If the 'reboot command is then given, the SoC will be rebooted using this new bootmode.

bootmode [#]x hi_value lo_value title

Of the 16 total bootmodes to select from, 0-7 are read-only and 8-15 are user configurable. x is the index of the bootmode to be set, as such its appropriate value range is 8 - 15, any other value will return an error. hi_value is not currently used, and should always be set to 0. lo_value is a 32 bit hex value whose bits are representative of the table above. title is a given string that is displayed by the bootmode command to help better understand what the bootmode does, it has no purpose within the actual booting of the board. The option '#' is used to determine whether the bootmode will be saved. If # is used, the bootmode will be saved to flash, meaning the new value is tied to the DIP switch, and will remain even if power is removed from the board. If # is not given, then the change will be lost as soon as power is removed. Some examples with descriptions are given below:

bootmode 8 0 112007 ARM_SPI

bootmode 8 will be set to 112007 and given the title ARM_SPI. To boot into this bootmode, the command 'bootmode #8' followed by 'reboot' would be given (or changing the DIP switch to 1(ON) 2(OFF) 3(OFF) 4(OFF) without removing power, then entering 'bootmode read' followed by 'reboot'). Once power is removed, this change is lost.

bootmode #10 0 12cba1 RANDOM_BOOT

bootmode 10 will be set to 12cba1 and given the title RANDOM_BOOT. This is now the permanent value of bootmode 10; the change will persist even if power is removed.