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 8.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326
  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>
  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. TMC2130Stepper
  31. https://github.com/teemuatlut/TMC2208Stepper/archive/v0.1.1.zip
  32. Adafruit NeoPixel@1.1.3
  33. https://github.com/lincomatic/LiquidTWI2/archive/30aa480.zip
  34. https://github.com/ameyer/Arduino-L6470/archive/master.zip
  35. https://github.com/trinamic/TMC26XStepper/archive/c1921b4.zip
  36. #################################
  37. # #
  38. # Unique Core Architectures #
  39. # #
  40. # Add a new "env" below if no #
  41. # entry has values suitable to #
  42. # build for a given board. #
  43. # #
  44. #################################
  45. #
  46. # ATmega2560
  47. #
  48. [env:megaatmega2560]
  49. platform = atmelavr
  50. framework = arduino
  51. board = megaatmega2560
  52. build_flags = ${common.build_flags}
  53. board_build.f_cpu = 16000000L
  54. lib_deps = ${common.lib_deps}
  55. src_filter = ${common.default_src_filter}
  56. monitor_speed = 250000
  57. #
  58. # ATmega1280
  59. #
  60. [env:megaatmega1280]
  61. platform = atmelavr
  62. framework = arduino
  63. board = megaatmega1280
  64. build_flags = ${common.build_flags}
  65. board_build.f_cpu = 16000000L
  66. lib_deps = ${common.lib_deps}
  67. src_filter = ${common.default_src_filter}
  68. monitor_speed = 250000
  69. #
  70. # AT90USB1286 boards using CDC bootloader
  71. # - BRAINWAVE
  72. # - BRAINWAVE_PRO
  73. # - SAV_MKI
  74. # - TEENSYLU
  75. #
  76. [env:at90usb1286_cdc]
  77. platform = teensy
  78. framework = arduino
  79. board = at90usb1286
  80. build_flags = ${common.build_flags}
  81. lib_deps = ${common.lib_deps}
  82. lib_ldf_mode = deep+
  83. src_filter = ${common.default_src_filter}
  84. extra_scripts = pre:buildroot/share/atom/create_custom_upload_command_CDC.py
  85. monitor_speed = 250000
  86. #
  87. # AT90USB1286 boards using DFU bootloader
  88. # - PrintrBoard
  89. # - PrintrBoard Rev.F
  90. # - ? 5DPRINT ?
  91. #
  92. [env:at90usb1286_dfu]
  93. platform = teensy
  94. framework = arduino
  95. board = at90usb1286
  96. build_flags = ${common.build_flags}
  97. lib_deps = ${common.lib_deps}
  98. lib_ldf_mode = deep+
  99. src_filter = ${common.default_src_filter}
  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}
  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}
  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}
  137. monitor_speed = 250000
  138. #
  139. # NXP LPC1768 ARM Cortex-M3
  140. #
  141. [env:LPC1768]
  142. platform = nxplpc
  143. board = lpc1768
  144. board_build.f_cpu = 100000000L
  145. # Override default maximum RAM. LPC1768/9 do have 64k, but in 3 blocks (32K, 16K, 16K).
  146. # The first 32k block is used by default, while the others must be specifically targeted.
  147. board_upload.maximum_ram_size = 32768
  148. build_flags = !python Marlin/src/HAL/HAL_LPC1768/lpc1768_flag_script.py ${common.build_flags}
  149. build_unflags = -Wall
  150. lib_ldf_mode = off
  151. lib_extra_dirs = frameworks
  152. lib_deps = CMSIS-LPC1768
  153. https://github.com/MarlinFirmware/U8glib-HAL/archive/dev.zip
  154. TMC2130Stepper@>=2.2.1
  155. TMC2208Stepper@>=0.2.1
  156. extra_scripts = Marlin/src/HAL/HAL_LPC1768/debug_extra_script.py, Marlin/src/HAL/HAL_LPC1768/lpc1768_flag_script.py, Marlin/src/HAL/HAL_LPC1768/upload_extra_script.py
  157. src_filter = ${common.default_src_filter}
  158. monitor_speed = 250000
  159. debug_tool = custom
  160. debug_server =
  161. C:\Program Files (x86)\SEGGER\JLink_V618d\JLinkGDBServerCL.exe
  162. -select USB
  163. -port 2331
  164. -device LPC1768
  165. -if JTAG
  166. -speed auto
  167. -noir
  168. #
  169. # Melzi and clones (ATmega1284p)
  170. #
  171. [env:melzi]
  172. platform = atmelavr
  173. framework = arduino
  174. board = sanguino_atmega1284p
  175. build_flags = ${common.build_flags}
  176. upload_speed = 57600
  177. lib_deps = ${common.lib_deps}
  178. src_filter = ${common.default_src_filter}
  179. monitor_speed = 250000
  180. #
  181. # Melzi and clones (Optiboot bootloader)
  182. #
  183. [env:melzi_optiboot]
  184. platform = atmelavr
  185. framework = arduino
  186. board = sanguino_atmega1284p
  187. build_flags = ${common.build_flags}
  188. upload_speed = 115200
  189. lib_deps = ${common.lib_deps}
  190. src_filter = ${common.default_src_filter}
  191. monitor_speed = 250000
  192. #
  193. # RAMBo
  194. #
  195. [env:rambo]
  196. platform = atmelavr
  197. framework = arduino
  198. board = reprap_rambo
  199. build_flags = ${common.build_flags}
  200. board_build.f_cpu = 16000000L
  201. lib_deps = ${common.lib_deps}
  202. src_filter = ${common.default_src_filter}
  203. monitor_speed = 250000
  204. #
  205. # Sanguinololu (ATmega644p)
  206. #
  207. [env:sanguino_atmega644p]
  208. platform = atmelavr
  209. framework = arduino
  210. board = sanguino_atmega644p
  211. build_flags = ${common.build_flags}
  212. lib_deps = ${common.lib_deps}
  213. src_filter = ${common.default_src_filter}
  214. monitor_speed = 250000
  215. #
  216. # Sanguinololu (ATmega1284p)
  217. #
  218. [env:sanguino_atmega1284p]
  219. platform = atmelavr
  220. framework = arduino
  221. board = sanguino_atmega1284p
  222. build_flags = ${common.build_flags}
  223. lib_deps = ${common.lib_deps}
  224. src_filter = ${common.default_src_filter}
  225. monitor_speed = 250000
  226. #
  227. # STM32F103RE
  228. #
  229. [env:STM32F1]
  230. platform = ststm32
  231. framework = arduino
  232. board = genericSTM32F103RE
  233. build_flags = !python Marlin/src/HAL/HAL_STM32F1/stm32f1_flag_script.py
  234. ${common.build_flags}
  235. lib_deps = ${common.lib_deps}
  236. lib_ignore = U8glib-HAL
  237. c1921b4
  238. libf3c
  239. lib066
  240. Adafruit NeoPixel_ID28
  241. Adafruit NeoPixel
  242. libf3e
  243. TMC26XStepper
  244. lib_ldf_mode = 1
  245. src_filter = ${common.default_src_filter}
  246. monitor_speed = 250000
  247. #
  248. # STM32F4
  249. #
  250. [env:STM32F4]
  251. platform = ststm32
  252. framework = arduino
  253. board = disco_f407vg
  254. build_flags = ${common.build_flags} -DUSE_STM32GENERIC -DSTM32GENERIC -DMENU_USB_SERIAL -DMENU_SERIAL=SerialUSB
  255. lib_deps = ${common.lib_deps}
  256. lib_ignore = Adafruit NeoPixel, c1921b4, TMC2130Stepper
  257. src_filter = ${common.default_src_filter}
  258. monitor_speed = 250000
  259. #
  260. # Teensy 3.5 / 3.6 (ARM Cortex-M4)
  261. #
  262. [env:teensy35]
  263. platform = teensy
  264. framework = arduino
  265. board = teensy35
  266. build_flags = ${common.build_flags}
  267. lib_deps = ${common.lib_deps}
  268. lib_ignore = Adafruit NeoPixel
  269. src_filter = ${common.default_src_filter}
  270. monitor_speed = 250000
  271. [env:malyanm200]
  272. platform = ststm32
  273. framework = arduino
  274. board = malyanM200
  275. 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
  276. src_filter = ${common.default_src_filter}
  277. #-<frameworks>
  278. lib_ignore =
  279. U8glib
  280. LiquidCrystal_I2C
  281. LiquidCrystal
  282. NewliquidCrystal
  283. LiquidTWI2
  284. Adafruit NeoPixel
  285. TMC2130Stepper
  286. Servo(STM32F1)
  287. TMC26XStepper
  288. U8glib-HAL
  289. TMC2208Stepper
  290. c1921b4
  291. #
  292. # Espressif ESP32
  293. #
  294. [env:esp32]
  295. platform = https://github.com/platformio/platform-espressif32.git#feature/stage
  296. board = esp32dev
  297. framework = arduino
  298. upload_port = COM3
  299. lib_ignore =
  300. LiquidCrystal_I2C
  301. LiquidCrystal
  302. NewliquidCrystal
  303. LiquidTWI2
  304. TMC26XStepper
  305. c1921b4