You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
380 lines
12 KiB
380 lines
12 KiB
#
|
|
# Marlin Firmware
|
|
# PlatformIO Configuration File
|
|
#
|
|
|
|
#################################
|
|
# #
|
|
# STM32F4 Architecture #
|
|
# #
|
|
#################################
|
|
|
|
#
|
|
# ARMED (STM32)
|
|
#
|
|
[env:ARMED]
|
|
platform = ${common_stm32.platform}
|
|
extends = common_stm32
|
|
board = armed_v1
|
|
build_flags = ${common_stm32.build_flags}
|
|
-O2 -ffreestanding -fsigned-char -fno-move-loop-invariants -fno-strict-aliasing
|
|
|
|
#
|
|
# STM32F401VE
|
|
# 'STEVAL-3DP001V1' STM32F401VE board - https://www.st.com/en/evaluation-tools/steval-3dp001v1.html
|
|
#
|
|
[env:STM32F401VE_STEVAL]
|
|
platform = ${common_stm32.platform}
|
|
extends = common_stm32
|
|
board = STEVAL_STM32F401VE
|
|
build_flags = ${common_stm32.build_flags}
|
|
-DARDUINO_STEVAL -DSTM32F401xE
|
|
-DDISABLE_GENERIC_SERIALUSB -DUSBD_USE_CDC_COMPOSITE -DUSE_USB_FS
|
|
extra_scripts = ${common.extra_scripts}
|
|
pre:buildroot/share/PlatformIO/scripts/generic_create_variant.py
|
|
buildroot/share/PlatformIO/scripts/STM32F401VE_STEVAL.py
|
|
|
|
#
|
|
# STM32F401RC
|
|
#
|
|
[env:FYSETC_CHEETAH_V20]
|
|
platform = ${common_stm32.platform}
|
|
extends = common_stm32
|
|
board = FYSETC_CHEETAH_V20
|
|
build_flags = ${common_stm32.build_flags} -DSTM32F401xC -DVECT_TAB_OFFSET=0xC000
|
|
extra_scripts = ${common.extra_scripts}
|
|
pre:buildroot/share/PlatformIO/scripts/generic_create_variant.py
|
|
buildroot/share/PlatformIO/scripts/FYSETC_CHEETAH_V20.py
|
|
|
|
#
|
|
# FLYF407ZG
|
|
#
|
|
[env:FLYF407ZG]
|
|
platform = ${common_stm32.platform}
|
|
extends = common_stm32
|
|
board = FLYF407ZG
|
|
build_flags = ${common_stm32.build_flags}
|
|
-DVECT_TAB_OFFSET=0x8000
|
|
extra_scripts = ${common.extra_scripts}
|
|
pre:buildroot/share/PlatformIO/scripts/generic_create_variant.py
|
|
|
|
#
|
|
# FLY MINI(stm32f103rct6)
|
|
#
|
|
[env:FLY_MINI]
|
|
platform = ${common_stm32f1.platform}
|
|
extends = common_stm32f1
|
|
board = genericSTM32F103RC
|
|
extra_scripts = ${common_stm32f1.extra_scripts}
|
|
buildroot/share/PlatformIO/scripts/fly_mini.py
|
|
build_flags = ${common_stm32f1.build_flags}
|
|
-DDEBUG_LEVEL=0 -DSS_TIMER=4
|
|
|
|
#
|
|
# FYSETC S6 (STM32F446VET6 ARM Cortex-M4)
|
|
#
|
|
[env:FYSETC_S6]
|
|
platform = ${common_stm32.platform}
|
|
extends = common_stm32
|
|
platform_packages = tool-stm32duino
|
|
board = marlin_fysetc_s6
|
|
build_flags = ${common_stm32.build_flags}
|
|
-DVECT_TAB_OFFSET=0x10000
|
|
-DHAL_PCD_MODULE_ENABLED
|
|
extra_scripts = ${common.extra_scripts}
|
|
pre:buildroot/share/PlatformIO/scripts/generic_create_variant.py
|
|
debug_tool = stlink
|
|
upload_protocol = dfu
|
|
upload_command = dfu-util -a 0 -s 0x08010000:leave -D "$SOURCE"
|
|
|
|
#
|
|
# STM32F407VET6 with RAMPS-like shield
|
|
# 'Black' STM32F407VET6 board - https://wiki.stm32duino.com/index.php?title=STM32F407
|
|
# Shield - https://github.com/jmz52/Hardware
|
|
#
|
|
[env:STM32F407VE_black]
|
|
platform = ${common_stm32.platform}
|
|
extends = common_stm32
|
|
board = blackSTM32F407VET6
|
|
build_flags = ${common_stm32.build_flags}
|
|
-DARDUINO_BLACK_F407VE
|
|
-DUSBD_USE_CDC_COMPOSITE -DUSE_USB_FS
|
|
extra_scripts = ${common.extra_scripts}
|
|
pre:buildroot/share/PlatformIO/scripts/generic_create_variant.py
|
|
|
|
#
|
|
# Anet ET4-MB_V1.x/ET4P-MB_V1.x (STM32F407VGT6 ARM Cortex-M4)
|
|
# For use with with davidtgbe's OpenBLT bootloader https://github.com/davidtgbe/openblt/releases
|
|
# Comment out board_build.offset = 0x10000 if you don't plan to use OpenBLT/flashing directly to 0x08000000.
|
|
#
|
|
[env:Anet_ET4_OpenBLT]
|
|
platform = ${common_stm32.platform}
|
|
extends = common_stm32
|
|
build_flags = ${common_stm32.build_flags} -DHAL_SD_MODULE_ENABLED -DHAL_SRAM_MODULE_ENABLED
|
|
board = genericSTM32F407VGT6
|
|
board_build.core = stm32
|
|
board_build.variant = MARLIN_F4x7Vx
|
|
board_build.ldscript = ldscript.ld
|
|
board_build.firmware = firmware.srec
|
|
# Just openblt.py (not stm32_bootloader.py) generates the file
|
|
board_build.encrypt = Yes
|
|
board_build.offset = 0x10000
|
|
board_upload.offset_address = 0x08010000
|
|
build_unflags = ${common_stm32.build_unflags} -DUSBCON -DUSBD_USE_CDC -DUSBD_VID=0x0483
|
|
debug_tool = jlink
|
|
upload_protocol = jlink
|
|
extra_scripts = ${common.extra_scripts}
|
|
pre:buildroot/share/PlatformIO/scripts/generic_create_variant.py
|
|
buildroot/share/PlatformIO/scripts/stm32_bootloader.py
|
|
buildroot/share/PlatformIO/scripts/openblt.py
|
|
|
|
#
|
|
# BigTreeTech SKR Pro (STM32F407ZGT6 ARM Cortex-M4)
|
|
#
|
|
[env:BIGTREE_SKR_PRO]
|
|
platform = ${common_stm32.platform}
|
|
extends = common_stm32
|
|
board = BigTree_SKR_Pro
|
|
build_flags = ${common_stm32.build_flags}
|
|
-DSTM32F407_5ZX -DVECT_TAB_OFFSET=0x8000
|
|
extra_scripts = ${common.extra_scripts}
|
|
pre:buildroot/share/PlatformIO/scripts/generic_create_variant.py
|
|
#upload_protocol = stlink
|
|
#upload_command = "$PROJECT_PACKAGES_DIR/tool-stm32duino/stlink/ST-LINK_CLI.exe" -c SWD -P "$BUILD_DIR/firmware.bin" 0x8008000 -Rst -Run
|
|
debug_tool = stlink
|
|
debug_init_break =
|
|
|
|
#
|
|
# USB Flash Drive mix-ins for STM32
|
|
#
|
|
[stm_flash_drive]
|
|
platform_packages = framework-arduinoststm32@https://github.com/rhapsodyv/Arduino_Core_STM32/archive/usb-host-msc.zip
|
|
build_flags = ${common_stm32.build_flags}
|
|
-DHAL_PCD_MODULE_ENABLED -DHAL_HCD_MODULE_ENABLED
|
|
-DUSBHOST -DUSBH_IRQ_PRIO=3 -DUSBH_IRQ_SUBPRIO=4
|
|
|
|
#
|
|
# BigTreeTech SKR Pro (STM32F407ZGT6 ARM Cortex-M4) with USB Flash Drive Support
|
|
#
|
|
[env:BIGTREE_SKR_PRO_usb_flash_drive]
|
|
extends = env:BIGTREE_SKR_PRO
|
|
platform_packages = ${stm_flash_drive.platform_packages}
|
|
build_unflags = -DUSBCON -DUSBD_USE_CDC
|
|
build_flags = ${stm_flash_drive.build_flags}
|
|
-DSTM32F407_5ZX -DVECT_TAB_OFFSET=0x8000
|
|
|
|
#
|
|
# Bigtreetech GTR V1.0 (STM32F407IGT6 ARM Cortex-M4)
|
|
#
|
|
[env:BIGTREE_GTR_V1_0]
|
|
platform = ${common_stm32.platform}
|
|
extends = common_stm32
|
|
board = BigTree_GTR_v1
|
|
extra_scripts = ${common.extra_scripts}
|
|
pre:buildroot/share/PlatformIO/scripts/generic_create_variant.py
|
|
build_flags = ${common_stm32.build_flags}
|
|
-DSTM32F407IX -DVECT_TAB_OFFSET=0x8000
|
|
|
|
#
|
|
# Bigtreetech GTR V1.0 (STM32F407IGT6 ARM Cortex-M4) with USB Flash Drive Support
|
|
#
|
|
[env:BIGTREE_GTR_V1_0_usb_flash_drive]
|
|
extends = env:BIGTREE_GTR_V1_0
|
|
platform_packages = ${stm_flash_drive.platform_packages}
|
|
build_unflags = -DUSBCON -DUSBD_USE_CDC
|
|
build_flags = ${stm_flash_drive.build_flags}
|
|
-DSTM32F407IX -DVECT_TAB_OFFSET=0x8000
|
|
|
|
#
|
|
# BigTreeTech BTT002 V1.0 (STM32F407VGT6 ARM Cortex-M4)
|
|
#
|
|
[env:BIGTREE_BTT002]
|
|
platform = ${common_stm32.platform}
|
|
extends = common_stm32
|
|
board = BigTree_Btt002
|
|
build_flags = ${common_stm32.build_flags}
|
|
-DSTM32F407_5VX -DVECT_TAB_OFFSET=0x8000
|
|
-DHAVE_HWSERIAL2
|
|
-DHAVE_HWSERIAL3
|
|
-DPIN_SERIAL2_RX=PD_6
|
|
-DPIN_SERIAL2_TX=PD_5
|
|
extra_scripts = ${common.extra_scripts}
|
|
pre:buildroot/share/PlatformIO/scripts/generic_create_variant.py
|
|
|
|
#
|
|
# Lerdge base
|
|
#
|
|
[lerdge_common]
|
|
platform = ${common_stm32.platform}
|
|
extends = common_stm32
|
|
board = LERDGE
|
|
board_build.offset = 0x10000
|
|
board_build.encrypt = Yes
|
|
extra_scripts = ${common.extra_scripts}
|
|
pre:buildroot/share/PlatformIO/scripts/copy_marlin_variant_to_framework.py
|
|
buildroot/share/PlatformIO/scripts/stm32_bootloader.py
|
|
buildroot/share/PlatformIO/scripts/lerdge.py
|
|
build_flags = ${common_stm32.build_flags}
|
|
-DSTM32F4 -DSTM32F4xx -DTARGET_STM32F4
|
|
-DDISABLE_GENERIC_SERIALUSB -DARDUINO_ARCH_STM32 -DARDUINO_LERDGE
|
|
-DHAL_SRAM_MODULE_ENABLED
|
|
build_unflags = ${common_stm32.build_unflags} -DUSBCON -DUSBD_USE_CDC -DUSBD_VID=0x0483
|
|
|
|
#
|
|
# Lerdge X
|
|
#
|
|
[env:LERDGEX]
|
|
platform = ${lerdge_common.platform}
|
|
extends = lerdge_common
|
|
board_build.firmware = Lerdge_X_firmware_force.bin
|
|
|
|
#
|
|
# Lerdge X with USB Flash Drive Support
|
|
#
|
|
[env:LERDGEX_usb_flash_drive]
|
|
platform = ${env:LERDGEX.platform}
|
|
extends = env:LERDGEX
|
|
platform_packages = ${stm_flash_drive.platform_packages}
|
|
build_flags = ${stm_flash_drive.build_flags}
|
|
|
|
#
|
|
# Lerdge S
|
|
#
|
|
[env:LERDGES]
|
|
platform = ${lerdge_common.platform}
|
|
extends = lerdge_common
|
|
board_build.firmware = Lerdge_firmware_force.bin
|
|
|
|
#
|
|
# Lerdge S with USB Flash Drive Support
|
|
#
|
|
[env:LERDGES_usb_flash_drive]
|
|
platform = ${env:LERDGES.platform}
|
|
extends = env:LERDGES
|
|
platform_packages = ${stm_flash_drive.platform_packages}
|
|
build_flags = ${stm_flash_drive.build_flags}
|
|
|
|
#
|
|
# Lerdge K
|
|
#
|
|
[env:LERDGEK]
|
|
platform = ${lerdge_common.platform}
|
|
extends = lerdge_common
|
|
board_build.firmware = Lerdge_K_firmware_force.bin
|
|
build_flags = ${lerdge_common.build_flags}
|
|
-DLERDGEK
|
|
|
|
#
|
|
# Lerdge K with USB Flash Drive Support
|
|
#
|
|
[env:LERDGEK_usb_flash_drive]
|
|
platform = ${env:LERDGEK.platform}
|
|
extends = env:LERDGEK
|
|
platform_packages = ${stm_flash_drive.platform_packages}
|
|
build_flags = ${stm_flash_drive.build_flags}
|
|
|
|
#
|
|
# RUMBA32
|
|
#
|
|
[env:rumba32]
|
|
platform = ${common_stm32.platform}
|
|
extends = common_stm32
|
|
build_flags = ${common_stm32.build_flags}
|
|
-Os
|
|
-DHAL_PCD_MODULE_ENABLED
|
|
-DDISABLE_GENERIC_SERIALUSB
|
|
-DHAL_UART_MODULE_ENABLED
|
|
-DTIMER_SERIAL=TIM9
|
|
board = rumba32_f446ve
|
|
upload_protocol = dfu
|
|
monitor_speed = 500000
|
|
board_build.core = stm32
|
|
board_build.variant = MARLIN_F446VE
|
|
board_build.ldscript = ldscript.ld
|
|
board_build.offset = 0x0000
|
|
board_build.encrypt = No
|
|
board_build.firmware = firmware.bin
|
|
extra_scripts = ${common.extra_scripts}
|
|
pre:buildroot/share/PlatformIO/scripts/generic_create_variant.py
|
|
buildroot/share/PlatformIO/scripts/stm32_bootloader.py
|
|
|
|
#
|
|
# MKS Robin Pro V2
|
|
#
|
|
[env:mks_robin_pro2]
|
|
platform = ${common_stm32.platform}
|
|
platform_packages = ${stm_flash_drive.platform_packages}
|
|
extends = common_stm32
|
|
build_flags = ${stm_flash_drive.build_flags}
|
|
board = genericSTM32F407VET6
|
|
board_build.core = stm32
|
|
board_build.variant = MARLIN_F4x7Vx
|
|
board_build.ldscript = ldscript.ld
|
|
board_build.firmware = firmware.bin
|
|
board_build.offset = 0x0000
|
|
board_upload.offset_address = 0x08000000
|
|
build_unflags = ${common_stm32.build_unflags} -DUSBCON -DUSBD_USE_CDC
|
|
debug_tool = jlink
|
|
upload_protocol = jlink
|
|
extra_scripts = ${common.extra_scripts}
|
|
pre:buildroot/share/PlatformIO/scripts/generic_create_variant.py
|
|
buildroot/share/PlatformIO/scripts/stm32_bootloader.py
|
|
|
|
#
|
|
# This SPI is used by Robin Nano V3
|
|
#
|
|
[stm32f4_I2C1]
|
|
build_flags = -DPIN_WIRE_SCL=PB6 -DPIN_WIRE_SDA=PB7
|
|
|
|
#
|
|
# MKS Robin Nano V3
|
|
#
|
|
[env:mks_robin_nano_v3]
|
|
platform = ${common_stm32.platform}
|
|
extends = common_stm32
|
|
build_flags = ${common_stm32.build_flags} ${stm32f4_I2C1.build_flags} -DHAL_PCD_MODULE_ENABLED -DUSBCON -DUSBD_USE_CDC
|
|
board = genericSTM32F407VGT6
|
|
board_build.core = stm32
|
|
board_build.variant = MARLIN_F4x7Vx
|
|
board_build.ldscript = ldscript.ld
|
|
board_build.firmware = Robin_nano_v3.bin
|
|
board_build.offset = 0xC000
|
|
board_upload.offset_address = 0x0800C000
|
|
build_unflags = ${common_stm32.build_unflags}
|
|
debug_tool = jlink
|
|
upload_protocol = jlink
|
|
extra_scripts = ${common.extra_scripts}
|
|
pre:buildroot/share/PlatformIO/scripts/generic_create_variant.py
|
|
buildroot/share/PlatformIO/scripts/stm32_bootloader.py
|
|
|
|
#
|
|
# MKS Robin Nano V3 with USB Flash Drive Support
|
|
# Currently, using a STM32duino fork, until USB Host get merged
|
|
#
|
|
[env:mks_robin_nano_v3_usb_flash_drive]
|
|
extends = env:mks_robin_nano_v3
|
|
platform_packages = ${stm_flash_drive.platform_packages}
|
|
build_flags = ${stm_flash_drive.build_flags} ${stm32f4_I2C1.build_flags}
|
|
-DUSBCON
|
|
-DUSE_USBHOST_HS
|
|
-DUSBD_IRQ_PRIO=5
|
|
-DUSBD_IRQ_SUBPRIO=6
|
|
-DUSE_USB_HS_IN_FS
|
|
-DUSBD_USE_CDC
|
|
|
|
#
|
|
# MKS Robin Nano V3 with USB Flash Drive Support and Shared Media
|
|
# Currently, using a STM32duino fork, until USB Host and USB Device MSC get merged
|
|
#
|
|
[env:mks_robin_nano_v3_usb_flash_drive_msc]
|
|
platform = ${common_stm32.platform}
|
|
extends = env:mks_robin_nano_v3
|
|
platform_packages = framework-arduinoststm32@https://github.com/rhapsodyv/Arduino_Core_STM32/archive/usb-host-msc-cdc-msc.zip
|
|
build_unflags = ${common_stm32.build_unflags} -DUSBD_USE_CDC
|
|
build_flags = ${stm_flash_drive.build_flags} ${stm32f4_I2C1.build_flags}
|
|
-DUSBCON
|
|
-DUSE_USBHOST_HS
|
|
-DUSBD_IRQ_PRIO=5
|
|
-DUSBD_IRQ_SUBPRIO=6
|
|
-DUSE_USB_HS_IN_FS
|
|
-DUSBD_USE_CDC_MSC
|
|
|