# # Marlin Firmware # PlatformIO Configuration File # # For detailed documentation with EXAMPLES: # # https://docs.platformio.org/en/latest/projectconf/index.html # # Automatic targets - enable auto-uploading #targets = upload [platformio] src_dir = Marlin boards_dir = buildroot/share/PlatformIO/boards default_envs = E3_427 E3_BLT E3_BLT_ZM E3_Touch E3_Touch_BLT E3_Touch_BLT_ZM E3_Runout E3_Runout_BLT E3_Runout_BLT_ZM E3_Runout_Touch E3_Runout_Touch_BLT E3_Runout_Touch_BLT_ZM E3_Tall_427 E3_Tall_BLT E3_Tall_BLT_ZM E3_Tall_Touch E3_Tall_Touch_BLT E3_Tall_Touch_BLT_ZM E3_Tall_Runout E3_Tall_Runout_BLT E3_Tall_Runout_BLT_ZM E3_Tall_Runout_Touch E3_Tall_Runout_Touch_BLT E3_Tall_Runout_Touch_BLT_ZM E3P_427 E3P_BLT E3P_BLT_ZM E3P_Touch E3P_Touch_BLT E3P_Touch_BLT_ZM E3P_Runout E3P_Runout_BLT E3P_Runout_BLT_ZM E3P_Runout_Touch E3P_Runout_Touch_BLT E3P_Runout_Touch_BLT_ZM E3P_Tall_427 E3P_Tall_BLT E3P_Tall_BLT_ZM E3P_Tall_Touch E3P_Tall_Touch_BLT E3P_Tall_Touch_BLT_ZM E3P_Tall_Runout E3P_Tall_Runout_BLT E3P_Tall_Runout_BLT_ZM E3P_Tall_Runout_Touch E3P_Tall_Runout_Touch_BLT E3P_Tall_Runout_Touch_BLT_ZM E5_427 E5_BLT E5_BLT_ZM E5_Touch E5_Touch_BLT E5_Touch_BLT_ZM E5_Runout E5_Runout_BLT E5_Runout_BLT_ZM E5_Runout_Touch E5_Runout_Touch_BLT E5_Runout_Touch_BLT_ZM E5P_427 E5P_BLT E5P_BLT_ZM E5P_Touch E5P_Touch_BLT E5P_Touch_BLT_ZM E5P_Runout E5P_Runout_BLT E5P_Runout_BLT_ZM E5P_Runout_Touch E5P_Runout_Touch_BLT E5P_Runout_Touch_BLT_ZM include_dir = Marlin extra_configs = ini/avr.ini ini/due.ini ini/esp32.ini ini/features.ini ini/lpc176x.ini ini/native.ini ini/samd51.ini ini/stm32-common.ini ini/stm32f0.ini ini/stm32f1-maple.ini ini/stm32f1.ini ini/stm32f4.ini ini/stm32f7.ini ini/stm32h7.ini ini/teensy.ini # # The 'common' section applies to most Marlin builds. # # By default platformio build will abort after 5 errors. # Remove '-fmax-errors=5' from build_flags below to see all. # [common] build_flags = -g3 -D__MARLIN_FIRMWARE__ -DNDEBUG -fmax-errors=5 extra_scripts = pre:buildroot/share/PlatformIO/scripts/common-dependencies.py pre:buildroot/share/PlatformIO/scripts/common-cxxflags.py pre:buildroot/share/PlatformIO/scripts/preflight-checks.py post:buildroot/share/PlatformIO/scripts/common-dependencies-post.py lib_deps = default_src_filter = + - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # # Default values apply to all 'env:' prefixed environments # [env] framework = arduino extra_scripts = ${common.extra_scripts} build_flags = ${common.build_flags} lib_deps = ${common.lib_deps} monitor_speed = 250000 monitor_flags = --quiet --echo --eol LF --filter colorize --filter time # # # Unique Core Architectures # # # # Add a new "env" below if no # # entry has values suitable to # # build for a given board. # # # ################################# ################################# # # # AVR Architecture # # # ################################# # # AVR (8-bit) Common Environment values # [common_avr8] board_build.f_cpu = 16000000L src_filter = ${common.default_src_filter} + # # ATmega2560 # [env:mega2560] platform = atmelavr extends = common_avr8 board = megaatmega2560 [env:E3_427] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 [env:E3_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH [env:E3_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DCreality42XUseZMin [env:E3_Touch] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DMachineEnder3Touchscreen [env:E3_Touch_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DMachineEnder3Touchscreen [env:E3_Touch_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DCreality42XUseZMin -DMachineEnder3Touchscreen [env:E3_Runout] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DlerdgeFilSensor [env:E3_Runout_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DlerdgeFilSensor [env:E3_Runout_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DCreality42XUseZMin -DlerdgeFilSensor [env:E3_Runout_Touch] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DMachineEnder3Touchscreen -DlerdgeFilSensor [env:E3_Runout_Touch_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DMachineEnder3Touchscreen -DlerdgeFilSensor [env:E3_Runout_Touch_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DCreality42XUseZMin -DMachineEnder3Touchscreen -DlerdgeFilSensor [env:E3_Tall_427] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DE3TALLKIT [env:E3_Tall_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DE3TALLKIT [env:E3_Tall_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DCreality42XUseZMin -DE3TALLKIT [env:E3_Tall_Touch] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DMachineEnder3Touchscreen -DE3TALLKIT [env:E3_Tall_Touch_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DMachineEnder3Touchscreen -DE3TALLKIT [env:E3_Tall_Touch_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DCreality42XUseZMin -DMachineEnder3Touchscreen -DE3TALLKIT [env:E3_Tall_Runout] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DlerdgeFilSensor -DE3TALLKIT [env:E3_Tall_Runout_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DlerdgeFilSensor -DE3TALLKIT [env:E3_Tall_Runout_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DCreality42XUseZMin -DlerdgeFilSensor -DE3TALLKIT [env:E3_Tall_Runout_Touch] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DMachineEnder3Touchscreen -DlerdgeFilSensor -DE3TALLKIT [env:E3_Tall_Runout_Touch_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DMachineEnder3Touchscreen -DlerdgeFilSensor -DE3TALLKIT [env:E3_Tall_Runout_Touch_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DCreality42XUseZMin -DMachineEnder3Touchscreen -DlerdgeFilSensor -DE3TALLKIT [env:E3P_427] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DMACHINE_PRO [env:E3P_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DMACHINE_PRO [env:E3P_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DCreality42XUseZMin -DMACHINE_PRO [env:E3P_Touch] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DMachineEnder3Touchscreen -DMACHINE_PRO [env:E3P_Touch_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DMachineEnder3Touchscreen -DMACHINE_PRO [env:E3P_Touch_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DCreality42XUseZMin -DMachineEnder3Touchscreen -DMACHINE_PRO [env:E3P_Runout] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DlerdgeFilSensor -DMACHINE_PRO [env:E3P_Runout_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DlerdgeFilSensor -DMACHINE_PRO [env:E3P_Runout_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DCreality42XUseZMin -DlerdgeFilSensor -DMACHINE_PRO [env:E3P_Runout_Touch] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DMachineEnder3Touchscreen -DlerdgeFilSensor -DMACHINE_PRO [env:E3P_Runout_Touch_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DMachineEnder3Touchscreen -DlerdgeFilSensor -DMACHINE_PRO [env:E3P_Runout_Touch_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DCreality42XUseZMin -DMachineEnder3Touchscreen -DlerdgeFilSensor -DMACHINE_PRO [env:E3P_Tall_427] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DE3TALLKIT -DMACHINE_PRO [env:E3P_Tall_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DE3TALLKIT -DMACHINE_PRO [env:E3P_Tall_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DCreality42XUseZMin -DE3TALLKIT -DMACHINE_PRO [env:E3P_Tall_Touch] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DMachineEnder3Touchscreen -DE3TALLKIT -DMACHINE_PRO [env:E3P_Tall_Touch_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DMachineEnder3Touchscreen -DE3TALLKIT -DMACHINE_PRO [env:E3P_Tall_Touch_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DCreality42XUseZMin -DMachineEnder3Touchscreen -DE3TALLKIT -DMACHINE_PRO [env:E3P_Tall_Runout] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DlerdgeFilSensor -DE3TALLKIT -DMACHINE_PRO [env:E3P_Tall_Runout_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DlerdgeFilSensor -DE3TALLKIT -DMACHINE_PRO [env:E3P_Tall_Runout_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DCreality42XUseZMin -DlerdgeFilSensor -DE3TALLKIT -DMACHINE_PRO [env:E3P_Tall_Runout_Touch] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DMachineEnder3Touchscreen -DlerdgeFilSensor -DE3TALLKIT -DMACHINE_PRO [env:E3P_Tall_Runout_Touch_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DMachineEnder3Touchscreen -DlerdgeFilSensor -DE3TALLKIT -DMACHINE_PRO [env:E3P_Tall_Runout_Touch_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder3Pro427 -DABL_BLTOUCH -DCreality42XUseZMin -DMachineEnder3Touchscreen -DlerdgeFilSensor -DE3TALLKIT -DMACHINE_PRO [env:E5_427] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 [env:E5_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DABL_BLTOUCH [env:E5_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DABL_BLTOUCH -DCreality42XUseZMin [env:E5_Touch] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DMachineEnder3Touchscreen [env:E5_Touch_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DABL_BLTOUCH -DMachineEnder3Touchscreen [env:E5_Touch_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DABL_BLTOUCH -DCreality42XUseZMin -DMachineEnder3Touchscreen [env:E5_Runout] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DlerdgeFilSensor [env:E5_Runout_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DABL_BLTOUCH -DlerdgeFilSensor [env:E5_Runout_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DABL_BLTOUCH -DCreality42XUseZMin -DlerdgeFilSensor [env:E5_Runout_Touch] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DMachineEnder3Touchscreen -DlerdgeFilSensor [env:E5_Runout_Touch_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DABL_BLTOUCH -DMachineEnder3Touchscreen -DlerdgeFilSensor [env:E5_Runout_Touch_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DABL_BLTOUCH -DCreality42XUseZMin -DMachineEnder3Touchscreen -DlerdgeFilSensor [env:E5P_427] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DMACHINE_PRO [env:E5P_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DABL_BLTOUCH -DMACHINE_PRO [env:E5P_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DABL_BLTOUCH -DCreality42XUseZMin -DMACHINE_PRO [env:E5P_Touch] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DMachineEnder3Touchscreen -DMACHINE_PRO [env:E5P_Touch_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DABL_BLTOUCH -DMachineEnder3Touchscreen -DMACHINE_PRO [env:E5P_Touch_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DABL_BLTOUCH -DCreality42XUseZMin -DMachineEnder3Touchscreen -DMACHINE_PRO [env:E5P_Runout] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DlerdgeFilSensor -DMACHINE_PRO [env:E5P_Runout_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DABL_BLTOUCH -DlerdgeFilSensor -DMACHINE_PRO [env:E5P_Runout_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DABL_BLTOUCH -DCreality42XUseZMin -DlerdgeFilSensor -DMACHINE_PRO [env:E5P_Runout_Touch] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DMachineEnder3Touchscreen -DlerdgeFilSensor -DMACHINE_PRO [env:E5P_Runout_Touch_BLT] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DABL_BLTOUCH -DMachineEnder3Touchscreen -DlerdgeFilSensor -DMACHINE_PRO [env:E5P_Runout_Touch_BLT_ZM] platform = ${common_stm32f1.platform} extends = env:STM32F103RET6_creality_maple build_flags = ${env:STM32F103RET6_creality_maple.build_flags} -DMachineEnder5 -DCreality427 -DABL_BLTOUCH -DCreality42XUseZMin -DMachineEnder3Touchscreen -DlerdgeFilSensor -DMACHINE_PRO # # ATmega1280 # [env:mega1280] platform = atmelavr extends = common_avr8 board = megaatmega1280 # # MightyBoard AVR with extended pins # [mega_extended_optimized] extends = common_avr8 board_build.variant = megaextendedpins extra_scripts = ${common.extra_scripts} pre:buildroot/share/PlatformIO/scripts/copy_marlin_variant_to_framework.py upload_speed = 57600 build_flags = ${common.build_flags} -fno-tree-scev-cprop -fno-split-wide-types -Wl,--relax -mcall-prologues # # MightyBoard ATmega1280 # [env:MightyBoard1280] platform = atmelavr extends = mega_extended_optimized board = megaatmega1280 # # MightyBoard ATmega2560 # [env:MightyBoard2560] platform = atmelavr extends = mega_extended_optimized board = megaatmega2560 # # RAMBo # [env:rambo] platform = atmelavr extends = common_avr8 board = reprap_rambo # # FYSETC F6 V1.3 / V1.4 # [env:FYSETC_F6] platform = atmelavr extends = common_avr8 board = fysetc_f6 # # Sanguinololu (ATmega644p) # [env:sanguino644p] platform = atmelavr extends = common_avr8 board = sanguino_atmega644p # # Sanguinololu (ATmega1284p) # [env:sanguino1284p] platform = atmelavr extends = common_avr8 board = sanguino_atmega1284p board_upload.maximum_size = 126976 # # Melzi and clones (ATmega1284p) # [env:melzi] platform = atmelavr extends = env:sanguino1284p upload_speed = 57600 # # Sanguinololu (ATmega1284p stock bootloader with tuned flags) # [tuned_1284p] build_flags = ${common.build_flags} -fno-tree-scev-cprop -fno-split-wide-types -Wl,--relax -mcall-prologues [env:sanguino1284p_optimized] platform = atmelavr extends = env:melzi build_flags = ${tuned_1284p.build_flags} # # Melzi and clones (alias for sanguino1284p_optimized) # [env:melzi_optimized] platform = atmelavr extends = env:sanguino1284p_optimized # # Melzi and clones (Optiboot bootloader) # [env:melzi_optiboot] platform = atmelavr extends = common_avr8 board = sanguino_atmega1284p upload_speed = 115200 # # Melzi and clones (Zonestar Melzi2 with tuned flags) # [env:melzi_optiboot_optimized] platform = atmelavr extends = env:melzi_optiboot build_flags = ${tuned_1284p.build_flags} # # AT90USB1286 boards using CDC bootloader # - BRAINWAVE # - BRAINWAVE_PRO # - SAV_MKI # - TEENSYLU # [env:at90usb1286_cdc] platform = teensy extends = common_avr8 board = at90usb1286 lib_ignore = ${env:common_avr8.lib_ignore}, Teensy_ADC, NativeEthernet # # AT90USB1286 boards using DFU bootloader # - Printrboard # - Printrboard Rev.F # - ? 5DPRINT ? # [env:at90usb1286_dfu] platform = teensy extends = env:at90usb1286_cdc ################################# # # # DUE Architecture # # # ################################# # # Due (Atmel SAM3X8E ARM Cortex-M3) # # - RAMPS4DUE # - RADDS # [env:DUE] platform = atmelsam board = due src_filter = ${common.default_src_filter} + + [env:DUE_USB] platform = atmelsam extends = env:DUE board = dueUSB [env:DUE_debug] # Used when WATCHDOG_RESET_MANUAL is enabled platform = atmelsam extends = env:DUE build_flags = ${common.build_flags} -funwind-tables -mpoke-function-name # # Archim SAM # [common_DUE_archim] platform = atmelsam extends = env:DUE board = archim build_flags = ${common.build_flags} -DARDUINO_SAM_ARCHIM -DARDUINO_ARCH_SAM -D__SAM3X8E__ -DUSBCON board_build.variants_dir = buildroot/share/PlatformIO/variants/ extra_scripts = ${common.extra_scripts} Marlin/src/HAL/DUE/upload_extra_script.py [env:DUE_archim] platform = ${common_DUE_archim.platform} extends = common_DUE_archim # Used when WATCHDOG_RESET_MANUAL is enabled [env:DUE_archim_debug] platform = ${common_DUE_archim.platform} extends = common_DUE_archim build_flags = ${common_DUE_archim.build_flags} -funwind-tables -mpoke-function-name ################################# # # # SAMD51 Architecture # # # ################################# # # Adafruit Grand Central M4 (Atmel SAMD51P20A ARM Cortex-M4) # [env:SAMD51_grandcentral_m4] platform = atmelsam board = adafruit_grandcentral_m4 build_flags = ${common.build_flags} -std=gnu++17 build_unflags = -std=gnu++11 src_filter = ${common.default_src_filter} + lib_deps = ${common.lib_deps} SoftwareSerialM Adafruit SPIFlash SdFat - Adafruit Fork debug_tool = jlink ################################# # # # LPC176x Architecture # # # ################################# # # NXP LPC176x ARM Cortex-M3 # [common_LPC] platform = https://github.com/p3p/pio-nxplpc-arduino-lpc176x/archive/0.1.3.zip platform_packages = framework-arduino-lpc176x@^0.2.6 board = nxp_lpc1768 lib_ldf_mode = off lib_compat_mode = strict extra_scripts = ${common.extra_scripts} Marlin/src/HAL/LPC1768/upload_extra_script.py src_filter = ${common.default_src_filter} + + lib_deps = ${common.lib_deps} Servo custom_marlin.USES_LIQUIDCRYSTAL = arduino-libraries/LiquidCrystal@~1.0.7 custom_marlin.NEOPIXEL_LED = Adafruit NeoPixel=https://github.com/p3p/Adafruit_NeoPixel/archive/1.5.0.zip build_flags = ${common.build_flags} -DU8G_HAL_LINKS -IMarlin/src/HAL/LPC1768/include -IMarlin/src/HAL/LPC1768/u8g # debug options for backtrace #-funwind-tables #-mpoke-function-name # # NXP LPC176x ARM Cortex-M3 # [env:LPC1768] platform = ${common_LPC.platform} extends = common_LPC board = nxp_lpc1768 [env:LPC1769] platform = ${common_LPC.platform} extends = common_LPC board = nxp_lpc1769 ################################# # # # STM32 Architecture # # # ################################# # # HAL/STM32 Base Environment values # [common_stm32] platform = ststm32@~11.0 build_flags = ${common.build_flags} -IMarlin/src/HAL/STM32 -std=gnu++14 -DUSBCON -DUSBD_USE_CDC -DUSBD_VID=0x0483 -DTIM_IRQ_PRIO=13 -DADC_RESOLUTION=12 build_unflags = -std=gnu++11 src_filter = ${common.default_src_filter} + # # HAL/STM32F1 Common Environment values # [common_stm32f1] platform = ststm32@~11.0 board_build.core = maple build_flags = !python Marlin/src/HAL/STM32F1/build_flags.py ${common.build_flags} -DARDUINO_ARCH_STM32 build_unflags = -std=gnu11 -std=gnu++11 src_filter = ${common.default_src_filter} + lib_ignore = SPI, FreeRTOS701, FreeRTOS821 lib_deps = ${common.lib_deps} SoftwareSerialM platform_packages = tool-stm32duino # # STM32F103RC # [env:STM32F103RC] platform = ${common_stm32f1.platform} extends = common_stm32f1 board = genericSTM32F103RC monitor_speed = 115200 # # MEEB_3DP (STM32F103RCT6 with 512K) # [env:STM32F103RC_meeb] platform = ${common_stm32f1.platform} extends = common_stm32f1 board = MEEB_3DP build_flags = ${common_stm32f1.build_flags} -DDEBUG_LEVEL=0 -DSS_TIMER=4 -DSTM32_FLASH_SIZE=512 -DHSE_VALUE=12000000U -DUSE_USB_COMPOSITE -DVECT_TAB_OFFSET=0x2000 -DGENERIC_BOOTLOADER extra_scripts = ${common.extra_scripts} pre:buildroot/share/PlatformIO/scripts/STM32F1_create_variant.py buildroot/share/PlatformIO/scripts/STM32F103RC_MEEB_3DP.py lib_deps = ${common.lib_deps} Adafruit NeoPixel=https://github.com/ccccmagicboy/Adafruit_NeoPixel#meeb_3dp_use SoftwareSerialM USBComposite for STM32F1@0.91 debug_tool = stlink upload_protocol = dfu # # STM32F103RC_fysetc # [env:STM32F103RC_fysetc] platform = ${common_stm32f1.platform} extends = env:STM32F103RC extra_scripts = ${common.extra_scripts} buildroot/share/PlatformIO/scripts/STM32F103RC_fysetc.py build_flags = ${common_stm32f1.build_flags} -DDEBUG_LEVEL=0 lib_ldf_mode = chain debug_tool = stlink upload_protocol = serial # # BigTree SKR Mini V1.1 / SKR mini E3 / SKR E3 DIP (STM32F103RCT6 ARM Cortex-M3) # # STM32F103RC_btt ............. RCT6 with 256K # STM32F103RC_btt_USB ......... RCT6 with 256K (USB mass storage) # STM32F103RC_btt_512K ........ RCT6 with 512K # STM32F103RC_btt_512K_USB .... RCT6 with 512K (USB mass storage) # [env:STM32F103RC_btt] platform = ${common_stm32f1.platform} extends = env:STM32F103RC extra_scripts = ${common.extra_scripts} buildroot/share/PlatformIO/scripts/STM32F103RC_SKR_MINI.py build_flags = ${common_stm32f1.build_flags} -DDEBUG_LEVEL=0 -DSS_TIMER=4 monitor_speed = 115200 [env:STM32F103RC_btt_USB] platform = ${common_stm32f1.platform} extends = env:STM32F103RC_btt build_flags = ${env:STM32F103RC_btt.build_flags} -DUSE_USB_COMPOSITE lib_deps = ${env:STM32F103RC_btt.lib_deps} USBComposite for STM32F1@0.91 [env:STM32F103RC_btt_512K] platform = ${common_stm32f1.platform} extends = env:STM32F103RC_btt board_upload.maximum_size=524288 build_flags = ${env:STM32F103RC_btt.build_flags} -DSTM32_FLASH_SIZE=512 [env:STM32F103RC_btt_512K_USB] platform = ${common_stm32f1.platform} extends = env:STM32F103RC_btt_512K build_flags = ${env:STM32F103RC_btt_512K.build_flags} -DUSE_USB_COMPOSITE lib_deps = ${env:STM32F103RC_btt_512K.lib_deps} USBComposite for STM32F1@0.91 # # STM32F103RE # [env:STM32F103RE] platform = ${common_stm32f1.platform} extends = common_stm32f1 board = genericSTM32F103RE monitor_speed = 115200 # # STM32F103RE_btt ............. RET6 # STM32F103RE_btt_USB ......... RET6 (USB mass storage) # [env:STM32F103RE_btt] platform = ${common_stm32f1.platform} extends = env:STM32F103RE extra_scripts = ${common.extra_scripts} buildroot/share/PlatformIO/scripts/STM32F103RE_SKR_E3_DIP.py build_flags = ${common_stm32f1.build_flags} -DDEBUG_LEVEL=0 -DSS_TIMER=4 debug_tool = stlink upload_protocol = stlink [env:STM32F103RE_btt_USB] platform = ${common_stm32f1.platform} extends = env:STM32F103RE_btt build_flags = ${env:STM32F103RE_btt.build_flags} -DUSE_USB_COMPOSITE lib_deps = ${common_stm32f1.lib_deps} USBComposite for STM32F1@0.91 # # REMRAM_V1 # [env:REMRAM_V1] platform = ${common_stm32.platform} extends = common_stm32 board = remram_v1 build_flags = ${common_stm32.build_flags} # # ARMED (STM32) # [env:ARMED] platform = ${common_stm32.platform} extends = common_stm32 board = armed_v1 build_flags = ${common_stm32.build_flags} '-DUSB_PRODUCT="ARMED_V1"' -O2 -ffreestanding -fsigned-char -fno-move-loop-invariants -fno-strict-aliasing # # Geeetech GTM32 (STM32F103VET6) # [env:STM32F103VE_GTM32] platform = ${common_stm32f1.platform} extends = common_stm32f1 board = genericSTM32F103VE build_flags = ${common_stm32f1.build_flags} -ffunction-sections -fdata-sections -nostdlib -MMD -DMCU_STM32F103VE -DARDUINO_GENERIC_STM32F103V -DARDUINO_ARCH_STM32F1 -DBOARD_generic_stm32f103v -DDEBUG_LEVEL=DEBUG_NONE -DCONFIG_MAPLE_MINI_NO_DISABLE_DEBUG=1 -DVECT_TAB_ADDR=0x8000000 -DERROR_LED_PORT=GPIOE -DERROR_LED_PIN=6 upload_protocol = serial # # Longer 3D board in Alfawise U20 (STM32F103VET6) # [env:STM32F103VE_longer] platform = ${common_stm32f1.platform} extends = common_stm32f1 board = genericSTM32F103VE extra_scripts = ${common.extra_scripts} buildroot/share/PlatformIO/scripts/STM32F103VE_longer.py build_flags = ${common_stm32f1.build_flags} -DMCU_STM32F103VE -DSTM32F1xx -USERIAL_USB -DU20 -DTS_V12 build_unflags = ${common_stm32f1.build_unflags} -DCONFIG_MAPLE_MINI_NO_DISABLE_DEBUG=1 -DERROR_LED_PORT=GPIOE -DERROR_LED_PIN=6 # # MKS Robin Mini (STM32F103VET6) # [env:mks_robin_mini] platform = ${common_stm32f1.platform} extends = common_stm32f1 board = genericSTM32F103VE extra_scripts = ${common.extra_scripts} buildroot/share/PlatformIO/scripts/mks_robin_mini.py build_flags = ${common_stm32f1.build_flags} -DMCU_STM32F103VE # # MKS Robin Nano (STM32F103VET6) # v1.2 - Emulated Graphical 128x64 (DOGM) UI and LVGL UI # v2.0 - LVGL UI # [env:mks_robin_nano35] platform = ${common_stm32f1.platform} extends = common_stm32f1 board = genericSTM32F103VE extra_scripts = ${common.extra_scripts} buildroot/share/PlatformIO/scripts/mks_robin_nano35.py lib_deps = ${common_stm32f1.lib_deps} build_flags = ${common_stm32f1.build_flags} -DMCU_STM32F103VE -DSS_TIMER=4 debug_tool = jlink upload_protocol = jlink # # MKS Robin (STM32F103ZET6) # [env:mks_robin] platform = ${common_stm32f1.platform} extends = common_stm32f1 board = genericSTM32F103ZE extra_scripts = ${common.extra_scripts} buildroot/share/PlatformIO/scripts/mks_robin.py build_flags = ${common_stm32f1.build_flags} -DSS_TIMER=4 -DSTM32_XL_DENSITY # MKS Robin (STM32F103ZET6) # Uses HAL STM32 to support Marlin UI for TFT screen with optional touch panel # [env:mks_robin_stm32] platform = ${common_stm32.platform} extends = common_stm32 board = genericSTM32F103ZE board_build.core = stm32 board_build.variant = MARLIN_F103Zx board_build.ldscript = ldscript.ld board_build.offset = 0x7000 board_build.encrypt = Yes board_build.firmware = Robin.bin build_flags = ${common_stm32.build_flags} -DENABLE_HWSERIAL3 -DTIMER_SERIAL=TIM5 build_unflags = ${common_stm32.build_unflags} -DUSBCON -DUSBD_USE_CDC 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/mks_encrypt.py lib_deps = # # MKS Robin Pro (STM32F103ZET6) # [env:mks_robin_pro] platform = ${common_stm32f1.platform} extends = env:mks_robin extra_scripts = ${common.extra_scripts} buildroot/share/PlatformIO/scripts/mks_robin_pro.py # # TRIGORILLA PRO (STM32F103ZET6) # [env:trigorilla_pro] platform = ${common_stm32f1.platform} extends = env:mks_robin # # MKS Robin E3D (STM32F103RCT6) and # MKS Robin E3 with TMC2209 # [env:mks_robin_e3] platform = ${common_stm32f1.platform} extends = common_stm32f1 board = genericSTM32F103RC platform_packages = tool-stm32duino extra_scripts = ${common.extra_scripts} buildroot/share/PlatformIO/scripts/mks_robin_e3.py build_flags = ${common_stm32f1.build_flags} -DDEBUG_LEVEL=0 -DSS_TIMER=4 # # MKS Robin E3p (STM32F103VET6) # - LVGL UI # [env:mks_robin_e3p] platform = ${common_stm32f1.platform} extends = common_stm32f1 board = genericSTM32F103VE extra_scripts = ${common.extra_scripts} buildroot/share/PlatformIO/scripts/mks_robin_e3p.py build_flags = ${common_stm32f1.build_flags} -DMCU_STM32F103VE -DSS_TIMER=4 debug_tool = jlink upload_protocol = jlink # # MKS Robin Lite/Lite2 (STM32F103RCT6) # [env:mks_robin_lite] platform = ${common_stm32f1.platform} extends = common_stm32f1 board = genericSTM32F103RC extra_scripts = ${common.extra_scripts} buildroot/share/PlatformIO/scripts/mks_robin_lite.py # # MKS ROBIN LITE3 (STM32F103RCT6) # [env:mks_robin_lite3] platform = ${common_stm32f1.platform} extends = common_stm32f1 board = genericSTM32F103RC extra_scripts = ${common.extra_scripts} buildroot/share/PlatformIO/scripts/mks_robin_lite3.py # # JGAurora A5S A1 (STM32F103ZET6) # [env:jgaurora_a5s_a1] platform = ${common_stm32f1.platform} extends = common_stm32f1 board = genericSTM32F103ZE extra_scripts = ${common.extra_scripts} buildroot/share/PlatformIO/scripts/jgaurora_a5s_a1_with_bootloader.py build_flags = ${common_stm32f1.build_flags} -DSTM32F1xx -DSTM32_XL_DENSITY # # Malyan M200 (STM32F103CB) # [env:STM32F103CB_malyan] platform = ${common_stm32f1.platform} extends = common_stm32f1 board = malyanM200 build_flags = ${common_stm32f1.build_flags} -DMCU_STM32F103CB -D__STM32F1__=1 -std=c++1y -DSERIAL_USB -ffunction-sections -fdata-sections -Wl,--gc-sections -DDEBUG_LEVEL=0 -D__MARLIN_FIRMWARE__ lib_ignore = ${common_stm32f1.lib_ignore} SoftwareSerialM # # Malyan M200 v2 (STM32F070RB) # [env:STM32F070RB_malyan] platform = ${common_stm32.platform} extends = common_stm32 board = malyanM200v2 build_flags = ${common_stm32.build_flags} -DSTM32F0xx -DUSB_PRODUCT=\"STM32F070RB\" -DHAL_PCD_MODULE_ENABLED -O2 -ffreestanding -fsigned-char -fno-move-loop-invariants -fno-strict-aliasing -std=gnu11 -std=gnu++11 -DCUSTOM_STARTUP_FILE lib_ignore = SoftwareSerial # # Malyan M300 (STM32F070CB) # [env:malyan_M300] platform = ststm32@>=6.1.0,<6.2.0 board = malyanm300_f070cb build_flags = ${common.build_flags} -DUSBCON -DUSBD_VID=0x0483 "-DUSB_MANUFACTURER=\"Unknown\"" "-DUSB_PRODUCT=\"MALYAN_M300\"" -DHAL_PCD_MODULE_ENABLED -DUSBD_USE_CDC -DDISABLE_GENERIC_SERIALUSB -DHAL_UART_MODULE_ENABLED src_filter = ${common.default_src_filter} + # # Chitu boards like Tronxy X5s (STM32F103ZET6) # [env:chitu_f103] platform = ${common_stm32f1.platform} extends = common_stm32f1 board = CHITU_F103 extra_scripts = pre:buildroot/share/PlatformIO/scripts/common-dependencies.py pre:buildroot/share/PlatformIO/scripts/STM32F1_create_variant.py buildroot/share/PlatformIO/scripts/chitu_crypt.py build_flags = ${common_stm32f1.build_flags} -DSTM32F1xx -DSTM32_XL_DENSITY build_unflags = ${common_stm32f1.build_unflags} -DCONFIG_MAPLE_MINI_NO_DISABLE_DEBUG= -DERROR_LED_PORT=GPIOE -DERROR_LED_PIN=6 # # Some Chitu V5 boards have a problem with GPIO init. # Use this target if G28 or G29 are always failing. # [env:chitu_v5_gpio_init] platform = ${common_stm32f1.platform} extends = env:chitu_f103 build_flags = ${env:chitu_f103.build_flags} -DCHITU_V5_Z_MIN_BUGFIX # # Creality (STM32F103RET6) # [env:STM32F103RET6_creality] platform = ${env:STM32F103RE.platform} extends = env:STM32F103RE build_flags = ${env:STM32F103RE.build_flags} -DTEMP_TIMER_CHAN=4 extra_scripts = ${env:STM32F103RE.extra_scripts} pre:buildroot/share/PlatformIO/scripts/random-bin.py buildroot/share/PlatformIO/scripts/STM32F103RET6_creality.py debug_tool = jlink upload_protocol = jlink # # FLSUN QQS Pro (STM32F103VET6) using hal STM32 # board Hispeedv1 # [env:flsun_hispeedv1] platform = ${common_stm32.platform} extends = common_stm32 build_flags = ${common_stm32.build_flags} -DMCU_STM32F103VE -DSS_TIMER=4 -DENABLE_HWSERIAL3 board = genericSTM32F103VE board_build.core = stm32 board_build.variant = MARLIN_F103Vx board_build.ldscript = ldscript.ld board_build.offset = 0x7000 board_build.firmware = Robin_mini.bin board_build.encrypt = Yes board_upload.offset_address = 0x08007000 build_unflags = ${common_stm32.build_unflags} -DUSBCON -DUSBD_USE_CDC 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/mks_encrypt.py # # 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} -DTARGET_STM32F4 -DARDUINO_STEVAL -DSTM32F401xE -DUSB_PRODUCT=\"STEVAL_F401VE\" -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/STEVAL__F401XX.py lib_ignore = SoftwareSerial # # 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} -DSTM32F4 -DUSB_PRODUCT=\"STM32F407ZG\" -DTARGET_STM32F4 -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.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 = ${common_stm32.platform_packages} tool-stm32duino board = fysetc_s6 build_flags = ${common_stm32.build_flags} -DTARGET_STM32F4 -DVECT_TAB_OFFSET=0x10000 -DHAL_PCD_MODULE_ENABLED '-DUSB_PRODUCT="FYSETC_S6"' extra_scripts = ${common.extra_scripts} pre:buildroot/share/PlatformIO/scripts/fysetc_STM32S6.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} -DTARGET_STM32F4 -DARDUINO_BLACK_F407VE -DUSB_PRODUCT=\"BLACK_F407VE\" -DUSBD_USE_CDC_COMPOSITE -DUSE_USB_FS extra_scripts = ${common.extra_scripts} pre:buildroot/share/PlatformIO/scripts/generic_create_variant.py lib_ignore = SoftwareSerial # # 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} -DUSB_PRODUCT=\"STM32F407ZG\" -DTARGET_STM32F4 -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 # [stm32_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 = ${stm32_flash_drive.platform_packages} build_flags = ${stm32_flash_drive.build_flags} # # Bigtreetech GTR V1.0 (STM32F407IGT6 ARM Cortex-M4) # [env:BIGTREE_GTR_V1_0] platform = ststm32@>=5.7.0,<6.2.0 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} -DUSB_PRODUCT=\"STM32F407IG\" -DTARGET_STM32F4 -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 = ${stm32_flash_drive.platform_packages} build_flags = ${stm32_flash_drive.build_flags} # # 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} -DUSB_PRODUCT=\"STM32F407VG\" -DTARGET_STM32F4 -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] extends = lerdge_common board_build.firmware = Lerdge_X_firmware_force.bin # # Lerdge X with USB Flash Drive Support # [env:LERDGEX_usb_flash_drive] extends = LERDGEX platform_packages = ${stm32_flash_drive.platform_packages} build_flags = ${stm32_flash_drive.build_flags} # # Lerdge S # [env:LERDGES] extends = lerdge_common board_build.firmware = Lerdge_firmware_force.bin # # Lerdge S with USB Flash Drive Support # [env:LERDGES_usb_flash_drive] extends = LERDGES platform_packages = ${stm32_flash_drive.platform_packages} build_flags = ${stm32_flash_drive.build_flags} # # Lerdge K # [env:LERDGEK] 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] extends = LERDGEK platform_packages = ${stm32_flash_drive.platform_packages} build_flags = ${stm32_flash_drive.build_flags} # # RUMBA32 # [env:rumba32] platform = ${common_stm32.platform} extends = common_stm32 build_flags = ${common_stm32.build_flags} -Os "-DUSB_PRODUCT=\"RUMBA32\"" -DHAL_PCD_MODULE_ENABLED -DDISABLE_GENERIC_SERIALUSB -DHAL_UART_MODULE_ENABLED board = rumba32_f446ve upload_protocol = dfu monitor_speed = 500000 # # MKS Robin Nano V1.2 and V2 using hal STM32 # [env:mks_robin_nano35_stm32] platform = ${common_stm32.platform} extends = common_stm32 build_flags = ${common_stm32.build_flags} -DMCU_STM32F103VE -DSS_TIMER=4 -DENABLE_HWSERIAL3 board = genericSTM32F103VE board_build.core = stm32 board_build.variant = MARLIN_F103Vx board_build.ldscript = ldscript.ld board_build.offset = 0x7000 board_build.encrypt = Yes board_build.firmware = Robin_nano35.bin board_upload.offset_address = 0x08007000 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 buildroot/share/PlatformIO/scripts/mks_encrypt.py # # MKS Robin Pro V2 # [env:mks_robin_pro2] platform = ${common_stm32.platform} platform_packages = ${stm32_flash_drive.platform_packages} extends = common_stm32 build_flags = ${stm32_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 # # MKS Robin Nano V3 # [env:mks_robin_nano_v3] platform = ${common_stm32.platform} extends = common_stm32 build_flags = ${common_stm32.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 = ${stm32_flash_drive.platform_packages} build_flags = ${stm32_flash_drive.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] 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 = ${stm32_flash_drive.build_flags} -DUSBCON -DUSE_USBHOST_HS -DUSBD_IRQ_PRIO=5 -DUSBD_IRQ_SUBPRIO=6 -DUSE_USB_HS_IN_FS -DUSBD_USE_CDC_MSC # # Mingda MPX_ARM_MINI # [env:mingda_mpx_arm_mini] platform = ${common_stm32.platform} extends = common_stm32 board = genericSTM32F103ZE board_build.core = stm32 board_build.variant = MARLIN_F103Zx board_build.ldscript = ldscript.ld board_build.offset = 0x10000 build_flags = ${common_stm32.build_flags} -DENABLE_HWSERIAL3 -DTIMER_SERIAL=TIM5 build_unflags = ${common_stm32.build_unflags} -DUSBCON -DUSBD_USE_CDC extra_scripts = ${common.extra_scripts} pre:buildroot/share/PlatformIO/scripts/generic_create_variant.py buildroot/share/PlatformIO/scripts/stm32_bootloader.py ################################# # # # Other Architectures # # # ################################# # # Espressif ESP32 # [env:esp32] platform = espressif32@2.1.0 board = esp32dev build_flags = ${common.build_flags} -DCORE_DEBUG_LEVEL=0 src_filter = ${common.default_src_filter} + lib_ignore = NativeEthernet upload_speed = 500000 monitor_speed = 250000 #upload_port = marlinesp.local #board_build.flash_mode = qio [env:FYSETC_E4] platform = espressif32@1.11.2 extends = env:esp32 board_build.partitions = default_16MB.csv # # Teensy 3.1 / 3.2 (ARM Cortex-M4) # [env:teensy31] platform = teensy board = teensy31 src_filter = ${common.default_src_filter} + # # Teensy 3.5 / 3.6 (ARM Cortex-M4) # [env:teensy35] platform = teensy board = teensy35 src_filter = ${common.default_src_filter} + # # Native # No supported Arduino libraries, base Marlin only # [env:linux_native] platform = native framework = build_flags = -D__PLAT_LINUX__ -std=gnu++17 -ggdb -g -lrt -lpthread -D__MARLIN_FIRMWARE__ -Wno-expansion-to-defined src_build_flags = -Wall -IMarlin/src/HAL/LINUX/include build_unflags = -Wall lib_ldf_mode = off lib_deps = src_filter = ${common.default_src_filter} + # [env:include_tree] platform = atmelavr board = megaatmega2560 build_flags = -c -H -std=gnu++11 -Wall -Os -D__MARLIN_FIRMWARE__ src_filter = +