mean00 / arduino-cmake-stm32

Arduino CMake Build system

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

This is a fork of the original arduino-cmake project, but targetted at STM32duino and ESP32duino (WIP for ESP32)

STM32 Installation :

Note down the full path to the STM32 F1 folder - Be sure you have a STLINKv2 clone and that you know how to reflash the bootloader. (i.e. cd /opt/arduino-1.8.5/hardware/STM32/arduino/tools/linux64/stlink && ./st-flash write ~/Arduino_stm32/STM32duino-bootloader/binaries/generic_boot20_pc13.bin 0x8000000)

  • Copy the example/stm32 content somewhere so that you have a structure like
Cmakelists.txt
Hello.ino
cmake/ (symlink to the cmake subfolder of arduino-cmake-stm32, or just copy it)
  • Change the cmakelists.txt and use paths you noted before (toolchain & arduino STM32 file in the example)

e.g.

# TOOLCHAIN |
SET(PLATFORM_TOOLCHAIN_PATH "/home/fx/Arduino_stm32/arm-none-eabi-gcc/download/gcc-arm-none-eabi-8.2.1-1.7/bin") |
# STM32Duino, point to the STM32F1 subfolder |
SET(PLATFORM_PATH "/home/fx/Arduino/hardware/stm32/STM32F1")
  • cmake .. && make

You now have the elf & bin files that you can upload manually

/opt/arduino-1.8.5/hardware/Arduino_STM32-master/tools/linux/maple_upload ttyACM0 2 1EAF:0003 the_file.bin

1EAF:0003 is the usb id, it can change a bit, mine is 1eaf:0004, lsusb will tell you what you have

Important:
  • Tested only on linux, might not work well on OsX and Windows

About

Arduino CMake Build system


Languages

Language:CMake 98.6%Language:C++ 0.9%Language:Shell 0.5%