33abb86b7e
Implement initial support for MKS Robin (STM32F103ZET6) board. Custom build script is used to generate encrypted firmware compatible with original MSK Robin bootloader (i.e. safe firmware update from SD card and possibility to go back to original close-source firmware).
378 lines
10 KiB
INI
378 lines
10 KiB
INI
#
|
|
# Marlin Firmware
|
|
# PlatformIO Configuration File
|
|
#
|
|
# For detailed documentation with EXAMPLES:
|
|
#
|
|
# http://docs.platformio.org/en/latest/projectconf.html
|
|
#
|
|
|
|
# Automatic targets - enable auto-uploading
|
|
# targets = upload
|
|
|
|
#
|
|
# By default platformio build will abort after 5 errors.
|
|
# Remove '-fmax-errors=5' from build_flags below to see all.
|
|
#
|
|
|
|
[platformio]
|
|
src_dir = Marlin
|
|
build_dir = .pioenvs
|
|
lib_dir = .piolib
|
|
libdeps_dir = .piolibdeps
|
|
boards_dir = buildroot/share/PlatformIO/boards
|
|
env_default = megaatmega2560
|
|
|
|
[common]
|
|
default_src_filter = +<src/*> -<src/config> -<src/HAL> +<src/HAL/shared>
|
|
build_flags = -fmax-errors=5
|
|
-g
|
|
-ggdb
|
|
lib_deps =
|
|
https://github.com/MarlinFirmware/U8glib-HAL/archive/dev.zip
|
|
LiquidCrystal@1.3.4
|
|
TMCStepper@<1.0.0
|
|
Adafruit NeoPixel@1.1.3
|
|
https://github.com/lincomatic/LiquidTWI2/archive/30aa480.zip
|
|
https://github.com/ameyer/Arduino-L6470/archive/master.zip
|
|
https://github.com/trinamic/TMC26XStepper/archive/c1921b4.zip
|
|
|
|
#################################
|
|
# #
|
|
# Unique Core Architectures #
|
|
# #
|
|
# Add a new "env" below if no #
|
|
# entry has values suitable to #
|
|
# build for a given board. #
|
|
# #
|
|
#################################
|
|
|
|
#
|
|
# ATmega2560
|
|
#
|
|
[env:megaatmega2560]
|
|
platform = atmelavr
|
|
framework = arduino
|
|
board = megaatmega2560
|
|
build_flags = ${common.build_flags}
|
|
board_build.f_cpu = 16000000L
|
|
lib_deps = ${common.lib_deps}
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
|
|
monitor_speed = 250000
|
|
|
|
#
|
|
# ATmega1280
|
|
#
|
|
[env:megaatmega1280]
|
|
platform = atmelavr
|
|
framework = arduino
|
|
board = megaatmega1280
|
|
build_flags = ${common.build_flags}
|
|
board_build.f_cpu = 16000000L
|
|
lib_deps = ${common.lib_deps}
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
|
|
monitor_speed = 250000
|
|
|
|
#
|
|
# AT90USB1286 boards using CDC bootloader
|
|
# - BRAINWAVE
|
|
# - BRAINWAVE_PRO
|
|
# - SAV_MKI
|
|
# - TEENSYLU
|
|
#
|
|
[env:at90usb1286_cdc]
|
|
platform = teensy
|
|
framework = arduino
|
|
board = at90usb1286
|
|
build_flags = ${common.build_flags}
|
|
lib_deps = ${common.lib_deps}
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
|
|
extra_scripts = pre:buildroot/share/atom/create_custom_upload_command_CDC.py
|
|
monitor_speed = 250000
|
|
|
|
#
|
|
# AT90USB1286 boards using DFU bootloader
|
|
# - PrintrBoard
|
|
# - PrintrBoard Rev.F
|
|
# - ? 5DPRINT ?
|
|
#
|
|
[env:at90usb1286_dfu]
|
|
platform = teensy
|
|
framework = arduino
|
|
board = at90usb1286
|
|
build_flags = ${common.build_flags}
|
|
lib_deps = ${common.lib_deps}
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
|
|
extra_scripts = pre:buildroot/share/atom/create_custom_upload_command_DFU.py
|
|
monitor_speed = 250000
|
|
|
|
#
|
|
# Due (Atmel SAM3X8E ARM Cortex-M3)
|
|
#
|
|
# - RAMPS4DUE
|
|
# - RADDS
|
|
#
|
|
[env:DUE]
|
|
platform = atmelsam
|
|
framework = arduino
|
|
board = due
|
|
build_flags = ${common.build_flags}
|
|
lib_deps = ${common.lib_deps}
|
|
lib_ignore = c1921b4
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_DUE>
|
|
monitor_speed = 250000
|
|
[env:DUE_USB]
|
|
platform = atmelsam
|
|
framework = arduino
|
|
board = dueUSB
|
|
build_flags = ${common.build_flags}
|
|
lib_deps = ${common.lib_deps}
|
|
lib_ignore = c1921b4
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_DUE>
|
|
monitor_speed = 250000
|
|
[env:DUE_debug]
|
|
# Used when WATCHDOG_RESET_MANUAL is enabled
|
|
platform = atmelsam
|
|
framework = arduino
|
|
board = due
|
|
build_flags = ${common.build_flags}
|
|
-funwind-tables
|
|
-mpoke-function-name
|
|
lib_deps = ${common.lib_deps}
|
|
lib_ignore = c1921b4
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_DUE>
|
|
monitor_speed = 250000
|
|
|
|
#
|
|
# NXP LPC176x ARM Cortex-M3
|
|
#
|
|
[env:LPC1768]
|
|
platform = https://github.com/p3p/pio-nxplpc-arduino-lpc176x/archive/master.zip
|
|
framework = arduino
|
|
board = nxp_lpc1768
|
|
build_flags = -DTARGET_LPC1768 -DU8G_HAL_LINKS -IMarlin/src/HAL/HAL_LPC1768/include -IMarlin/src/HAL/HAL_LPC1768/u8g ${common.build_flags}
|
|
# debug options for backtrace
|
|
# -funwind-tables
|
|
# -mpoke-function-name
|
|
lib_ldf_mode = off
|
|
lib_compat_mode = strict
|
|
extra_scripts = Marlin/src/HAL/HAL_LPC1768/upload_extra_script.py
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_LPC1768>
|
|
monitor_speed = 250000
|
|
lib_deps = Servo
|
|
LiquidCrystal
|
|
https://github.com/MarlinFirmware/U8glib-HAL/archive/dev.zip
|
|
TMCStepper@<1.0.0
|
|
|
|
[env:LPC1769]
|
|
platform = https://github.com/p3p/pio-nxplpc-arduino-lpc176x/archive/master.zip
|
|
framework = arduino
|
|
board = nxp_lpc1769
|
|
build_flags = -DTARGET_LPC1768 -DU8G_HAL_LINKS -IMarlin/src/HAL/HAL_LPC1768/include -IMarlin/src/HAL/HAL_LPC1768/u8g ${common.build_flags}
|
|
# debug options for backtrace
|
|
# -funwind-tables
|
|
# -mpoke-function-name
|
|
lib_ldf_mode = off
|
|
lib_compat_mode = strict
|
|
extra_scripts = Marlin/src/HAL/HAL_LPC1768/upload_extra_script.py
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_LPC1768>
|
|
monitor_speed = 250000
|
|
lib_deps = Servo
|
|
LiquidCrystal
|
|
https://github.com/MarlinFirmware/U8glib-HAL/archive/dev.zip
|
|
TMCStepper@<1.0.0
|
|
|
|
#
|
|
# Melzi and clones (ATmega1284p)
|
|
#
|
|
[env:melzi]
|
|
platform = atmelavr
|
|
framework = arduino
|
|
board = sanguino_atmega1284p
|
|
build_flags = ${common.build_flags}
|
|
upload_speed = 57600
|
|
lib_deps = ${common.lib_deps}
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
|
|
monitor_speed = 250000
|
|
|
|
#
|
|
# Melzi and clones (Optiboot bootloader)
|
|
#
|
|
[env:melzi_optiboot]
|
|
platform = atmelavr
|
|
framework = arduino
|
|
board = sanguino_atmega1284p
|
|
build_flags = ${common.build_flags}
|
|
upload_speed = 115200
|
|
lib_deps = ${common.lib_deps}
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
|
|
monitor_speed = 250000
|
|
|
|
#
|
|
# RAMBo
|
|
#
|
|
[env:rambo]
|
|
platform = atmelavr
|
|
framework = arduino
|
|
board = reprap_rambo
|
|
build_flags = ${common.build_flags}
|
|
board_build.f_cpu = 16000000L
|
|
lib_deps = ${common.lib_deps}
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
|
|
monitor_speed = 250000
|
|
|
|
#
|
|
# Sanguinololu (ATmega644p)
|
|
#
|
|
[env:sanguino_atmega644p]
|
|
platform = atmelavr
|
|
framework = arduino
|
|
board = sanguino_atmega644p
|
|
build_flags = ${common.build_flags}
|
|
lib_deps = ${common.lib_deps}
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
|
|
monitor_speed = 250000
|
|
|
|
#
|
|
# Sanguinololu (ATmega1284p)
|
|
#
|
|
[env:sanguino_atmega1284p]
|
|
platform = atmelavr
|
|
framework = arduino
|
|
board = sanguino_atmega1284p
|
|
build_flags = ${common.build_flags}
|
|
lib_deps = ${common.lib_deps}
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
|
|
monitor_speed = 250000
|
|
|
|
#
|
|
# STM32F103RE
|
|
#
|
|
[env:STM32F1]
|
|
platform = ststm32@<4.4.0
|
|
framework = arduino
|
|
board = genericSTM32F103RE
|
|
build_flags = !python Marlin/src/HAL/HAL_STM32F1/stm32f1_flag_script.py
|
|
${common.build_flags}
|
|
lib_deps = ${common.lib_deps}
|
|
lib_ignore = U8glib-HAL
|
|
c1921b4
|
|
libf3c
|
|
lib066
|
|
Adafruit NeoPixel_ID28
|
|
Adafruit NeoPixel
|
|
libf3e
|
|
TMC26XStepper
|
|
lib_ldf_mode = 1
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F1>
|
|
monitor_speed = 250000
|
|
|
|
#
|
|
# STM32F4
|
|
#
|
|
[env:STM32F4]
|
|
platform = ststm32
|
|
framework = arduino
|
|
board = disco_f407vg
|
|
build_flags = ${common.build_flags} -DUSE_STM32GENERIC -DSTM32GENERIC -DMENU_USB_SERIAL -DMENU_SERIAL=SerialUSB
|
|
lib_deps = ${common.lib_deps}
|
|
lib_ignore = Adafruit NeoPixel, c1921b4, TMCStepper
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F4>
|
|
monitor_speed = 250000
|
|
|
|
#
|
|
# ARMED
|
|
#
|
|
[env:ARMED]
|
|
platform = ststm32
|
|
framework = arduino
|
|
board = ARMED
|
|
build_flags = ${common.build_flags} -DUSE_STM32GENERIC -DSTM32GENERIC -DMENU_USB_SERIAL -DMENU_SERIAL=SerialUSB -O2 -ffreestanding -fsigned-char -fno-move-loop-invariants -fno-strict-aliasing -std=gnu11 -std=gnu++11
|
|
lib_deps = ${common.lib_deps}
|
|
lib_ignore = Adafruit NeoPixel, c1921b4
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F4>
|
|
monitor_speed = 250000
|
|
|
|
#
|
|
# MKS Robin (STM32F103ZET6)
|
|
#
|
|
[env:mks_robin]
|
|
platform = ststm32
|
|
framework = arduino
|
|
board = genericSTM32F103ZE
|
|
extra_scripts = buildroot/share/PlatformIO/scripts/mks_robin.py
|
|
build_flags = !python Marlin/src/HAL/HAL_STM32F1/stm32f1_flag_script.py
|
|
${common.build_flags}
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F1>
|
|
lib_deps = ${common.lib_deps}
|
|
lib_ignore = c1921b4
|
|
libf3c
|
|
lib066
|
|
Adafruit NeoPixel_ID28
|
|
Adafruit NeoPixel
|
|
libf3e
|
|
TMC26XStepper
|
|
|
|
#
|
|
# Teensy 3.5 / 3.6 (ARM Cortex-M4)
|
|
#
|
|
[env:teensy35]
|
|
platform = teensy
|
|
framework = arduino
|
|
board = teensy35
|
|
build_flags = ${common.build_flags}
|
|
lib_deps = ${common.lib_deps}
|
|
lib_ignore = Adafruit NeoPixel
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_TEENSY35_36>
|
|
monitor_speed = 250000
|
|
|
|
[env:malyanm200]
|
|
platform = ststm32
|
|
framework = arduino
|
|
board = malyanM200
|
|
build_flags = !python Marlin/src/HAL/HAL_STM32F1/stm32f1_flag_script.py -DMCU_STM32F103CB -D __STM32F1__=1 -std=c++1y -D MOTHERBOARD="BOARD_MALYAN_M200" -DSERIAL_USB -ffunction-sections -fdata-sections -Wl,--gc-sections
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F1>
|
|
#-<frameworks>
|
|
lib_ignore =
|
|
U8glib
|
|
LiquidCrystal_I2C
|
|
LiquidCrystal
|
|
NewliquidCrystal
|
|
LiquidTWI2
|
|
Adafruit NeoPixel
|
|
TMCStepper
|
|
Servo(STM32F1)
|
|
TMC26XStepper
|
|
U8glib-HAL
|
|
c1921b4
|
|
|
|
#
|
|
# Espressif ESP32
|
|
#
|
|
[env:esp32]
|
|
platform = https://github.com/platformio/platform-espressif32.git#feature/stage
|
|
board = esp32dev
|
|
framework = arduino
|
|
upload_port = COM3
|
|
lib_ignore =
|
|
LiquidCrystal_I2C
|
|
LiquidCrystal
|
|
NewliquidCrystal
|
|
LiquidTWI2
|
|
TMC26XStepper
|
|
c1921b4
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_ESP32>
|
|
|
|
#
|
|
# FYSETC F6 V1.3
|
|
#
|
|
[env:fysetc_f6_13]
|
|
platform = atmelavr
|
|
framework = arduino
|
|
board = fysetc_f6_13
|
|
build_flags = ${common.build_flags}
|
|
board_build.f_cpu = 16000000L
|
|
lib_deps = ${common.lib_deps}
|
|
src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
|
|
monitor_speed = 250000
|