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.

stm32f1-maple.ini 12KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363
  1. #
  2. # Marlin Firmware
  3. # PlatformIO Configuration File
  4. #
  5. #################################
  6. #
  7. # STM32F1 Architecture with LibMaple STM32F1 HAL
  8. #
  9. # Naming Example: STM32F103RCT6
  10. #
  11. # F : Foundation (sometimes High Performance F2/F4)
  12. # 1 : Cortex M1 core
  13. # 03 : Line/Features
  14. # R : 64 or 66 pins (V:100, Z:144, I:176)
  15. # C : 256KB Flash-memory (D:384KB, E:512KB, G:1024KB)
  16. # T : LQFP package
  17. # 6 : -40...85°C (7: ...105°C)
  18. #
  19. #################################
  20. #
  21. # HAL/STM32F1 Common Environment values
  22. #
  23. [common_stm32f1]
  24. platform = ststm32@~12.1
  25. board_build.core = maple
  26. build_flags = !python Marlin/src/HAL/STM32F1/build_flags.py
  27. ${common.build_flags}
  28. -DARDUINO_ARCH_STM32
  29. build_unflags = -std=gnu11 -std=gnu++11
  30. src_filter = ${common.default_src_filter} +<src/HAL/STM32F1>
  31. lib_ignore = SPI, FreeRTOS701, FreeRTOS821
  32. lib_deps = ${common.lib_deps}
  33. SoftwareSerialM
  34. platform_packages = tool-stm32duino
  35. extra_scripts = ${common.extra_scripts}
  36. pre:buildroot/share/PlatformIO/scripts/fix_framework_weakness.py
  37. #
  38. # STM32F103RC
  39. #
  40. [common_STM32F103RC_maple]
  41. platform = ${common_stm32f1.platform}
  42. extends = common_stm32f1
  43. board = genericSTM32F103RC
  44. monitor_speed = 115200
  45. #
  46. # MEEB_3DP (STM32F103RCT6 with 512K)
  47. #
  48. [env:STM32F103RC_meeb]
  49. platform = ${common_stm32f1.platform}
  50. extends = common_STM32F103RC_maple
  51. board = marlin_MEEB_3DP
  52. build_flags = ${common_stm32f1.build_flags}
  53. -DDEBUG_LEVEL=0
  54. -DSS_TIMER=4
  55. -DSTM32_FLASH_SIZE=512
  56. -DHSE_VALUE=12000000U
  57. -DUSE_USB_COMPOSITE
  58. -DVECT_TAB_OFFSET=0x2000
  59. -DGENERIC_BOOTLOADER
  60. extra_scripts = ${common_stm32f1.extra_scripts}
  61. pre:buildroot/share/PlatformIO/scripts/STM32F1_create_variant.py
  62. buildroot/share/PlatformIO/scripts/STM32F103RC_MEEB_3DP.py
  63. lib_deps = ${common.lib_deps}
  64. SoftwareSerialM
  65. USBComposite for STM32F1@0.91
  66. custom_marlin.NEOPIXEL_LED = Adafruit NeoPixel=https://github.com/ccccmagicboy/Adafruit_NeoPixel#meeb_3dp_use
  67. debug_tool = stlink
  68. upload_protocol = dfu
  69. #
  70. # FYSETC STM32F103RC
  71. #
  72. [env:STM32F103RC_fysetc]
  73. platform = ${common_stm32f1.platform}
  74. extends = common_STM32F103RC_maple
  75. extra_scripts = ${common_stm32f1.extra_scripts}
  76. buildroot/share/PlatformIO/scripts/STM32F103RC_fysetc.py
  77. build_flags = ${common_stm32f1.build_flags} -DDEBUG_LEVEL=0
  78. lib_ldf_mode = chain
  79. debug_tool = stlink
  80. upload_protocol = serial
  81. #
  82. # BigTree SKR Mini V1.1 / SKR mini E3 / SKR E3 DIP (STM32F103RCT6 ARM Cortex-M3)
  83. #
  84. # STM32F103RC_btt_maple ............. RCT6 with 256K
  85. # STM32F103RC_btt_USB_maple ......... RCT6 with 256K (USB mass storage)
  86. # STM32F103RC_btt_512K_maple ........ RCT6 with 512K
  87. # STM32F103RC_btt_512K_USB_maple .... RCT6 with 512K (USB mass storage)
  88. #
  89. # WARNING! If you have an SKR Mini v1.1 or an SKR Mini E3 1.0 / 1.2 / 2.0 / DIP
  90. # and experience a printer freeze, re-flash Marlin using the regular (non-512K)
  91. # build option. 256K chips may be re-branded 512K chips, but this means the
  92. # upper 256K is sketchy, and failure is very likely.
  93. #
  94. [env:STM32F103RC_btt_maple]
  95. platform = ${common_stm32f1.platform}
  96. extends = common_STM32F103RC_maple
  97. board_build.address = 0x08007000
  98. board_build.ldscript = STM32F103RC_SKR_MINI_256K.ld
  99. extra_scripts = ${common_stm32f1.extra_scripts}
  100. buildroot/share/PlatformIO/scripts/custom_board.py
  101. build_flags = ${common_stm32f1.build_flags}
  102. -DDEBUG_LEVEL=0 -DSS_TIMER=4
  103. monitor_speed = 115200
  104. [env:STM32F103RC_btt_USB_maple]
  105. platform = ${common_stm32f1.platform}
  106. extends = env:STM32F103RC_btt_maple
  107. build_flags = ${env:STM32F103RC_btt_maple.build_flags} -DUSE_USB_COMPOSITE
  108. lib_deps = ${env:STM32F103RC_btt_maple.lib_deps}
  109. USBComposite for STM32F1@0.91
  110. [env:STM32F103RC_btt_512K_maple]
  111. platform = ${common_stm32f1.platform}
  112. extends = env:STM32F103RC_btt_maple
  113. board_build.ldscript = STM32F103RC_SKR_MINI_512K.ld
  114. board_upload.maximum_size = 524288
  115. build_flags = ${env:STM32F103RC_btt_maple.build_flags} -DSTM32_FLASH_SIZE=512
  116. [env:STM32F103RC_btt_512K_USB_maple]
  117. platform = ${common_stm32f1.platform}
  118. extends = env:STM32F103RC_btt_512K_maple
  119. build_flags = ${env:STM32F103RC_btt_512K_maple.build_flags} -DUSE_USB_COMPOSITE
  120. lib_deps = ${env:STM32F103RC_btt_512K_maple.lib_deps}
  121. USBComposite for STM32F1@0.91
  122. #
  123. # STM32F103RE with Unified STM32F1 HAL
  124. #
  125. [common_STM32F103RE]
  126. platform = ${common_stm32f1.platform}
  127. extends = common_stm32f1
  128. board = genericSTM32F103RE
  129. monitor_speed = 115200
  130. #
  131. # Creality (STM32F103RET6)
  132. #
  133. [env:STM32F103RET6_creality_maple]
  134. platform = ${common_stm32f1.platform}
  135. extends = common_STM32F103RE
  136. build_flags = ${common_stm32f1.build_flags} -DTEMP_TIMER_CHAN=4
  137. board_build.address = 0x08007000
  138. board_build.ldscript = creality.ld
  139. extra_scripts = ${common_stm32f1.extra_scripts}
  140. pre:buildroot/share/PlatformIO/scripts/random-bin.py
  141. buildroot/share/PlatformIO/scripts/custom_board.py
  142. debug_tool = jlink
  143. upload_protocol = jlink
  144. #
  145. # STM32F103RE_btt ............. RET6
  146. # STM32F103RE_btt_USB ......... RET6 (USB mass storage)
  147. #
  148. [env:STM32F103RE_btt]
  149. platform = ${common_stm32f1.platform}
  150. extends = common_STM32F103RE
  151. board_build.address = 0x08007000
  152. board_build.ldscript = STM32F103RE_SKR_E3_DIP.ld
  153. extra_scripts = ${common_stm32f1.extra_scripts}
  154. buildroot/share/PlatformIO/scripts/custom_board.py
  155. build_flags = ${common_stm32f1.build_flags} -DDEBUG_LEVEL=0 -DSS_TIMER=4
  156. debug_tool = stlink
  157. upload_protocol = stlink
  158. [env:STM32F103RE_btt_USB]
  159. platform = ${common_stm32f1.platform}
  160. extends = env:STM32F103RE_btt
  161. build_flags = ${env:STM32F103RE_btt.build_flags} -DUSE_USB_COMPOSITE
  162. lib_deps = ${common_stm32f1.lib_deps}
  163. USBComposite for STM32F1@0.91
  164. #
  165. # Geeetech GTM32 (STM32F103VET6)
  166. #
  167. [env:STM32F103VE_GTM32]
  168. platform = ${common_stm32f1.platform}
  169. extends = common_stm32f1
  170. board = genericSTM32F103VE
  171. build_flags = ${common_stm32f1.build_flags}
  172. -ffunction-sections -fdata-sections -nostdlib -MMD
  173. -DMCU_STM32F103VE -DARDUINO_GENERIC_STM32F103V -DARDUINO_ARCH_STM32F1 -DBOARD_generic_stm32f103v
  174. -DDEBUG_LEVEL=DEBUG_NONE -DCONFIG_MAPLE_MINI_NO_DISABLE_DEBUG=1 -DVECT_TAB_ADDR=0x8000000
  175. -DERROR_LED_PORT=GPIOE -DERROR_LED_PIN=6
  176. upload_protocol = serial
  177. #
  178. # Longer 3D board in Alfawise U20 (STM32F103VET6)
  179. #
  180. [env:STM32F103VE_longer]
  181. platform = ${common_stm32f1.platform}
  182. extends = common_stm32f1
  183. board = genericSTM32F103VE
  184. board_build.address = 0x08010000
  185. board_build.ldscript = STM32F103VE_longer.ld
  186. extra_scripts = ${common_stm32f1.extra_scripts}
  187. buildroot/share/PlatformIO/scripts/custom_board.py
  188. buildroot/share/PlatformIO/scripts/STM32F103VE_longer.py
  189. build_flags = ${common_stm32f1.build_flags}
  190. -DMCU_STM32F103VE -DSTM32F1xx -USERIAL_USB -DU20 -DTS_V12
  191. build_unflags = ${common_stm32f1.build_unflags}
  192. -DCONFIG_MAPLE_MINI_NO_DISABLE_DEBUG=1 -DERROR_LED_PORT=GPIOE -DERROR_LED_PIN=6
  193. #
  194. # MKS Robin Mini (STM32F103VET6)
  195. #
  196. [env:mks_robin_mini]
  197. platform = ${common_stm32f1.platform}
  198. extends = common_stm32f1
  199. board = genericSTM32F103VE
  200. extra_scripts = ${common_stm32f1.extra_scripts}
  201. buildroot/share/PlatformIO/scripts/mks_robin_mini.py
  202. build_flags = ${common_stm32f1.build_flags}
  203. -DMCU_STM32F103VE
  204. #
  205. # MKS Robin Nano (STM32F103VET6)
  206. #
  207. [env:mks_robin_nano35_maple]
  208. platform = ${common_stm32f1.platform}
  209. extends = common_stm32f1
  210. board = genericSTM32F103VE
  211. extra_scripts = ${common_stm32f1.extra_scripts}
  212. buildroot/share/PlatformIO/scripts/mks_robin_nano35.py
  213. build_flags = ${common_stm32f1.build_flags}
  214. -DMCU_STM32F103VE -DSS_TIMER=4
  215. debug_tool = jlink
  216. upload_protocol = jlink
  217. #
  218. # MKS Robin (STM32F103ZET6)
  219. #
  220. [env:mks_robin_maple]
  221. platform = ${common_stm32f1.platform}
  222. extends = common_stm32f1
  223. board = genericSTM32F103ZE
  224. extra_scripts = ${common_stm32f1.extra_scripts}
  225. buildroot/share/PlatformIO/scripts/mks_robin.py
  226. build_flags = ${common_stm32f1.build_flags}
  227. -DSS_TIMER=4 -DSTM32_XL_DENSITY
  228. #
  229. # MKS Robin Pro (STM32F103ZET6)
  230. #
  231. [env:mks_robin_pro]
  232. platform = ${common_stm32f1.platform}
  233. extends = env:mks_robin_maple
  234. extra_scripts = ${common_stm32f1.extra_scripts}
  235. buildroot/share/PlatformIO/scripts/mks_robin_pro.py
  236. #
  237. # TRIGORILLA PRO (STM32F103ZET6)
  238. #
  239. [env:trigorilla_pro]
  240. platform = ${common_stm32f1.platform}
  241. extends = env:mks_robin_maple
  242. extra_scripts = ${common_stm32f1.extra_scripts}
  243. #
  244. # MKS Robin E3D (STM32F103RCT6) and
  245. # MKS Robin E3 with TMC2209
  246. #
  247. [env:mks_robin_e3]
  248. platform = ${common_stm32f1.platform}
  249. extends = common_stm32f1
  250. board = genericSTM32F103RC
  251. extra_scripts = ${common_stm32f1.extra_scripts}
  252. buildroot/share/PlatformIO/scripts/mks_robin_e3.py
  253. build_flags = ${common_stm32f1.build_flags}
  254. -DDEBUG_LEVEL=0 -DSS_TIMER=4
  255. #
  256. # MKS Robin E3p (STM32F103VET6)
  257. # - LVGL UI
  258. #
  259. [env:mks_robin_e3p]
  260. platform = ${common_stm32f1.platform}
  261. extends = common_stm32f1
  262. board = genericSTM32F103VE
  263. extra_scripts = ${common_stm32f1.extra_scripts}
  264. buildroot/share/PlatformIO/scripts/mks_robin_e3p.py
  265. build_flags = ${common_stm32f1.build_flags}
  266. -DMCU_STM32F103VE -DSS_TIMER=4
  267. debug_tool = jlink
  268. upload_protocol = jlink
  269. #
  270. # MKS Robin Lite/Lite2 (STM32F103RCT6)
  271. #
  272. [env:mks_robin_lite]
  273. platform = ${common_stm32f1.platform}
  274. extends = common_stm32f1
  275. board = genericSTM32F103RC
  276. extra_scripts = ${common_stm32f1.extra_scripts}
  277. buildroot/share/PlatformIO/scripts/mks_robin_lite.py
  278. #
  279. # MKS ROBIN LITE3 (STM32F103RCT6)
  280. #
  281. [env:mks_robin_lite3]
  282. platform = ${common_stm32f1.platform}
  283. extends = common_stm32f1
  284. board = genericSTM32F103RC
  285. extra_scripts = ${common_stm32f1.extra_scripts}
  286. buildroot/share/PlatformIO/scripts/mks_robin_lite3.py
  287. #
  288. # JGAurora A5S A1 (STM32F103ZET6)
  289. #
  290. [env:jgaurora_a5s_a1]
  291. platform = ${common_stm32f1.platform}
  292. extends = common_stm32f1
  293. board = genericSTM32F103ZE
  294. board_build.address = 0x0800A000
  295. board_build.ldscript = jgaurora_a5s_a1.ld
  296. extra_scripts = ${common_stm32f1.extra_scripts}
  297. buildroot/share/PlatformIO/scripts/custom_board.py
  298. buildroot/share/PlatformIO/scripts/jgaurora_a5s_a1_with_bootloader.py
  299. build_flags = ${common_stm32f1.build_flags}
  300. -DSTM32F1xx -DSTM32_XL_DENSITY
  301. #
  302. # Malyan M200 (STM32F103CB)
  303. #
  304. [env:STM32F103CB_malyan]
  305. platform = ${common_stm32f1.platform}
  306. extends = common_stm32f1
  307. board = marlin_malyanM200
  308. build_flags = ${common_stm32f1.build_flags}
  309. -DMCU_STM32F103CB -D__STM32F1__=1 -std=c++1y -DSERIAL_USB -ffunction-sections -fdata-sections
  310. -Wl,--gc-sections -DDEBUG_LEVEL=0 -D__MARLIN_FIRMWARE__
  311. lib_ignore = ${common_stm32f1.lib_ignore}
  312. SoftwareSerialM
  313. #
  314. # Chitu boards like Tronxy X5s (STM32F103ZET6)
  315. #
  316. [env:chitu_f103]
  317. platform = ${common_stm32f1.platform}
  318. extends = common_stm32f1
  319. board = marlin_CHITU_F103
  320. extra_scripts = pre:buildroot/share/PlatformIO/scripts/common-dependencies.py
  321. pre:buildroot/share/PlatformIO/scripts/STM32F1_create_variant.py
  322. buildroot/share/PlatformIO/scripts/chitu_crypt.py
  323. build_flags = ${common_stm32f1.build_flags}
  324. -DSTM32F1xx -DSTM32_XL_DENSITY
  325. build_unflags = ${common_stm32f1.build_unflags}
  326. -DCONFIG_MAPLE_MINI_NO_DISABLE_DEBUG= -DERROR_LED_PORT=GPIOE -DERROR_LED_PIN=6
  327. #
  328. # Some Chitu V5 boards have a problem with GPIO init.
  329. # Use this target if G28 or G29 are always failing.
  330. #
  331. [env:chitu_v5_gpio_init]
  332. platform = ${common_stm32f1.platform}
  333. extends = env:chitu_f103
  334. build_flags = ${env:chitu_f103.build_flags} -DCHITU_V5_Z_MIN_BUGFIX