My Marlin configs for Fabrikator Mini and CTC i3 Pro B
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.

platformio.ini 14KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496
  1. #
  2. # Marlin Firmware
  3. # PlatformIO Configuration File
  4. #
  5. # For detailed documentation with EXAMPLES:
  6. #
  7. # http://docs.platformio.org/en/latest/projectconf.html
  8. #
  9. # Automatic targets - enable auto-uploading
  10. # targets = upload
  11. #
  12. # By default platformio build will abort after 5 errors.
  13. # Remove '-fmax-errors=5' from build_flags below to see all.
  14. #
  15. [platformio]
  16. src_dir = Marlin
  17. build_dir = .pioenvs
  18. lib_dir = .piolib
  19. libdeps_dir = .piolibdeps
  20. boards_dir = buildroot/share/PlatformIO/boards
  21. env_default = megaatmega2560
  22. [common]
  23. default_src_filter = +<src/*> -<src/config> -<src/HAL> +<src/HAL/shared>
  24. build_flags = -fmax-errors=5
  25. -g
  26. -ggdb
  27. lib_deps =
  28. https://github.com/MarlinFirmware/U8glib-HAL/archive/dev.zip
  29. LiquidCrystal@1.3.4
  30. TMCStepper@<1.0.0
  31. Adafruit NeoPixel@1.1.3
  32. https://github.com/lincomatic/LiquidTWI2/archive/30aa480.zip
  33. https://github.com/ameyer/Arduino-L6470/archive/dev.zip
  34. https://github.com/trinamic/TMC26XStepper/archive/c1921b4.zip
  35. https://github.com/mikeshub/SailfishLCD.git
  36. https://github.com/mikeshub/SailfishRGB_LED.git
  37. https://github.com/mikeshub/SlowSoftI2CMaster.git
  38. #################################
  39. # #
  40. # Unique Core Architectures #
  41. # #
  42. # Add a new "env" below if no #
  43. # entry has values suitable to #
  44. # build for a given board. #
  45. # #
  46. #################################
  47. #
  48. # ATmega2560
  49. #
  50. [env:megaatmega2560]
  51. platform = atmelavr
  52. framework = arduino
  53. board = megaatmega2560
  54. build_flags = ${common.build_flags}
  55. board_build.f_cpu = 16000000L
  56. lib_deps = ${common.lib_deps}
  57. src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
  58. monitor_speed = 250000
  59. #
  60. # ATmega1280
  61. #
  62. [env:megaatmega1280]
  63. platform = atmelavr
  64. framework = arduino
  65. board = megaatmega1280
  66. build_flags = ${common.build_flags}
  67. board_build.f_cpu = 16000000L
  68. lib_deps = ${common.lib_deps}
  69. src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
  70. monitor_speed = 250000
  71. #
  72. # AT90USB1286 boards using CDC bootloader
  73. # - BRAINWAVE
  74. # - BRAINWAVE_PRO
  75. # - SAV_MKI
  76. # - TEENSYLU
  77. #
  78. [env:at90usb1286_cdc]
  79. platform = teensy
  80. framework = arduino
  81. board = at90usb1286
  82. build_flags = ${common.build_flags}
  83. lib_deps = ${common.lib_deps}
  84. src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
  85. extra_scripts = pre:buildroot/share/atom/create_custom_upload_command_CDC.py
  86. monitor_speed = 250000
  87. #
  88. # AT90USB1286 boards using DFU bootloader
  89. # - PrintrBoard
  90. # - PrintrBoard Rev.F
  91. # - ? 5DPRINT ?
  92. #
  93. [env:at90usb1286_dfu]
  94. platform = teensy
  95. framework = arduino
  96. board = at90usb1286
  97. build_flags = ${common.build_flags}
  98. lib_deps = ${common.lib_deps}
  99. src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
  100. extra_scripts = pre:buildroot/share/atom/create_custom_upload_command_DFU.py
  101. monitor_speed = 250000
  102. #
  103. # Due (Atmel SAM3X8E ARM Cortex-M3)
  104. #
  105. # - RAMPS4DUE
  106. # - RADDS
  107. #
  108. [env:DUE]
  109. platform = atmelsam
  110. framework = arduino
  111. board = due
  112. build_flags = ${common.build_flags}
  113. lib_deps = ${common.lib_deps}
  114. lib_ignore = c1921b4
  115. src_filter = ${common.default_src_filter} +<src/HAL/HAL_DUE>
  116. monitor_speed = 250000
  117. [env:DUE_USB]
  118. platform = atmelsam
  119. framework = arduino
  120. board = dueUSB
  121. build_flags = ${common.build_flags}
  122. lib_deps = ${common.lib_deps}
  123. lib_ignore = c1921b4
  124. src_filter = ${common.default_src_filter} +<src/HAL/HAL_DUE>
  125. monitor_speed = 250000
  126. [env:DUE_debug]
  127. # Used when WATCHDOG_RESET_MANUAL is enabled
  128. platform = atmelsam
  129. framework = arduino
  130. board = due
  131. build_flags = ${common.build_flags}
  132. -funwind-tables
  133. -mpoke-function-name
  134. lib_deps = ${common.lib_deps}
  135. lib_ignore = c1921b4
  136. src_filter = ${common.default_src_filter} +<src/HAL/HAL_DUE>
  137. monitor_speed = 250000
  138. #
  139. # NXP LPC176x ARM Cortex-M3
  140. #
  141. [env:LPC1768]
  142. platform = https://github.com/p3p/pio-nxplpc-arduino-lpc176x/archive/master.zip
  143. framework = arduino
  144. board = nxp_lpc1768
  145. build_flags = -DTARGET_LPC1768 -DU8G_HAL_LINKS -IMarlin/src/HAL/HAL_LPC1768/include -IMarlin/src/HAL/HAL_LPC1768/u8g ${common.build_flags}
  146. # debug options for backtrace
  147. # -funwind-tables
  148. # -mpoke-function-name
  149. lib_ldf_mode = off
  150. lib_compat_mode = strict
  151. extra_scripts = Marlin/src/HAL/HAL_LPC1768/upload_extra_script.py
  152. src_filter = ${common.default_src_filter} +<src/HAL/HAL_LPC1768>
  153. monitor_speed = 250000
  154. lib_deps = Servo
  155. LiquidCrystal
  156. U8glib-HAL=https://github.com/MarlinFirmware/U8glib-HAL/archive/dev.zip
  157. TMCStepper@<1.0.0
  158. Adafruit NeoPixel=https://github.com/p3p/Adafruit_NeoPixel/archive/master.zip
  159. https://github.com/mikeshub/SailfishLCD.git
  160. [env:LPC1769]
  161. platform = https://github.com/p3p/pio-nxplpc-arduino-lpc176x/archive/master.zip
  162. framework = arduino
  163. board = nxp_lpc1769
  164. build_flags = -DTARGET_LPC1768 -DLPC1769 -DU8G_HAL_LINKS -IMarlin/src/HAL/HAL_LPC1768/include -IMarlin/src/HAL/HAL_LPC1768/u8g ${common.build_flags}
  165. # debug options for backtrace
  166. # -funwind-tables
  167. # -mpoke-function-name
  168. lib_ldf_mode = off
  169. lib_compat_mode = strict
  170. extra_scripts = Marlin/src/HAL/HAL_LPC1768/upload_extra_script.py
  171. src_filter = ${common.default_src_filter} +<src/HAL/HAL_LPC1768>
  172. monitor_speed = 250000
  173. lib_deps = Servo
  174. LiquidCrystal
  175. U8glib-HAL=https://github.com/MarlinFirmware/U8glib-HAL/archive/dev.zip
  176. TMCStepper@<1.0.0
  177. Adafruit NeoPixel=https://github.com/p3p/Adafruit_NeoPixel/archive/master.zip
  178. #
  179. # Melzi and clones (ATmega1284p)
  180. #
  181. [env:melzi]
  182. platform = atmelavr
  183. framework = arduino
  184. board = sanguino_atmega1284p
  185. build_flags = ${common.build_flags}
  186. upload_speed = 57600
  187. lib_deps = ${common.lib_deps}
  188. src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
  189. monitor_speed = 250000
  190. #
  191. # Melzi and clones (Optiboot bootloader)
  192. #
  193. [env:melzi_optiboot]
  194. platform = atmelavr
  195. framework = arduino
  196. board = sanguino_atmega1284p
  197. build_flags = ${common.build_flags}
  198. upload_speed = 115200
  199. lib_deps = ${common.lib_deps}
  200. src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
  201. monitor_speed = 250000
  202. #
  203. # RAMBo
  204. #
  205. [env:rambo]
  206. platform = atmelavr
  207. framework = arduino
  208. board = reprap_rambo
  209. build_flags = ${common.build_flags}
  210. board_build.f_cpu = 16000000L
  211. lib_deps = ${common.lib_deps}
  212. src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
  213. monitor_speed = 250000
  214. #
  215. # Sanguinololu (ATmega644p)
  216. #
  217. [env:sanguino_atmega644p]
  218. platform = atmelavr
  219. framework = arduino
  220. board = sanguino_atmega644p
  221. build_flags = ${common.build_flags}
  222. lib_deps = ${common.lib_deps}
  223. src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
  224. monitor_speed = 250000
  225. #
  226. # Sanguinololu (ATmega1284p)
  227. #
  228. [env:sanguino_atmega1284p]
  229. platform = atmelavr
  230. framework = arduino
  231. board = sanguino_atmega1284p
  232. build_flags = ${common.build_flags}
  233. lib_deps = ${common.lib_deps}
  234. src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
  235. monitor_speed = 250000
  236. #
  237. # STM32F103RE
  238. #
  239. [env:STM32F1]
  240. platform = ststm32
  241. framework = arduino
  242. board = genericSTM32F103RE
  243. build_flags = !python Marlin/src/HAL/HAL_STM32F1/STM32F1_flag_script.py
  244. ${common.build_flags} -std=gnu++14
  245. build_unflags = -std=gnu++11
  246. lib_deps = ${common.lib_deps}
  247. lib_ignore = U8glib-HAL
  248. c1921b4
  249. libf3c
  250. lib066
  251. Adafruit NeoPixel_ID28
  252. Adafruit NeoPixel
  253. libf3e
  254. TMC26XStepper
  255. #lib_ldf_mode = 1
  256. src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F1>
  257. monitor_speed = 250000
  258. #
  259. # BIGTREE_SKR_MINI
  260. #
  261. [env:BIGTREE_SKR_MINI]
  262. platform = ststm32
  263. framework = arduino
  264. board = genericSTM32F103RC
  265. extra_scripts = buildroot/share/PlatformIO/scripts/STM32F1_SKR_MINI.py
  266. build_flags = !python Marlin/src/HAL/HAL_STM32F1/STM32F1_flag_script.py
  267. ${common.build_flags} -std=gnu++14
  268. build_unflags = -std=gnu++11
  269. lib_deps = ${common.lib_deps}
  270. lib_ignore = U8glib-HAL
  271. c1921b4
  272. libf3c
  273. lib066
  274. Adafruit NeoPixel_ID28
  275. Adafruit NeoPixel
  276. libf3e
  277. TMC26XStepper
  278. #lib_ldf_mode = 1
  279. src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F1>
  280. monitor_speed = 115200
  281. upload_protocol = stlink
  282. debug_tool = stlink
  283. #
  284. # STM32F4
  285. #
  286. [env:STM32F4]
  287. platform = ststm32
  288. framework = arduino
  289. board = disco_f407vg
  290. build_flags = ${common.build_flags} -DUSE_STM32GENERIC -DSTM32GENERIC -DMENU_USB_SERIAL -DMENU_SERIAL=SerialUSB
  291. lib_deps = ${common.lib_deps}
  292. lib_ignore = Adafruit NeoPixel, c1921b4, TMCStepper
  293. src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F4>
  294. monitor_speed = 250000
  295. #
  296. # ARMED (STM32)
  297. #
  298. [env:ARMED]
  299. platform = ststm32
  300. framework = arduino
  301. board = armed_v1
  302. 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
  303. lib_deps = ${common.lib_deps}
  304. lib_ignore = Adafruit NeoPixel, c1921b4
  305. src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32>
  306. monitor_speed = 250000
  307. #
  308. # MKS Robin (STM32F103ZET6)
  309. #
  310. [env:mks_robin]
  311. platform = ststm32
  312. framework = arduino
  313. board = genericSTM32F103ZE
  314. extra_scripts = buildroot/share/PlatformIO/scripts/mks_robin.py
  315. build_flags = !python Marlin/src/HAL/HAL_STM32F1/STM32F1_flag_script.py
  316. ${common.build_flags} -std=gnu++14
  317. build_unflags = -std=gnu++11
  318. src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F1>
  319. lib_deps = ${common.lib_deps}
  320. lib_ignore = c1921b4
  321. libf3c
  322. lib066
  323. Adafruit NeoPixel_ID28
  324. Adafruit NeoPixel
  325. libf3e
  326. TMC26XStepper
  327. U8glib-HAL
  328. #
  329. # MKS Robin nano (STM32F103VET6)
  330. #
  331. [env:mks_robin_mini]
  332. platform = ststm32
  333. framework = arduino
  334. board = genericSTM32F103VE
  335. extra_scripts = buildroot/share/PlatformIO/scripts/mks_robin_mini.py
  336. build_flags = !python Marlin/src/HAL/HAL_STM32F1/STM32F1_flag_script.py
  337. ${common.build_flags} -std=gnu++14
  338. build_unflags = -std=gnu++11
  339. src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F1>
  340. lib_deps = ${common.lib_deps}
  341. lib_ignore = c1921b4
  342. libf3c
  343. lib066
  344. Adafruit NeoPixel_ID28
  345. Adafruit NeoPixel
  346. libf3e
  347. TMC26XStepper
  348. #
  349. # JGAurora A5S A1 (STM32F103ZET6)
  350. #
  351. [env:JGAURORA_A5S_A1]
  352. platform = ststm32@5.3.0
  353. framework = arduino
  354. board = genericSTM32F103ZE
  355. extra_scripts = buildroot/share/PlatformIO/scripts/jgaurora_a5s_a1_with_bootloader.py
  356. build_flags = !python Marlin/src/HAL/HAL_STM32F1/STM32F1_flag_script.py
  357. ${common.build_flags}
  358. src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F1>
  359. lib_deps = ${common.lib_deps}
  360. lib_ignore = c1921b4
  361. libf3c
  362. lib066
  363. Adafruit NeoPixel_ID28
  364. Adafruit NeoPixel
  365. libf3e
  366. TMC26XStepper
  367. lib_ldf_mode = 1
  368. monitor_speed = 250000
  369. #
  370. # STM32F407VET6 with RAMPS-like shield
  371. # 'Black' STM32F407VET6 board - http://wiki.stm32duino.com/index.php?title=STM32F407
  372. # Shield - https://github.com/jmz52/Hardware
  373. #
  374. [env:black_stm32f407ve]
  375. platform = ststm32
  376. framework = arduino
  377. board = blackSTM32F407VET6
  378. extra_scripts = pre:buildroot/share/PlatformIO/scripts/black_stm32f407vet6.py
  379. build_flags = ${common.build_flags}
  380. -DUSBCON -DUSBD_USE_CDC -DUSBD_VID=0x0483 -DUSB_PRODUCT=\"BLACK_F407VE\"
  381. lib_deps = ${common.lib_deps}
  382. lib_ignore = Adafruit NeoPixel, c1921b4, TMCStepper, TMC26XStepper, SailfishLCD, SailfishRGB_LED, SlowSoftI2CMaster
  383. src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32>
  384. monitor_speed = 250000
  385. #
  386. # Teensy 3.5 / 3.6 (ARM Cortex-M4)
  387. #
  388. [env:teensy35]
  389. platform = teensy
  390. framework = arduino
  391. board = teensy35
  392. build_flags = ${common.build_flags}
  393. lib_deps = ${common.lib_deps}
  394. lib_ignore = Adafruit NeoPixel
  395. src_filter = ${common.default_src_filter} +<src/HAL/HAL_TEENSY35_36>
  396. monitor_speed = 250000
  397. #
  398. # Malyan M200 (STM32F1)
  399. #
  400. [env:malyanm200]
  401. platform = ststm32
  402. framework = arduino
  403. board = malyanM200
  404. 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
  405. src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F1>
  406. #-<frameworks>
  407. lib_ignore =
  408. U8glib
  409. LiquidCrystal_I2C
  410. LiquidCrystal
  411. NewliquidCrystal
  412. LiquidTWI2
  413. Adafruit NeoPixel
  414. TMCStepper
  415. Servo(STM32F1)
  416. TMC26XStepper
  417. U8glib-HAL
  418. c1921b4
  419. #
  420. # Espressif ESP32
  421. #
  422. [env:esp32]
  423. platform = espressif32
  424. board = esp32dev
  425. framework = arduino
  426. upload_speed = 115200
  427. monitor_speed = 115200
  428. upload_port = /dev/ttyUSB0
  429. lib_deps =
  430. https://github.com/me-no-dev/AsyncTCP.git
  431. https://github.com/me-no-dev/ESPAsyncWebServer.git
  432. lib_ignore =
  433. LiquidCrystal_I2C
  434. LiquidCrystal
  435. NewliquidCrystal
  436. LiquidTWI2
  437. TMC26XStepper
  438. c1921b4
  439. SailfishLCD
  440. SailfishRGB_LED
  441. src_filter = ${common.default_src_filter} +<src/HAL/HAL_ESP32>
  442. #
  443. # FYSETC F6 V1.3
  444. #
  445. [env:fysetc_f6_13]
  446. platform = atmelavr
  447. framework = arduino
  448. board = fysetc_f6_13
  449. build_flags = ${common.build_flags}
  450. board_build.f_cpu = 16000000L
  451. lib_deps = ${common.lib_deps}
  452. src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
  453. monitor_speed = 250000
  454. #
  455. # Native
  456. # No supported Arduino libraries, base Marlin only
  457. #
  458. [env:linux_native]
  459. platform = native
  460. build_flags = -D__PLAT_LINUX__ -std=gnu++17 -ggdb -g -lrt -lpthread
  461. src_build_flags = -Wall -IMarlin/src/HAL/HAL_LINUX/include
  462. build_unflags = -Wall
  463. lib_ldf_mode = off
  464. lib_deps =
  465. extra_scripts =
  466. src_filter = ${common.default_src_filter} +<src/HAL/HAL_LINUX>