Let's start | Develop on Arm® Cortex®-A7 | |||||||
Unpack the board | Populate the target and boot the image | Execute basic commands | Use the demo launcher |
1. Overview[edit source]
This stage explains how to get, install and boot the STM32MP15 Discovery kit with the Starter Package.
2. Open a terminal[edit source]
Open a terminal on the host computer.
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[edit source]
- 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[edit source]
4.1. STM32CubeProgrammer[edit source]
- 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
- Download STM32CubeProgrammer in the following directory
$HOME/STM32MPU_workspace/tmp
STM32CubeProgrammer V2.9 recommended for ecosystem release v3.1.0
STM32CubeProgrammer V2.8 recommended for ecosystem release v3.0.0
- 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 still valid for higher version :
- Add the STM32CubeProgrammer binary path to your PATH environment variable:
export PATH=$HOME/STM32MPU_workspace/STM32MPU-Tools/STM32CubeProgrammer-x.y.z/bin:$PATH
- Go inside the binary folder:
cd $HOME/STM32MPU_workspace/STM32MPU-Tools/STM32CubeProgrammer-x.y.z/bin/
- Check that the STM32CubeProgrammer tool is properly installed and accessible:
STM32_Programmer_CLI --h ------------------------------------------------------------------- STM32CubeProgrammer vx.y.z -------------------------------------------------------------------
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-x.y.z/Drivers/rules sudo cp *.* /etc/udev/rules.d/
5. Download the image[edit source]
The software package is provided AS IS, and by downloading it, you agree to be bound to the terms of the software license agreement (SLA). The detailed content licenses can be found here.
For ecosystem release v3.1.0 [edit source]
mkdir $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v3.1.0 mkdir $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v3.1.0/Starter-Package cd $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v3.1.0/Starter-Package
- Download the STM32MP15-Ecosystem-v3.1.0 Starter Package to the following directory:
$HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v3.1.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-5-10-dunfell-mp1-21-11-17_tar.xz
For ecosystem release v3.0.0 [edit source]
- Create your STM32MP15 Starter Package directory on the host computer:
mkdir $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v3.0.0 mkdir $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v3.0.0/Starter-Package cd $HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v3.0.0/Starter-Package
- Download the STM32MP15-Ecosystem-v3.0.0 Starter Package to the following directory:
$HOME/STM32MPU_workspace/STM32MP15-Ecosystem-v3.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-5.10-dunfell-mp1-21-03-31.tar.xz
6. Populate the SDCard[edit source]
- Set the boot switches (located at the back of the board) to the off position
- 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
- 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