Getting started/STM32MP1 boards/STM32MP157C-DK2/Let's start/Populate the target and boot the image

Stable: 21.02.2020 - 13:08 / Revision: 21.02.2020 - 12:43

I am here to prevent the first-page-empty bug!

STM32MP157X-DK2.png
Let's start Develop on Arm® Cortex®-A7
Step category in.png Unpack the board Step.png Populate the target and boot the image Step.png Execute basic commands Step.png Use the demo launcher Step category out.png


1 Overview

This stage explains how to get, install and boot the STM32MP15 Discovery kit with the Starter Package.

2 Open a terminal

Open a terminal on the host computer.

Ubuntu terminal

All the commands preceded by have to be executed from the host computer terminal.

  • Create your STM32MPU workspace directory on the host computer:
 mkdir $HOME/STM32MPU_workspace
 cd $HOME/STM32MPU_workspace

3 Check the host computer Internet access

  • An Internet access through http and https protocols must be provided.

The command below enables checking for Internet access through http/https protocols:

 wget -q www.google.com && echo "Internet access over HTTP/HTTPS is OK !" || echo "No internet access over HTTP/HTTPS ! You may need to set up a proxy."

If an 'OK' message is returned, the network is correctly configured.
In this case, skip the rest of this section.

Otherwise, a proxy for http/https protocols is required.
The best solution is to set this proxy through the shell variables http_proxy and https_proxy:

 export http_proxy=http://<MyProxyLogin>:<MyProxyPassword>@<MyProxyServerUrl>:<MyProxyPort>
 export https_proxy=http://<MyProxyLogin>:<MyProxyPassword>@<MyProxyServerUrl>:<MyProxyPort>

Check again the Internet access using the command:

 wget -q www.google.com && echo "Internet access over HTTP/HTTPS is OK !" || echo "No internet access over HTTP/HTTPS ! You may need to set up a proxy."

4 Install the tools

4.1 STM32CubeProgrammer

  • Create your STM32MPU tools directory on the host computer:
 mkdir $HOME/STM32MPU_workspace/STM32MPU-Tools
 mkdir $HOME/STM32MPU_workspace/STM32MPU-Tools/STM32CubeProgrammer-x.y.z
  • Create a temporary directory in your STM32MPU workspace:
 mkdir $HOME/STM32MPU_workspace/tmp
  • Uncompress the archive file to get the STM32CubeProgrammer installers:
 cd $HOME/STM32MPU_workspace/tmp
 unzip SetupSTM32CubeProgrammer.zip
  • Execute the Linux® installer, which guides you through the installation process. Select "$HOME/STM32MPU-Tools/STM32CubeProgrammer-x.y.z" as installation directory when it is requested by the installer.
 ./SetupSTM32CubeProgrammer-x.y.z.linux

The screenshots below have been obtained with old STM32CubeProgrammer V2.7.0. They are provided as examples and are still valid for higher versions :

Splash screen
Welcome page
Installation path
  • Add the STM32CubeProgrammer binary path to your PATH environment variable:
export PATH=$HOME/STM32MPU_workspace/STM32MPU-Tools/STM32CubeProgrammer-x.y.z/bin:$PATH
  • Check that the STM32CubeProgrammer tool is properly installed and accessible:
 STM32_Programmer_CLI --h
     -------------------------------------------------------------------
                       STM32CubeProgrammer vx.y.z                  
     -------------------------------------------------------------------

4.2 USB serial link

  • Install the libusb on your host computer:
 sudo apt-get install libusb-1.0-0
  • To allow STM32CubeProgrammer to access the USB port through low-level commands, proceed as follows:
 cd $HOME/STM32MPU_workspace/STM32MPU-Tools/STM32CubeProgrammer-x.y.z/Drivers/rules
 sudo cp *.* /etc/udev/rules.d/

5 Download the image

  • Create your STM32MP1 Starter Package directory on the host computer:
 mkdir $HOME/STM32MPU_workspace/STM32MP1-Ecosystem-v5.0.0
 mkdir $HOME/STM32MPU_workspace/STM32MP1-Ecosystem-v5.0.0/Starter-Package
 cd $HOME/STM32MPU_workspace/STM32MP1-Ecosystem-v5.0.0/Starter-Package
  • Download the STM32MP1-Ecosystem-v5.0.0 Starter Package into the following directory:
    $HOME/STM32MPU_workspace/STM32MP1-Ecosystem-v5.0.0/Starter-Package
  • Uncompress the tarball file to get the binaries for the different partitions of the image, and the Flash layout files
 tar xvf en.flash-stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21.tar.gz


6 Populate the SDCard

  • Set the boot switches (located at the back of the board) to the off position
boot switches position to flash the board
  • Connect USB Type A to Type C cable between PC and CN7/USB_OTG port of the STM32MP157C-DK2 board
  • Power up the board
  • Press the reset button to reset the board
  • Launch STM32CubeProgrammer to get the GUI
  • On the right, select USB (not STLINK, set by default) in the connection picklist and click on "Refresh" button. Serial Number is displayed if USB is detected. Click on "Connect"
  • Select "Open File" tab and select $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v1.x.0/stm32mp1-openstlinux-xx-yy-zz/images/stm32mp1/flashlayout_st-image-weston the FlashLayout_sdcard_stm32mp157c-dk2-trusted.tsv, in the Starter Package installation folder.
  • Fill the "Binaries Path" by browsing up to folder $[Starter_Pack_Path]/images/stm32mp1
  • Click on "Download" to start the flashing process.
  • Progress is displayed with progress bar till completion popup message.

7 Boot the board

  • Set the boot switches (located at the back of the board) to the ON position
boot switches position to boot the board
  • Power up the board
  • Press the "Reset "button to reset the board
  • After few seconds, the board starts and automatically goes through the following screens
UBoot splash screen
Linux splash screen
Weston desktop
GTK demo launcher
  • If the board power supply doesn't supply enough current (3A), the red LED indicates the issue following the rules below:
blink console message boot process
2 times WARNING 500mA power supply detected

Current too low, use a 3A power supply!

Continue and red LED stays ON
3 times WARNING 1500mA power supply detected

Current too low, use a 3A power supply!

Continue and red LED stays ON
forever ERROR USB TYPE-C connection in unattached mode

Check that USB TYPE-C cable is correctly plugged

stop
forever USB TYPE-C charger not compliant with USB specification stop


Back button.png Overview button.png Next button.png


IMPORTANT NOTICE – READ CAREFULLY
STMicroelectronics NV and its subsidiaries ("ST") reserve the right to make changes, corrections, enhancements, modifications, and improvements to ST products and/or to this document at any time without notice. Purchasers should obtain the latest relevant information on ST products before placing orders. ST products are sold pursuant to ST’s terms and conditions of sale in place at the time of order acknowledgment.

Purchasers are solely responsible for the choice, selection, and use of ST products and ST assumes no liability for application assistance or the design of purchasers’ products.

No license, express or implied, to any intellectual property right is granted by ST herein.

Resale of ST products with provisions different from the information set forth herein shall void any warranty granted by ST for such product.

ST and the ST logo are trademarks of ST. For additional information about ST trademarks, refer to www.st.com/trademarks. All other product or service names are the property of their respective owners.

Information in this document supersedes and replaces information previously supplied in any prior versions of this document.