To run examples use similar process like for libmaple examples: From shell start st-util: st-util and gdb: arm-none-eabi-gdb blink1.elf and on gdb command line target extended-remote :4242 load set $sp=0x20001000 c Note1: The "set $sp=0x20001000" command above set stack pointer to the end of RAM on minimal F0 boards (actually, the address is one byte past the end of RAM, but address is decremented before store so this is correct value). On boards which have more memory we can set it higher. However with the setting above examples will work on all boards. When program is run in normal way processor reads initial value of stack pointer from first position in table of interrupt vectors. However, during normal start this table is taken from flash which may give wrong value for our program. So we set stack pointer by hand and use "c" (shortcut for "continue") so that program uses our setting. Note2: Some examples depend on default state of processor. In such case when loading program second time first press reset button and after that load the program.