Skip to main content

STM32 Nucleo

Board

Documentation

Software - Void Linux

  1. Install software
    xi stlink
  2. Set up udev rules (as root)
    #/etc/udev/rules.d/stm32nucleo.rules
    SUBSYSTEM!="usb|usb_device", ACTION!="add", GOTO="stm32nucleo_end"
    ATTRS{idVendor}=="0483", ATTRS{idProduct}=="374b", SYMLINK+="stm32-%k", MODE="660", GROUP="input"
    LABEL="stm32nucleo_end"

  3. Connect device
  4. Probe for the device st-info --probe; should print something like this:
    Found 1 stlink programmers
      version:    V2J33S25
      serial:     066FFF5155xxxxxxxxxxxxx
      flash:      65536 (pagesize: 2048)
      sram:       40960
      chipid:     0x439
      dev-type:   STM32F301_F302_F318
  5. Read "main" area
    st-flash read /tmp/main.bin 0x0 0xFFFF

Debugging

  1. Install tools
     xi cross-arm-none-eabi cross-arm-none-eabi-gdb

  2. UsingĀ  GDB
    1. Connect to device
      st-util
    2. Run GDB
      arm-none-eabi-gdb -ex 'target extended-remote localhost:4242'