123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598 |
- #
- # 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/dev.zip
- https://github.com/trinamic/TMC26XStepper/archive/c1921b4.zip
- https://github.com/mikeshub/SailfishLCD.git
- https://github.com/mikeshub/SailfishRGB_LED.git
- https://github.com/mikeshub/SlowSoftI2CMaster.git
-
- #################################
- # #
- # 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
- U8glib-HAL=https://github.com/MarlinFirmware/U8glib-HAL/archive/dev.zip
- TMCStepper@<1.0.0
- Adafruit NeoPixel=https://github.com/p3p/Adafruit_NeoPixel/archive/master.zip
- https://github.com/mikeshub/SailfishLCD.git
-
- [env:LPC1769]
- platform = https://github.com/p3p/pio-nxplpc-arduino-lpc176x/archive/master.zip
- framework = arduino
- board = nxp_lpc1769
- build_flags = -DTARGET_LPC1768 -DLPC1769 -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
- U8glib-HAL=https://github.com/MarlinFirmware/U8glib-HAL/archive/dev.zip
- TMCStepper@<1.0.0
- Adafruit NeoPixel=https://github.com/p3p/Adafruit_NeoPixel/archive/master.zip
-
- #
- # 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}
- lib_ignore = TMCStepper, TMC26XStepper
- 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}
- lib_ignore = TMCStepper, TMC26XStepper
- 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
- framework = arduino
- board = genericSTM32F103RE
- build_flags = !python Marlin/src/HAL/HAL_STM32F1/STM32F1_flag_script.py
- ${common.build_flags} -std=gnu++14
- build_unflags = -std=gnu++11
- lib_deps = ${common.lib_deps}
- lib_ignore = U8glib-HAL
- c1921b4
- libf3c
- lib066
- Adafruit NeoPixel_ID28
- Adafruit NeoPixel
- libf3e
- TMC26XStepper
- #lib_ldf_mode = chain
- src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F1>
- monitor_speed = 250000
-
- #
- # fysetc_STM32F1
- #
- [env:fysetc_STM32F1]
- platform = ststm32
- framework = arduino
- board = genericSTM32F103RC
- #board_build.core = maple
- extra_scripts = buildroot/share/PlatformIO/scripts/fysetc_STM32F1.py
- build_flags = !python Marlin/src/HAL/HAL_STM32F1/STM32F1_flag_script.py
- ${common.build_flags}
- lib_deps = ${common.lib_deps}
- lib_ignore =
- c1921b4
- libf3c
- lib066
- Adafruit NeoPixel_ID28
- Adafruit NeoPixel
- libf3e
- TMC26XStepper
- lib_ldf_mode = chain
- src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F1>
- monitor_speed = 250000
- debug_tool = stlink
- upload_protocol = serial
-
- #
- # BigTree SKR Mini V1.1 / SKR mini E3 / SKR E3 DIP (STM32F103RCT6 ARM Cortex-M3)
- #
- [env:BIGTREE_SKR_MINI]
- platform = ststm32
- framework = arduino
- board = genericSTM32F103RC
- extra_scripts = buildroot/share/PlatformIO/scripts/STM32F1_SKR_MINI.py
- build_flags = !python Marlin/src/HAL/HAL_STM32F1/STM32F1_flag_script.py
- ${common.build_flags} -std=gnu++14
- build_unflags = -std=gnu++11
- lib_deps = ${common.lib_deps}
- lib_ignore =
- c1921b4
- libf3c
- lib066
- Adafruit NeoPixel_ID28
- Adafruit NeoPixel
- libf3e
- TMC26XStepper
- #lib_ldf_mode = chain
- src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F1>
- monitor_speed = 115200
- upload_protocol = stlink
- debug_tool = stlink
-
- #
- # STM32F4 with STM32GENERIC
- #
- [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_STM32_F4_F7> -<src/HAL/HAL_STM32_F4_F7/*> +<src/HAL/HAL_STM32_F4_F7/STM32F4>
- monitor_speed = 250000
-
- #
- # STM32F7 with STM32GENERIC
- #
- [env:STM32F7]
- platform = ststm32
- framework = arduino
- board = disco_f765vg
- 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_STM32_F4_F7> -<src/HAL/HAL_STM32_F4_F7/*> +<src/HAL/HAL_STM32_F4_F7/STM32F7>
- monitor_speed = 250000
-
- #
- # ARMED (STM32)
- #
- [env:ARMED]
- platform = ststm32
- framework = arduino
- board = armed_v1
- build_flags = ${common.build_flags} -DUSBCON -DUSBD_VID=0x0483 '-DUSB_MANUFACTURER="Unknown"' '-DUSB_PRODUCT="ARMED_V1"' -DHAL_PCD_MODULE_ENABLED -DUSBD_USE_CDC -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_STM32>
- monitor_speed = 250000
-
- #
- # Alfawise U20 (STM32F103VET6)
- #
- [env:alfawise_U20]
- platform = ststm32
- framework = arduino
- board = genericSTM32F103VE
- monitor_speed = 250000
- extra_scripts = buildroot/share/PlatformIO/scripts/alfawise_Ux0.py
- build_flags = !python Marlin/src/HAL/HAL_STM32F1/STM32F1_flag_script.py
- ${common.build_flags} -std=gnu++14
- -DSTM32F1xx -DU20 -DTS_V12
- build_unflags = -std=gnu++11 -DCONFIG_MAPLE_MINI_NO_DISABLE_DEBUG=1
- 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
-
- #
- # 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} -std=gnu++14
- build_unflags = -std=gnu++11
- 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
- U8glib-HAL
-
- #
- # MKS Robin Mini (STM32F103VET6)
- #
- [env:mks_robin_mini]
- platform = ststm32
- framework = arduino
- board = genericSTM32F103VE
- extra_scripts = buildroot/share/PlatformIO/scripts/mks_robin_mini.py
- build_flags = !python Marlin/src/HAL/HAL_STM32F1/STM32F1_flag_script.py
- ${common.build_flags} -std=gnu++14
- build_unflags = -std=gnu++11
- 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
-
- #
- # MKS Robin Nano (STM32F103VET6)
- #
- [env:mks_robin_nano]
- platform = ststm32
- framework = arduino
- board = genericSTM32F103VE
- extra_scripts = buildroot/share/PlatformIO/scripts/mks_robin_nano.py
- build_flags = !python Marlin/src/HAL/HAL_STM32F1/STM32F1_flag_script.py
- ${common.build_flags} -std=gnu++14
- build_unflags = -std=gnu++11
- 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
-
- #
- # JGAurora A5S A1 (STM32F103ZET6)
- #
- [env:JGAURORA_A5S_A1]
- platform = ststm32
- framework = arduino
- board = genericSTM32F103ZE
- extra_scripts = buildroot/share/PlatformIO/scripts/jgaurora_a5s_a1_with_bootloader.py
- build_flags = !python Marlin/src/HAL/HAL_STM32F1/STM32F1_flag_script.py
- ${common.build_flags} -std=gnu++14
- build_unflags = -std=gnu++11
- 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
- lib_ldf_mode = chain
- monitor_speed = 250000
-
- #
- # STM32F407VET6 with RAMPS-like shield
- # 'Black' STM32F407VET6 board - http://wiki.stm32duino.com/index.php?title=STM32F407
- # Shield - https://github.com/jmz52/Hardware
- #
- [env:black_stm32f407ve]
- platform = ststm32@5.4.3
- framework = arduino
- board = blackSTM32F407VET6
- extra_scripts = pre:buildroot/share/PlatformIO/scripts/black_stm32f407vet6.py
- build_flags = ${common.build_flags}
- -DUSBCON -DUSBD_USE_CDC -DUSBD_VID=0x0483 -DUSB_PRODUCT=\"BLACK_F407VE\"
- lib_deps = ${common.lib_deps}
- lib_ignore = Adafruit NeoPixel, c1921b4, TMCStepper, TMC26XStepper, SailfishLCD, SailfishRGB_LED, SlowSoftI2CMaster
- src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32>
- monitor_speed = 250000
-
- #
- # BIGTREE_SKR_PRO (STM32F407ZGT6 ARM Cortex-M4)
- #
- [env:BIGTREE_SKR_PRO]
- platform = ststm32@5.4.3
- framework = arduino
- board = BigTree_SKR_Pro
- extra_scripts = pre:buildroot/share/PlatformIO/scripts/generic_create_variant.py
- build_flags = ${common.build_flags}
- -DUSBCON -DUSBD_USE_CDC -DUSBD_VID=0x0483 -DUSB_PRODUCT=\"STM32F407ZG\"
- -DTARGET_STM32F4 -DSTM32F407_5ZX -DVECT_TAB_OFFSET=0x8000 -DHAVE_HWSERIAL6
- lib_deps = ${common.lib_deps}
- lib_ignore = Adafruit NeoPixel, c1921b4, TMC26XStepper, SailfishLCD, SailfishRGB_LED, SlowSoftI2CMaster
- src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32>
- monitor_speed = 250000
-
- #
- # 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
-
- #
- # Malyan M200 (STM32F1)
- #
- [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 = espressif32
- board = esp32dev
- framework = arduino
- upload_speed = 115200
- monitor_speed = 115200
- upload_port = /dev/ttyUSB0
- lib_deps =
- https://github.com/me-no-dev/AsyncTCP.git
- https://github.com/me-no-dev/ESPAsyncWebServer.git
- lib_ignore =
- LiquidCrystal_I2C
- LiquidCrystal
- NewliquidCrystal
- LiquidTWI2
- TMC26XStepper
- c1921b4
- SailfishLCD
- SailfishRGB_LED
- 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
-
- #
- # Native
- # No supported Arduino libraries, base Marlin only
- #
- [env:linux_native]
- platform = native
- build_flags = -D__PLAT_LINUX__ -std=gnu++17 -ggdb -g -lrt -lpthread
- src_build_flags = -Wall -IMarlin/src/HAL/HAL_LINUX/include
- build_unflags = -Wall
- lib_ldf_mode = off
- lib_deps =
- extra_scripts =
- src_filter = ${common.default_src_filter} +<src/HAL/HAL_LINUX>
|