# This is the configuration file for PlatformIO, a cross-platform tool and IDE # to build and develop software for embedded systems. # # To build the firmware with PlatformIO, install PlatformIO Core (CLI, no GUI): # - https://docs.platformio.org/en/latest//core/installation.html # # For documentation on this file, see: # - https://docs.platformio.org/en/latest/projectconf/index.html # # To add support for another STM32F1xx board, add a new [env:name..] section # with the appropriate `board` and (optionally) `board_build.ldscript`. # For a list of supported hardware, see: # - https://docs.platformio.org/en/latest/platforms/ststm32.html # # To add support for additional grblHAL plugins or drivers, make the necessary # changes to the common.build_flags, common.lib_deps and common.lib_extra_dirs # below. # # By default this file sets the preprocessor directive `OVERRIDE_MY_MACHINE` # to ignore all settings in `Inc/my_machine.h`. Instead, you should edit this # file and add the necessary directives (e.g. `-D FOOBAR_ENABLE`) to either # `common.build_flags` or the environment specific `build_flags`. # # Typical command line usage: # # # Build firmware for all defined environments # pio run # # Build only for specific environments with the -e option # pio run -e BTT_SKR_MINI_E3_V20 -e BTT_SKR_MINI_E3_V20_USB # # List the freshly built firmware ELF (.elf) and binary (.bin) files: # ls -l .pio/build/*/firmware.* # # If the target supports uploading (via `upload_protocol`): # pio run -e bluepill_f103c8_128k -t upload # # Clean up build related resources # pio run -t clean # # # NOTE: PlatformIO support is provided by the community and platformio.ini is # not maintained or tested by the repo owner. # Please submit a PR with bug fixes and enhancments. # [platformio] include_dir = Inc src_dir = Src boards_dir = platformio_boards # Additional PIO boards not supported by the ststm32 core. UNRELATED to grblHAL boards. extra_configs = platformio.local.ini # Custom local config/overrides, ignored by git [common] build_flags = -I . -I boards -I FatFs -I FatFs/STM -I Drivers/FATFS/Target -I Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc -I Middlewares/ST/STM32_USB_Device_Library/Core/Inc -I USB_DEVICE/App -I USB_DEVICE/Target -D _USE_IOCTL=1 -D _USE_WRITE=1 -D _VOLUMES=1 -Wl,-u,_printf_float -Wl,-u,_scanf_float # Ignore all settings in Inc/my_machine.h (and instead use the below build flags) -D OVERRIDE_MY_MACHINE # Uncomment to enable debug builds #-D DEBUG # Uncomment to enable support for keypad #-D KEYPAD_ENABLE=1 # Uncomment to enable support for odometer #-D ODOMETER_ENABLE=1 # Uncomment to enable support for running G-code from the microSD card # You also need to uncomment FatFS and sdcard in lib_deps (see below) #-D SDCARD_ENABLE=1 # Set to 1 or 2 (see Inc/my_machine.h) #-D SPINDLE_HUANYANG=1 lib_deps = boards bluetooth grbl keypad laser motors trinamic odometer fans spindle plugins embroidery Drivers/FATFS/App Drivers/FATFS/Target # USB serial support Middlewares/ST/STM32_USB_Device_Library/Core Middlewares/ST/STM32_USB_Device_Library/Class USB_DEVICE/App USB_DEVICE/Target # To enable support for SD card, you must grab a copy FatFS: # curl -O http://elm-chan.org/fsw/ff/arc/ff14b.zip # unzip ff14b.zip 'source/*' # mv source/* FatFS # rm -fr ff14b.zip source FatFS/diskio.c # Next, apply the changes outlined in FatFS/README.md and then # uncomment `FatFS` and `sdcard` below. FatFs sdcard # USB serial support # Core # Class # App # Target lib_extra_dirs = . boards FatFs Middlewares/ST/STM32_USB_Device_Library USB_DEVICE [eth_networking] build_flags = -I lwip/src/include -I networking/wiznet lib_deps = lwip networking lib_extra_dirs = [wiznet_networking] build_flags = -I networking/wiznet -I Middlewares/Third_Party/LwIP/src/include -I Middlewares/Third_Party/LwIP/system -I Middlewares/Third_Party/LwIP/src/include/netif -I Middlewares/Third_Party/LwIP/src/include/lwip lib_deps = networking webui Middlewares/Third_Party/LwIP lib_extra_dirs = [env] platform = ststm32 platform_packages = framework-stm32cubef4 @ ~1.26.2 framework = stm32cube # Do not produce .a files for lib deps (which would prevent them from overriding weak symbols) lib_archive = no lib_ldf_mode = off [env:btt_skr_pro_1_1] # Untested and might not boot. Please report issues at: # https://github.com/grblHAL/STM32F4xx/issues board = genericSTM32F407VGT6 board_build.ldscript = STM32F407VGTX_BL32K_FLASH.ld build_flags = ${common.build_flags} # See Inc/my_machine.h for options -D BOARD_BTT_SKR_PRO_1_1= # 8MHz crystal -D HSE_VALUE=8000000 -D HAS_BOOTLOADER -D USB_SERIAL_CDC=1 lib_deps = ${common.lib_deps} eeprom lib_extra_dirs = ${common.lib_extra_dirs} # Upload is not supported for this board since BOOT0 is tied to GND. # With the default boot loader, you must deploy new firmware by copying # .pio/build//firmware.bin (produced by `pio run`) to the SD card. [env:btt_skr_2_tmc2130] # Untested and might not boot. Please report issues at: # https://github.com/grblHAL/STM32F4xx/issues board = genericSTM32F407VGT6 board_build.ldscript = STM32F407VGTX_BL32K_FLASH.ld build_flags = ${common.build_flags} -D WEB_BUILD -D BOARD_BTT_SKR_20 -D USE_HAL_DRIVER -D STM32F407xx -D HSE_VALUE=8000000 -D USB_SERIAL_CDC=1 -D PROBE_ENABLE=1 -D TRINAMIC_ENABLE=2130 -D TRINAMIC_UART_ENABLE=0 -D BLUETOOTH_ENABLE=0 -D NETWORKING_ENABLE=0 -D ESTOP_ENABLE=1 -D SPINDLE0_ENABLE=11 -D N_SPINDLE=1 lib_deps = ${common.lib_deps} eeprom lib_extra_dirs = ${common.lib_extra_dirs} # Upload is not supported for this board since BOOT0 is tied to GND. # With the default boot loader, you must deploy new firmware by copying # .pio/build//firmware.bin (produced by `pio run`) to the SD card. [env:btt_skr_2_tmc5160] # Untested and might not boot. Please report issues at: # https://github.com/grblHAL/STM32F4xx/issues board = genericSTM32F407VGT6 board_build.ldscript = STM32F407VGTX_BL32K_FLASH.ld build_flags = ${common.build_flags} -D WEB_BUILD -D BOARD_BTT_SKR_20 -D USE_HAL_DRIVER -D STM32F407xx -D HSE_VALUE=8000000 -D USB_SERIAL_CDC=1 -D PROBE_ENABLE=1 -D TRINAMIC_ENABLE=5160 -D TRINAMIC_UART_ENABLE=0 -D BLUETOOTH_ENABLE=0 -D NETWORKING_ENABLE=0 -D ESTOP_ENABLE=1 -D SPINDLE0_ENABLE=11 -D N_SPINDLE=1 lib_deps = ${common.lib_deps} eeprom lib_extra_dirs = ${common.lib_extra_dirs} # Upload is not supported for this board since BOOT0 is tied to GND. # With the default boot loader, you must deploy new firmware by copying # .pio/build//firmware.bin (produced by `pio run`) to the SD card. [env:btt_skr_2_tmc2209] # Untested and might not boot. Please report issues at: # https://github.com/grblHAL/STM32F4xx/issues board = genericSTM32F407VGT6 board_build.ldscript = STM32F407VGTX_BL32K_FLASH.ld build_flags = ${common.build_flags} -D WEB_BUILD -D BOARD_BTT_SKR_20 -D USE_HAL_DRIVER -D STM32F407xx -D HSE_VALUE=8000000 -D USB_SERIAL_CDC=1 -D PROBE_ENABLE=1 -D TRINAMIC_ENABLE=2209 -D TRINAMIC_UART_ENABLE=2 -D BLUETOOTH_ENABLE=0 -D NETWORKING_ENABLE=0 -D ESTOP_ENABLE=1 -D SPINDLE0_ENABLE=11 -D N_SPINDLE=1 lib_deps = ${common.lib_deps} eeprom lib_extra_dirs = ${common.lib_extra_dirs} # Upload is not supported for this board since BOOT0 is tied to GND. # With the default boot loader, you must deploy new firmware by copying # .pio/build//firmware.bin (produced by `pio run`) to the SD card. [env:fysetc_s6] board = fysetc_s6 board_build.ldscript = STM32F446RETX_NO_BL_FLASH.ld build_flags = ${common.build_flags} # See Inc/my_machine.h for options -D BOARD_FYSETC_S6= # 12MHz crystal -D HSE_VALUE=12000000 -D USB_SERIAL_CDC=1 lib_deps = ${common.lib_deps} eeprom lib_extra_dirs = ${common.lib_extra_dirs} upload_protocol = dfu [env:fysetc_s6_tmc2209] board = fysetc_s6 board_build.ldscript = STM32F446RETX_NO_BL_FLASH.ld build_flags = ${common.build_flags} # See Inc/my_machine.h for options -D BOARD_FYSETC_S6= # 12MHz crystal -D HSE_VALUE=12000000 -D USB_SERIAL_CDC=1 # TMC2209 stepper drivers -D TRINAMIC_ENABLE=2209 lib_deps = ${common.lib_deps} eeprom trinamic lib_extra_dirs = ${common.lib_extra_dirs} upload_protocol = dfu [env:nucleo_f411re_morpho_cnc] board = nucleo_f411re board_build.ldscript = STM32F411CEUX_FLASH.ld build_flags = ${common.build_flags} # See Inc/my_machine.h for options -D BOARD_MORPHO_CNC= -D NUCLEO_F411= lib_deps = ${common.lib_deps} eeprom lib_extra_dirs = ${common.lib_extra_dirs} # Alternatively, place the .pio/build//firmware.bin on the NODE_F4xxRE drive upload_protocol = stlink [env:nucleo_f411re_protoneer] board = nucleo_f411re board_build.ldscript = STM32F411CEUX_FLASH.ld build_flags = ${common.build_flags} # See Inc/my_machine.h for options -D BOARD_PROTONEER_3XX= -D NUCLEO_F411= # Uncomment to enable Spindle PWM output on the SpinDir pin #-D PROTONEER_SPINDLE_PWM= lib_deps = ${common.lib_deps} eeprom lib_extra_dirs = ${common.lib_extra_dirs} # Alternatively, place the .pio/build//firmware.bin on the NODE_F4xxRE drive upload_protocol = stlink [env:nucleo_f446re_morpho_cnc] board = nucleo_f446re board_build.ldscript = STM32F446RETX_FLASH.ld build_flags = ${common.build_flags} # See Inc/my_machine.h for options -D BOARD_MORPHO_CNC= -D NUCLEO_F446= lib_deps = ${common.lib_deps} eeprom lib_extra_dirs = ${common.lib_extra_dirs} # Alternatively, place the .pio/build//firmware.bin on the NODE_F4xxRE drive upload_protocol = stlink [env:nucleo_f446re_generic_uno] board = nucleo_f446re board_build.ldscript = STM32F446RETX_FLASH.ld build_flags = ${common.build_flags} # See Inc/my_machine.h for options -D BOARD_GENERIC_UNO= -D NUCLEO_F446= lib_deps = ${common.lib_deps} eeprom lib_extra_dirs = ${common.lib_extra_dirs} # Alternatively, place the .pio/build//firmware.bin on the NODE_F4xxRE drive upload_protocol = stlink [env:nucleo_f446re_protoneer] board = nucleo_f446re board_build.ldscript = STM32F446RETX_FLASH.ld build_flags = ${common.build_flags} # See Inc/my_machine.h for options -D BOARD_PROTONEER_3XX= -D NUCLEO_F446= # Uncomment to enable Spindle PWM output on the SpinDir pin #-D PROTONEER_SPINDLE_PWM= lib_deps = ${common.lib_deps} eeprom lib_extra_dirs = ${common.lib_extra_dirs} # Alternatively, place the .pio/build//firmware.bin on the NODE_F4xxRE drive upload_protocol = stlink [env:blackpill_f411ce] board = blackpill_f411ce board_build.ldscript = STM32F411CEUX_FLASH.ld build_flags = ${common.build_flags} # See Inc/my_machine.h for options -D BOARD_BLACKPILL= -D USB_SERIAL_CDC=1 # Uncomment to enable Spindle PWM output on the SpinDir pin #-D PROTONEER_SPINDLE_PWM= lib_deps = ${common.lib_deps} lib_extra_dirs = ${common.lib_extra_dirs} # Alternatively, place the .pio/build//firmware.bin on the NODE_F4xxRE drive ; change MCU frequency upload_protocol = dfu [env:blackpill_f401cc_uni] board = blackpill_f401cc board_build.ldscript = STM32F401CCUX_FLASH.ld build_flags = ${common.build_flags} -D BOARD_STM32F401_UNI= -D HSE_VALUE=25000000 -D USB_SERIAL_CDC=1 -D SDCARD_ENABLE=1 -D EEPROM_IS_FRAM=1 lib_deps = ${common.lib_deps} eeprom FatFs sdcard lib_extra_dirs = ${common.lib_extra_dirs} upload_protocol = stlink [env:blackpill_f401cc_uni_BL] # With the default boot loader, you must deploy new firmware by copying # .pio/build//firmware.bin (produced by `pio run`) to the SD card. board = blackpill_f401cc board_build.ldscript = STM32F401CCUX_BL16K_FLASH.ld build_flags = ${common.build_flags} -D BOARD_STM32F401_UNI= -D HSE_VALUE=25000000 -D HAS_BOOTLOADER=1 -D USB_SERIAL_CDC=1 -D SDCARD_ENABLE=1 -D EEPROM_IS_FRAM=1 lib_deps = ${common.lib_deps} eeprom FatFs sdcard lib_extra_dirs = ${common.lib_extra_dirs} [env:Halcyon_v1_RC] board = genericSTM32F401RC board_build.ldscript = STM32F401RC_FLASH.ld build_flags = ${common.build_flags} -D BOARD_HALCYON_V1= -D HSE_VALUE=8000000 -D USB_SERIAL_CDC=1 -D SDCARD_ENABLE=1 -D EEPROM_IS_FRAM=1 lib_deps = ${common.lib_deps} eeprom FatFs sdcard lib_extra_dirs = ${common.lib_extra_dirs} upload_protocol = stlink [env:Halcyon_v1_RC_BL] # With the default boot loader, you must deploy new firmware by copying # .pio/build//firmware.bin (produced by `pio run`) to the SD card. extends = env:Halcyon_v1_RC board_build.ldscript = STM32F401RC_BL16K_FLASH.ld build_flags = ${common.build_flags} -D BOARD_HALCYON_V1= -D HSE_VALUE=8000000 -D HAS_BOOTLOADER=1 -D USB_SERIAL_CDC=1 -D SDCARD_ENABLE=1 -D EEPROM_IS_FRAM=1 lib_deps = ${common.lib_deps} eeprom FatFs sdcard lib_extra_dirs = ${common.lib_extra_dirs} [env:Halcyon_v1_RE] board = genericSTM32F401RE board_build.ldscript = STM32F401RE_FLASH.ld build_flags = ${common.build_flags} -D BOARD_HALCYON_V1= -D HSE_VALUE=8000000 -D USB_SERIAL_CDC=1 -D SDCARD_ENABLE=1 -D KEYPAD_ENABLE=1 -D EEPROM_IS_FRAM=1 lib_deps = ${common.lib_deps} eeprom trinamic FatFs sdcard lib_extra_dirs = ${common.lib_extra_dirs} upload_protocol = stlink [env:Halcyon_v1_RE_BL] # With the default boot loader, you must deploy new firmware by copying # .pio/build//firmware.bin (produced by `pio run`) to the SD card. extends = env:Halcyon_v1_RE board_build.ldscript = STM32F401RE_BL16K_FLASH.ld build_flags = ${common.build_flags} -D BOARD_HALCYON_V1= -D HSE_VALUE=8000000 -D HAS_BOOTLOADER=1 -D USB_SERIAL_CDC=1 -D SDCARD_ENABLE=1 -D KEYPAD_ENABLE=1 -D EEPROM_IS_FRAM=1 lib_deps = ${common.lib_deps} eeprom trinamic FatFs sdcard lib_extra_dirs = ${common.lib_extra_dirs} [env:f446re_flexi_cnc] board = genericSTM32F446RE ; change microcontroller board_build.mcu = stm32f446ret6 board_build.ldscript = FLEXI_STM32F446RETX_BL_FLASH.ld build_flags = ${common.build_flags} -D USB_SERIAL_CDC=1 -D BOARD_FLEXI_HAL=1 -D HAS_BOOTLOADER=1 -D UF2_BOOTLOADER=1 -D HSE_VALUE=25000000 -D NVS_SIZE=16384 # -D FTP_ENABLE=1 # -D MDNS_ENABLE=0 # -D SSDP_ENABLE=0 lib_deps = ${common.lib_deps} eeprom lib_extra_dirs = ${common.lib_extra_dirs} extra_scripts = post:flexi_script.py # Alternatively, place the .pio/build//firmware.bin on the NODE_F4xxRE drive upload_protocol = stlink [env:sienci_slb_ext] board = genericSTM32F412VG upload_protocol = dfu board_build.ldscript = STM32F412VGTX_FLASH.ld extra_scripts = pre:sienci_extra_script.py post:sienci_extra_script.py custom_prog_version = SLB_EXT build_flags = ${common.build_flags} ${wiznet_networking.build_flags} -D WEB_BUILD -D BOARD_LONGBOARD32_EXT -D USE_HAL_DRIVER -D ETH_TX_DESC_CNT=12 -D TCP_MSS=1460 -D TCP_SND_BUF=5840 -D LWIP_NUM_NETIF_CLIENT_DATA=2 -D LWIP_HTTPD_CUSTOM_FILES=0 -D MEM_SIZE=16384 -D LWIP_IGMP=1 -D LWIP_MDNS_RESPONDER=1 -D LWIP_NETIF_STATUS_CALLBACK=1 -D LWIP_HTTPD_DYNAMIC_HEADERS=1 -D LWIP_HTTPD_DYNAMIC_FILE_READ=1 -D LWIP_HTTPD_SUPPORT_V09=0 -D LWIP_HTTPD_SUPPORT_11_KEEPALIVE=1 -D LWIP_HTTPD_CGI_ADV=1 -D LWIP_HTTPD_SUPPORT_POST=1 -D LWIP_HTTPD_SUPPORT_WEBDAV=1 -D STM32F412Vx -D STEP_PULSE_LATENCY=1.3 -D RTC_ENABLE=1 -D USB_SERIAL_CDC=1 -D N_AXIS=4 -D Y_AUTO_SQUARE=1 -D PROBE_ENABLE=1 -D MODBUS_ENABLE=3 -D MODBUS_BAUDRATE=3 -D EEPROM_ENABLE=128 -D SDCARD_ENABLE=2 -D MACROS_ENABLE=1 -D N_MACROS=3 -D RGB_LED_ENABLE=2 -D EVENTOUT_ENABLE=1 -D N_EVENTS=4 -D _WIZCHIP_=5500 -D ETHERNET_ENABLE=1 -D TELNET_ENABLE=1 -D WEBSOCKET_ENABLE=1 -D FTP_ENABLE=1 -D N_TOOLS=32 -D ENABLE_BACKLASH_COMPENSATION=1 -D NGC_EXPRESSIONS_ENABLE=1 -D ROTARY_FIX=1 -D STATUS_LIGHT_ENABLE=2 -D SAFETY_DOOR_ENABLE=0 -D CONTROL_ENABLE=64 ;-D SPINDLE0_ENABLE=11 ;-D SPINDLE1_ENABLE=14 ;-D SPINDLE2_ENABLE=6 -D SPINDLE0_ENABLE=SPINDLE_ALL_VFD -D SPINDLE1_ENABLE=SPINDLE_PWM0 -D SPINDLE2_ENABLE=SPINDLE_PWM1_NODIR -D N_SPINDLE=12 -D SPINDLE_OFFSET=1 -D DEFAULT_PWM_SPINDLE1_IGNORE_DELAYS=1 -D DEFAULT_PWM_SPINDLE_DISABLE_LASER_MODE=1 -D DEFAULT_STEP_PULSE_MICROSECONDS=5 -D DEFAULT_STEPPER_IDLE_LOCK_TIME=255 -D DEFAULT_ENABLE_SIGNALS_INVERT_MASK=0 -D DEFAULT_DIR_SIGNALS_INVERT_MASK=6 -D DEFAULT_LIMIT_SIGNALS_INVERT_MASK=15 -D DEFAULT_PROBE_SIGNAL_INVERT=1 -D DEFAULT_TOOLSETTER_SIGNAL_INVERT=1 -D DEFAULT_CONTROL_SIGNALS_INVERT_MASK=14 -D DEFAULT_PLANNER_BUFFER_BLOCKS=128 -D DEFAULT_RESET_OVERRIDES=1 -D DEFAULT_HOMING_ENABLE=1 -D DEFAULT_HOMING_SINGLE_AXIS_COMMANDS=1 -D DEFAULT_HOMING_INIT_LOCK=1 -D DEFAULT_HOMING_FORCE_SET_ORIGIN=1 -D DEFAULT_HOMING_OVERRIDE_LOCKS=1 -D DEFAULT_HOMING_DIR_MASK=1 -D DEFAULT_HOMING_FEED_RATE=150 -D DEFAULT_HOMING_SEEK_RATE=4300 -D DEFAULT_HOMING_DEBOUNCE_DELAY=25 -D DEFAULT_HOMING_PULLOFF=1.5 -D DEFAULT_PARKING_ENABLE=0 -D DEFAULT_JOG_LIMIT_ENABLE=1 -D DEFAULT_INVERT_SPINDLE_ENABLE_PIN=0 -D DEFAULT_INVERT_SPINDLE_CCW_PIN=0 -D DEFAULT_INVERT_SPINDLE_PWM_PIN=0 -D DEFAULT_SPINDLE_RPM_MAX=24000 -D DEFAULT_SPINDLE_RPM_MIN=7500 -D DEFAULT_SPINDLE_PWM_FREQ=1000 -D DEFAULT_DOOR_IGNORE_WHEN_IDLE=1 -D DEFAULT_DOOR_KEEP_COOLANT_ON=1 -D TRINAMIC_DEFAULT_MICROSTEPS=0 -D TRINAMIC_DYNAMIC_CURRENT=0 -D TRINAMIC_EXTENDED_SETTINGS=0 -D MAXIMUM_STEPPER_CURRENT_2660=0 -D DEFAULT_X_CURRENT=0 -D DEFAULT_Y_CURRENT=0 -D DEFAULT_Z_CURRENT=0 -D TMC_X_HOLD_CURRENT_PCT=0 -D TMC_Y_HOLD_CURRENT_PCT=0 -D TMC_Z_HOLD_CURRENT_PCT=0 -D DEFAULT_X_MAX_TRAVEL=1260 -D DEFAULT_Y_MAX_TRAVEL=1248 -D DEFAULT_Z_MAX_TRAVEL=170 -D DEFAULT_A_MAX_TRAVEL=0 -D DEFAULT_X_ACCELERATION=1500 -D DEFAULT_Y_ACCELERATION=1500 -D DEFAULT_Z_ACCELERATION=1500 -D DEFAULT_A_ACCELERATION=1000 -D DEFAULT_X_MAX_RATE=15000 -D DEFAULT_Y_MAX_RATE=15000 -D DEFAULT_Z_MAX_RATE=6000 -D DEFAULT_A_MAX_RATE=8000 -D DEFAULT_X_STEPS_PER_MM=320 -D DEFAULT_Y_STEPS_PER_MM=320 -D DEFAULT_Z_STEPS_PER_MM=200 -D DEFAULT_A_STEPS_PER_MM=79.012345679 -D DEFAULT_AXIS_ROTATIONAL_MASK=8 -D DEFAULT_SOFT_LIMIT_ENABLE=1 -D DEFAULT_HARD_LIMIT_ENABLE=1 -D DEFAULT_NO_UNLOCK_AFTER_ESTOP=1 -D DEFAULT_SPINDLE1_RPM_MAX=255 -D DEFAULT_SPINDLE1_PWM_FREQ=1000 -D DEFAULT_SPINDLE_AT_SPEED_TOLERANCE=5 -D DEFAULT_SPINDLE_ON_DELAY=11000 -D DEFAULT_RGB_STRIP0_LENGTH=1 -D DEFAULT_RGB_STRIP1_LENGTH=0 -D NETWORK_IPMODE=0 -D DEFAULT_MOTOR_FAULT_SIGNALS_ENABLE=15 -D DEFAULT_MOTOR_FAULT_SIGNALS_INVERT=15 -D DEFAULT_PERSIST_TOOL=1 -D DEFAULT_SAFETY_DOOR_SPINDLE_DELAY=11 -D ATCI_ENABLE=1 lib_deps = ${common.lib_deps} eeprom ${wiznet_networking.lib_deps} https://github.com/Sienci-Labs/grblhal-rgb-plugin.git https://github.com/Sienci-Labs/sienci-atci-plugin.git lib_extra_dirs = ${common.lib_extra_dirs} [env:btt_skr_2_f429] # Based on env:btt_skr_2_tmc2130. TMC2130 support disabled. # # NOTE: If you want to connect DC spindle directly # to powerful MOSFET outputs, like HE0 or HE1, # do not forget to install flyback diode, to prevent damage. board = genericSTM32F429VG board_build.ldscript = STM32F429VGTX_VSEND_FLASH.ld build_flags = ${common.build_flags} -D WEB_BUILD -D STM32F429xx -D BOARD_BTT_SKR_20 -D USE_HAL_DRIVER -D HSE_VALUE=8000000 -D USB_SERIAL_CDC=1 -D PROBE_ENABLE=1 -D BLUETOOTH_ENABLE=0 -D NETWORKING_ENABLE=0 -D ESTOP_ENABLE=1 -D SPINDLE0_ENABLE=SPINDLE_PWM0 -D N_SPINDLE=1 lib_deps = ${common.lib_deps} eeprom lib_extra_dirs = ${common.lib_extra_dirs} [env:btt_skr_2_f429_bl32k] # Based on env:btt_skr_2_f429. Version with 32K stock bootloader. # # NOTE: There is a known bug with this revision of the board. # The SKR2 F429 may reboot during operation when an SD-card is inserted. # Remove the SD-card after flashing. # # NOTE 2: Also, you may need to manually restart the board multiple times # for successful flashing. Look at the SWDIO LED during the process. # It should blink rapidly multiple times after the reset. # If it blinks only a few times, you need to restart the board again. extends = env:btt_skr_2_f429 board_build.ldscript = STM32F429VGTX_BL32K_FLASH.ld build_flags = ${env:btt_skr_2_f429.build_flags} -D HAS_BOOTLOADER=1