STLink

From PaparazziUAV
Jump to navigation Jump to search
ST-LinkV2 (stm32f4-Discovery)

SWD can be used to upload the firmware to stm32fx MCU without a bootloader.

A ST-Link is needed, any stm32-discovery board has a ST-LinkV2 on it (starts @ 8€).

A standard ST-Link costs from 17€

Needed Tools

st_flash and st_util need to be installed, compiled from source (https://github.com/texane/stlink) Libusb 1.0, autogen is required.


git clone git://github.com/texane/stlink.git
cd stlink
./autogen.sh
./configure
make
sudo su
mkdir /opt/stlink
cd /opt/stlink
cp /home/user/stlink/st-flash /opt/stlink
cp /home/user/stlink/st-util /opt/stlink
echo PATH=\"$PATH:/opt/stlink\" >> /etc/environment
source /etc/environment

FIMXE, environment variable doe not work/st-flash is not found ?

USB permission

cp /home/user/stlink/49-stlinkv*.rules /etc/udev/rules.d
udevadm control --reload-rules

Warning: For ST-LinkV1 take a look at the readme.txt !

Howto

Connect the ST-Link to the MCU. If a complete stm32fx-discovery board is used, CN3 jumpers need to be set. To program a external MCU, remove CN3 jumpers and connect the external MCU with the SWD header.