Populate the target and boot the image

Revision as of 08:11, 6 February 2019 by Registered User

Template:ArticleMainWriter Template:ArticleProposedVersion


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[edit source]

This stage will explain you how to get, install and boot the STM32MP15 Discovery kits with the Starter Package.

2. Open a terminal[edit source]

Open a terminal on the host computer.

Ubuntu terminal

All the command precede with have to be executed in the host computer terminal.

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

3. Check the host computer Internet access[edit source]

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

The command below allows to check 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 a 'OK' message is returned, the network is well configured.
In such case, skip the rest of this section.

Any other situation likely indicates the need for a proxy for http/https protocols.
The best solution to set a proxy for http/https protocols is via 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 with 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[edit source]

4.1. STM32CubeProgrammer[edit source]

Info white.png Information
STM32CubeProgrammer requires 1.8 version or later of the Java platfrom.

 sudo apt-get install openjdk-8-jre
 sudo update-alternatives --config java

Select the java-8-openjdk configuration.

  • Create your STM32MPU tools directory on your host computer
 mkdir $HOME/STM32MPU_workspace/STM32MPU-Tools
 mkdir $HOME/STM32MPU_workspace/STM32MPU-Tools/STM32CubeProgrammer-2.0.0
  • Create a temporary directory in your STM32MPU workspace
 mkdir $HOME/STM32MPU_workspace/tmp
  • Download STM32CubeProgrammer v2.0.0 in your $HOME/STM32MPU_workspace/tmp directory
  • 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-2.0.0" as the installation directory, when it's requested by the installer
 ./SetupSTM32CubeProgrammer-2.0.0.linux
Splash screen
Welcome page
Installation path
  • Add the STM32CubeProgrammer binary path to your PATH environment variable
export PATH=$HOME/STM32MPU_workspace/STM32MPU-Tools/STM32CubeProgrammer-2.0.0/bin:$PATH
  • Check that the STM32CubeProgrammer tool is properly installed and accessible
 STM32_Programmer_CLI --h
     -------------------------------------------------------------------
                       STM32CubeProgrammer v2.0.0                  
     -------------------------------------------------------------------

4.2. USB serial link[edit source]

  • 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-2.0.0/Drivers/rules
 sudo cp *.* /etc/udev/rules.d/

5. Download the image[edit source]

  • Create your STM32MP15 Starter Package directory on your host computer
 mkdir $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v1.0.0
 mkdir $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v1.0.0/Starter-Package
 cd $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v1.0.0/Starter-Package
  • Download the STM32MP15-Ecosystem-v1.0.0 Starter Package in your $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v1.0.0/Starter-Package directory
  • Uncompress the tarball file to get the binaries for the different partitions of the image, and the Flash layout files
 tar xvf FLASH-stm32mp1-openstlinux-4.19-thud-mp1-19-02-20.tar.xz

6. Populate the SDCard[edit source]

  • Set the boot switches (located at the back of the board) to the off position
boot switches position to flash the board
  • Power up the board
  • Press the reset button to reset the board
  • Go to the Starter Package directory that contains the binaries and the Flash layout files
 cd $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v1.0.0/Starter-Package/stm32mp1-openstlinux-4.19-thud-mp1-19-02-20/images/stm32mp1
  • Get the device port location for the USB link
 STM32_Programmer_CLI -l usb
      -------------------------------------------------------------------
                        STM32CubeProgrammer v2.0.0                  
      -------------------------------------------------------------------

=====  DFU Interface   =====

Total number of available STM32 device in DFU mode: 1

  Device Index           : USB1
  USB Bus Number         : 003
  USB Address Number     : 002
  Product ID             : DFU in HS Mode @Device ID /0x500, @Revision ID /0x0000
  Serial number          : 004800233338511634383330
  Firmware version       : 0x0110
  Device ID              : 0x0500
  • Flash the microSD card with the image for the trusted boot chain
 STM32_Programmer_CLI -c port=usb1 -w flashlayout_st-image-weston/FlashLayout_sdcard_stm32mp157c-dk2-trusted.tsv
This operation takes several minutes (mainly depending of the rootfs size). A successful flashing should be terminated by this following log information
Flashing service completed successfully

7. Boot the board[edit source]

  • 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 go through the following screens
Error creating thumbnail: Unable to save thumbnail to destination
UBoot splash screen
Error creating thumbnail: Unable to save thumbnail to destination
Linux splash screen
Error creating thumbnail: Unable to save thumbnail to destination
Weston desktop
Error creating thumbnail: Unable to save thumbnail to destination
GTK demo launcher


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