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.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522
  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. # fysetc_STM32F1
  260. #
  261. [env:fysetc_STM32F1]
  262. platform = ststm32
  263. framework = arduino
  264. board = genericSTM32F103RC
  265. #board_build.core = maple
  266. extra_scripts = buildroot/share/PlatformIO/scripts/fysetc_STM32F1.py
  267. build_flags = !python Marlin/src/HAL/HAL_STM32F1/STM32F1_flag_script.py
  268. ${common.build_flags}
  269. lib_deps = ${common.lib_deps}
  270. lib_ignore =
  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 = 250000
  281. debug_tool = stlink
  282. upload_protocol = serial
  283. #
  284. # BIGTREE_SKR_MINI
  285. #
  286. [env:BIGTREE_SKR_MINI]
  287. platform = ststm32
  288. framework = arduino
  289. board = genericSTM32F103RC
  290. extra_scripts = buildroot/share/PlatformIO/scripts/STM32F1_SKR_MINI.py
  291. build_flags = !python Marlin/src/HAL/HAL_STM32F1/STM32F1_flag_script.py
  292. ${common.build_flags} -std=gnu++14
  293. build_unflags = -std=gnu++11
  294. lib_deps = ${common.lib_deps}
  295. lib_ignore =
  296. c1921b4
  297. libf3c
  298. lib066
  299. Adafruit NeoPixel_ID28
  300. Adafruit NeoPixel
  301. libf3e
  302. TMC26XStepper
  303. #lib_ldf_mode = 1
  304. src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F1>
  305. monitor_speed = 115200
  306. upload_protocol = stlink
  307. debug_tool = stlink
  308. #
  309. # STM32F4
  310. #
  311. [env:STM32F4]
  312. platform = ststm32
  313. framework = arduino
  314. board = disco_f407vg
  315. build_flags = ${common.build_flags} -DUSE_STM32GENERIC -DSTM32GENERIC -DMENU_USB_SERIAL -DMENU_SERIAL=SerialUSB
  316. lib_deps = ${common.lib_deps}
  317. lib_ignore = Adafruit NeoPixel, c1921b4, TMCStepper
  318. src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F4>
  319. monitor_speed = 250000
  320. #
  321. # ARMED (STM32)
  322. #
  323. [env:ARMED]
  324. platform = ststm32
  325. framework = arduino
  326. board = armed_v1
  327. 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
  328. lib_deps = ${common.lib_deps}
  329. lib_ignore = Adafruit NeoPixel, c1921b4
  330. src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32>
  331. monitor_speed = 250000
  332. #
  333. # MKS Robin (STM32F103ZET6)
  334. #
  335. [env:mks_robin]
  336. platform = ststm32
  337. framework = arduino
  338. board = genericSTM32F103ZE
  339. extra_scripts = buildroot/share/PlatformIO/scripts/mks_robin.py
  340. build_flags = !python Marlin/src/HAL/HAL_STM32F1/STM32F1_flag_script.py
  341. ${common.build_flags} -std=gnu++14
  342. build_unflags = -std=gnu++11
  343. src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F1>
  344. lib_deps = ${common.lib_deps}
  345. lib_ignore = c1921b4
  346. libf3c
  347. lib066
  348. Adafruit NeoPixel_ID28
  349. Adafruit NeoPixel
  350. libf3e
  351. TMC26XStepper
  352. U8glib-HAL
  353. #
  354. # MKS Robin nano (STM32F103VET6)
  355. #
  356. [env:mks_robin_mini]
  357. platform = ststm32
  358. framework = arduino
  359. board = genericSTM32F103VE
  360. extra_scripts = buildroot/share/PlatformIO/scripts/mks_robin_mini.py
  361. build_flags = !python Marlin/src/HAL/HAL_STM32F1/STM32F1_flag_script.py
  362. ${common.build_flags} -std=gnu++14
  363. build_unflags = -std=gnu++11
  364. src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F1>
  365. lib_deps = ${common.lib_deps}
  366. lib_ignore = c1921b4
  367. libf3c
  368. lib066
  369. Adafruit NeoPixel_ID28
  370. Adafruit NeoPixel
  371. libf3e
  372. TMC26XStepper
  373. #
  374. # JGAurora A5S A1 (STM32F103ZET6)
  375. #
  376. [env:JGAURORA_A5S_A1]
  377. platform = ststm32@5.3.0
  378. framework = arduino
  379. board = genericSTM32F103ZE
  380. extra_scripts = buildroot/share/PlatformIO/scripts/jgaurora_a5s_a1_with_bootloader.py
  381. build_flags = !python Marlin/src/HAL/HAL_STM32F1/STM32F1_flag_script.py
  382. ${common.build_flags}
  383. src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F1>
  384. lib_deps = ${common.lib_deps}
  385. lib_ignore = c1921b4
  386. libf3c
  387. lib066
  388. Adafruit NeoPixel_ID28
  389. Adafruit NeoPixel
  390. libf3e
  391. TMC26XStepper
  392. lib_ldf_mode = 1
  393. monitor_speed = 250000
  394. #
  395. # STM32F407VET6 with RAMPS-like shield
  396. # 'Black' STM32F407VET6 board - http://wiki.stm32duino.com/index.php?title=STM32F407
  397. # Shield - https://github.com/jmz52/Hardware
  398. #
  399. [env:black_stm32f407ve]
  400. platform = ststm32
  401. framework = arduino
  402. board = blackSTM32F407VET6
  403. extra_scripts = pre:buildroot/share/PlatformIO/scripts/black_stm32f407vet6.py
  404. build_flags = ${common.build_flags}
  405. -DUSBCON -DUSBD_USE_CDC -DUSBD_VID=0x0483 -DUSB_PRODUCT=\"BLACK_F407VE\"
  406. lib_deps = ${common.lib_deps}
  407. lib_ignore = Adafruit NeoPixel, c1921b4, TMCStepper, TMC26XStepper, SailfishLCD, SailfishRGB_LED, SlowSoftI2CMaster
  408. src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32>
  409. monitor_speed = 250000
  410. #
  411. # Teensy 3.5 / 3.6 (ARM Cortex-M4)
  412. #
  413. [env:teensy35]
  414. platform = teensy
  415. framework = arduino
  416. board = teensy35
  417. build_flags = ${common.build_flags}
  418. lib_deps = ${common.lib_deps}
  419. lib_ignore = Adafruit NeoPixel
  420. src_filter = ${common.default_src_filter} +<src/HAL/HAL_TEENSY35_36>
  421. monitor_speed = 250000
  422. #
  423. # Malyan M200 (STM32F1)
  424. #
  425. [env:malyanm200]
  426. platform = ststm32
  427. framework = arduino
  428. board = malyanM200
  429. 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
  430. src_filter = ${common.default_src_filter} +<src/HAL/HAL_STM32F1>
  431. #-<frameworks>
  432. lib_ignore =
  433. U8glib
  434. LiquidCrystal_I2C
  435. LiquidCrystal
  436. NewliquidCrystal
  437. LiquidTWI2
  438. Adafruit NeoPixel
  439. TMCStepper
  440. Servo(STM32F1)
  441. TMC26XStepper
  442. U8glib-HAL
  443. c1921b4
  444. #
  445. # Espressif ESP32
  446. #
  447. [env:esp32]
  448. platform = espressif32
  449. board = esp32dev
  450. framework = arduino
  451. upload_speed = 115200
  452. monitor_speed = 115200
  453. upload_port = /dev/ttyUSB0
  454. lib_deps =
  455. https://github.com/me-no-dev/AsyncTCP.git
  456. https://github.com/me-no-dev/ESPAsyncWebServer.git
  457. lib_ignore =
  458. LiquidCrystal_I2C
  459. LiquidCrystal
  460. NewliquidCrystal
  461. LiquidTWI2
  462. TMC26XStepper
  463. c1921b4
  464. SailfishLCD
  465. SailfishRGB_LED
  466. src_filter = ${common.default_src_filter} +<src/HAL/HAL_ESP32>
  467. #
  468. # FYSETC F6 V1.3
  469. #
  470. [env:fysetc_f6_13]
  471. platform = atmelavr
  472. framework = arduino
  473. board = fysetc_f6_13
  474. build_flags = ${common.build_flags}
  475. board_build.f_cpu = 16000000L
  476. lib_deps = ${common.lib_deps}
  477. src_filter = ${common.default_src_filter} +<src/HAL/HAL_AVR>
  478. monitor_speed = 250000
  479. #
  480. # Native
  481. # No supported Arduino libraries, base Marlin only
  482. #
  483. [env:linux_native]
  484. platform = native
  485. build_flags = -D__PLAT_LINUX__ -std=gnu++17 -ggdb -g -lrt -lpthread
  486. src_build_flags = -Wall -IMarlin/src/HAL/HAL_LINUX/include
  487. build_unflags = -Wall
  488. lib_ldf_mode = off
  489. lib_deps =
  490. extra_scripts =
  491. src_filter = ${common.default_src_filter} +<src/HAL/HAL_LINUX>