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.ini 13KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392
  1. #
  2. # Marlin Firmware
  3. # PlatformIO Configuration File
  4. #
  5. #################################
  6. #
  7. # STM32F1 Architecture with unified STM32 HAL
  8. #
  9. # Naming Example: STM32F103RCT6
  10. #
  11. # F : Foundation (sometimes High Performance F2/F4)
  12. # 1 : Cortex M3 core (0:M0, 1-2:M3, 3-4:M4, 7:M7)
  13. # 03 : Line/Features
  14. # R : 64 or 66 pins (T:36, C:48, V:100, Z:144, I:176)
  15. # C : 256KB Flash-memory (B: 128KB, D:384KB, E:512KB, G:1024KB)
  16. # T : LQFP package
  17. # 6 : -40...85°C (7: ...105°C)
  18. #
  19. #################################
  20. [common_STM32F103RC_variant]
  21. extends = stm32_variant
  22. board = genericSTM32F103RC
  23. board_build.variant = MARLIN_F103Rx
  24. build_flags = ${stm32_variant.build_flags} -DDEBUG_LEVEL=0
  25. monitor_speed = 115200
  26. #
  27. # STM32F103RE
  28. #
  29. [env:STM32F103RE]
  30. extends = common_stm32
  31. board = genericSTM32F103RE
  32. monitor_speed = 115200
  33. #
  34. # STM32F103VE
  35. #
  36. [env:STM32F103VE]
  37. extends = common_stm32
  38. board = genericSTM32F103VE
  39. monitor_speed = 115200
  40. #
  41. # STM32F103ZE
  42. #
  43. [env:STM32F103ZE]
  44. extends = common_stm32
  45. board = genericSTM32F103ZE
  46. monitor_speed = 115200
  47. #
  48. # BigTree SKR Mini V1.1 / SKR Mini E3 & MZ (STM32F103RCT6 ARM Cortex-M3)
  49. #
  50. # STM32F103RC_btt ............. RCT6 with 256K
  51. # STM32F103RC_btt_USB ......... RCT6 with 256K (USB mass storage)
  52. #
  53. [env:STM32F103RC_btt]
  54. extends = common_STM32F103RC_variant
  55. build_flags = ${common_STM32F103RC_variant.build_flags}
  56. -DTIMER_SERVO=TIM5
  57. board_build.offset = 0x7000
  58. board_upload.offset_address = 0x08007000
  59. [env:STM32F103RC_btt_USB]
  60. extends = env:STM32F103RC_btt
  61. platform_packages = ${stm_flash_drive.platform_packages}
  62. build_flags = ${env:STM32F103RC_btt.build_flags}
  63. -DUSE_USB_FS
  64. -DUSBD_IRQ_PRIO=5
  65. -DUSBD_IRQ_SUBPRIO=6
  66. -DUSBD_USE_CDC_MSC
  67. build_unflags = ${common_stm32.build_unflags} -DUSBD_USE_CDC
  68. #
  69. # MKS Robin (STM32F103ZET6)
  70. # Uses HAL STM32 to support Marlin UI for TFT screen with optional touch panel
  71. #
  72. [env:mks_robin]
  73. extends = stm32_variant
  74. board = genericSTM32F103ZE
  75. board_build.variant = MARLIN_F103Zx
  76. board_build.encrypt = Robin.bin
  77. board_build.offset = 0x7000
  78. build_flags = ${stm32_variant.build_flags}
  79. -DENABLE_HWSERIAL3 -DTIMER_SERIAL=TIM5
  80. build_unflags = ${stm32_variant.build_unflags}
  81. -DUSBCON -DUSBD_USE_CDC
  82. #
  83. # MKS Robin E3/E3D (STM32F103RCT6) with TMC2209
  84. #
  85. [env:mks_robin_e3]
  86. extends = common_STM32F103RC_variant
  87. board_build.encrypt = Robin_e3.bin
  88. board_build.offset = 0x5000
  89. board_upload.offset_address = 0x08005000
  90. build_flags = ${common_STM32F103RC_variant.build_flags}
  91. -DTIMER_SERVO=TIM5 -DDEFAULT_SPI=3
  92. build_unflags = ${common_STM32F103RC_variant.build_unflags}
  93. -DUSBCON -DUSBD_USE_CDC
  94. monitor_speed = 115200
  95. debug_tool = stlink
  96. #
  97. # Creality (STM32F103RET6)
  98. #
  99. [env:STM32F103RET6_creality]
  100. extends = stm32_variant
  101. board = genericSTM32F103RE
  102. board_build.variant = MARLIN_F103Rx
  103. board_build.offset = 0x7000
  104. board_upload.offset_address = 0x08007000
  105. build_flags = ${stm32_variant.build_flags}
  106. -DMCU_STM32F103RE -DHAL_SD_MODULE_ENABLED
  107. -DSS_TIMER=4 -DTIMER_SERVO=TIM5
  108. -DENABLE_HWSERIAL3 -DTRANSFER_CLOCK_DIV=8
  109. build_unflags = ${stm32_variant.build_unflags}
  110. -DUSBCON -DUSBD_USE_CDC
  111. extra_scripts = ${stm32_variant.extra_scripts}
  112. pre:buildroot/share/PlatformIO/scripts/random-bin.py
  113. monitor_speed = 115200
  114. debug_tool = jlink
  115. upload_protocol = jlink
  116. #
  117. # BigTree SKR Mini E3 V2.0 & DIP / SKR CR6 (STM32F103RET6 ARM Cortex-M3)
  118. #
  119. # STM32F103RE_btt ............. RET6
  120. # STM32F103RE_btt_USB ......... RET6 (USB mass storage)
  121. #
  122. [env:STM32F103RE_btt]
  123. extends = stm32_variant
  124. board = genericSTM32F103RE
  125. board_build.variant = MARLIN_F103Rx
  126. board_build.offset = 0x7000
  127. board_upload.offset_address = 0x08007000
  128. build_flags = ${stm32_variant.build_flags}
  129. -DMCU_STM32F103RE -DHAL_SD_MODULE_ENABLED
  130. -DSS_TIMER=4 -DTIMER_SERVO=TIM5
  131. -DENABLE_HWSERIAL3 -DTRANSFER_CLOCK_DIV=8
  132. monitor_speed = 115200
  133. debug_tool = jlink
  134. upload_protocol = jlink
  135. [env:STM32F103RE_btt_USB]
  136. extends = env:STM32F103RE_btt
  137. platform_packages = ${stm_flash_drive.platform_packages}
  138. build_flags = ${env:STM32F103RE_btt.build_flags}
  139. -DUSE_USB_FS -DUSBD_IRQ_PRIO=5
  140. -DUSBD_IRQ_SUBPRIO=6 -DUSBD_USE_CDC_MSC
  141. build_unflags = ${stm32_variant.build_unflags} -DUSBD_USE_CDC
  142. #
  143. # FLSUN QQS Pro (STM32F103VET6)
  144. # board Hispeedv1
  145. #
  146. [env:flsun_hispeedv1]
  147. extends = stm32_variant
  148. board = genericSTM32F103VE
  149. board_build.variant = MARLIN_F103Vx
  150. board_build.encrypt = Robin_mini.bin
  151. board_build.offset = 0x7000
  152. board_upload.offset_address = 0x08007000
  153. build_flags = ${stm32_variant.build_flags}
  154. -DMCU_STM32F103VE -DSS_TIMER=4 -DENABLE_HWSERIAL3
  155. -DTIMER_TONE=TIM3 -DTIMER_SERVO=TIM2
  156. build_unflags = ${stm32_variant.build_unflags}
  157. -DUSBCON -DUSBD_USE_CDC
  158. #
  159. # MKS Robin Nano V1.2 and V2
  160. #
  161. [env:mks_robin_nano35]
  162. extends = stm32_variant
  163. board = genericSTM32F103VE
  164. board_build.variant = MARLIN_F103Vx
  165. board_build.encrypt = Robin_nano35.bin
  166. board_build.offset = 0x7000
  167. board_upload.offset_address = 0x08007000
  168. build_flags = ${stm32_variant.build_flags}
  169. -DMCU_STM32F103VE -DSS_TIMER=4 -DENABLE_HWSERIAL3
  170. -DTIMER_TONE=TIM3 -DTIMER_SERVO=TIM2
  171. build_unflags = ${stm32_variant.build_unflags}
  172. -DUSBCON -DUSBD_USE_CDC
  173. debug_tool = jlink
  174. upload_protocol = jlink
  175. #
  176. # Mingda MPX_ARM_MINI
  177. #
  178. [env:mingda_mpx_arm_mini]
  179. extends = stm32_variant
  180. board = genericSTM32F103ZE
  181. board_build.variant = MARLIN_F103Zx
  182. board_build.offset = 0x10000
  183. build_flags = ${stm32_variant.build_flags}
  184. -DENABLE_HWSERIAL3 -DTIMER_SERIAL=TIM5
  185. build_unflags = ${stm32_variant.build_unflags}
  186. -DUSBCON -DUSBD_USE_CDC
  187. #
  188. # Malyan M200 (STM32F103CB)
  189. #
  190. [env:STM32F103CB_malyan]
  191. extends = common_stm32
  192. board = malyanm200_f103cb
  193. build_flags = ${common_stm32.build_flags}
  194. -DHAL_PCD_MODULE_ENABLED -DDISABLE_GENERIC_SERIALUSB
  195. -DHAL_UART_MODULE_ENABLED
  196. src_filter = ${common.default_src_filter} +<src/HAL/STM32>
  197. #
  198. # FLYmaker FLY Mini (STM32F103RCT6)
  199. #
  200. [env:FLY_MINI]
  201. extends = stm32_variant
  202. board = genericSTM32F103RC
  203. board_build.variant = MARLIN_F103Rx
  204. board_build.offset = 0x5000
  205. board_upload.offset_address = 0x08005000
  206. build_flags = ${stm32_variant.build_flags} -DSS_TIMER=4
  207. #
  208. # MKS Robin Mini (STM32F103VET6)
  209. #
  210. [env:mks_robin_mini]
  211. extends = stm32_variant
  212. board = genericSTM32F103VE
  213. board_build.variant = MARLIN_F103Vx
  214. board_build.encrypt = Robin_mini.bin
  215. board_build.offset = 0x7000
  216. board_upload.offset_address = 0x08007000
  217. build_flags = ${stm32_variant.build_flags}
  218. -DMCU_STM32F103VE -DTIMER_TONE=TIM3 -DTIMER_SERVO=TIM2
  219. #
  220. # MKS Robin Lite/Lite2 (STM32F103RCT6)
  221. #
  222. [env:mks_robin_lite]
  223. extends = stm32_variant
  224. board = genericSTM32F103RC
  225. board_build.variant = MARLIN_F103Rx
  226. board_build.encrypt = mksLite.bin
  227. board_build.offset = 0x5000
  228. board_upload.offset_address = 0x08005000
  229. #
  230. # MKS ROBIN LITE3 (STM32F103RCT6)
  231. #
  232. [env:mks_robin_lite3]
  233. extends = env:mks_robin_lite
  234. board_build.encrypt = mksLite3.bin
  235. #
  236. # MKS Robin Pro (STM32F103ZET6)
  237. #
  238. [env:mks_robin_pro]
  239. extends = env:mks_robin
  240. board_build.encrypt = Robin_pro.bin
  241. #
  242. # MKS Robin E3p (STM32F103VET6)
  243. # - LVGL UI
  244. #
  245. [env:mks_robin_e3p]
  246. extends = stm32_variant
  247. board = genericSTM32F103VE
  248. board_build.variant = MARLIN_F103Vx
  249. board_build.encrypt = Robin_e3p.bin
  250. board_build.offset = 0x7000
  251. board_upload.offset_address = 0x08007000
  252. build_flags = ${stm32_variant.build_flags}
  253. -DMCU_STM32F103VE -DSS_TIMER=4
  254. -DTIMER_TONE=TIM3 -DTIMER_SERVO=TIM2
  255. debug_tool = jlink
  256. upload_protocol = jlink
  257. #
  258. # JGAurora A5S A1 (STM32F103ZET6)
  259. #
  260. [env:jgaurora_a5s_a1]
  261. extends = stm32_variant
  262. board = genericSTM32F103ZE
  263. board_build.variant = MARLIN_F103Zx
  264. board_build.offset = 0xA000
  265. board_build.rename = firmware_for_sd_upload.bin
  266. board_upload.offset_address = 0x0800A000
  267. build_flags = ${stm32_variant.build_flags}
  268. -DSTM32F1xx -DSTM32_XL_DENSITY
  269. extra_scripts = ${stm32_variant.extra_scripts}
  270. buildroot/share/PlatformIO/scripts/jgaurora_a5s_a1_with_bootloader.py
  271. #
  272. # FYSETC STM32F103RC
  273. #
  274. [env:STM32F103RC_fysetc]
  275. extends = common_STM32F103RC_variant
  276. extra_scripts = ${common_STM32F103RC_variant.extra_scripts}
  277. buildroot/share/PlatformIO/scripts/STM32F103RC_fysetc.py
  278. lib_ldf_mode = chain
  279. debug_tool = stlink
  280. upload_protocol = serial
  281. #
  282. # Longer 3D board in Alfawise U20 (STM32F103VET6)
  283. #
  284. [env:STM32F103VE_longer]
  285. extends = stm32_variant
  286. lib_deps = ${common.lib_deps}
  287. https://github.com/tpruvot/STM32_Servo_OpenDrain/archive/2.0.zip
  288. board = genericSTM32F103VE
  289. board_build.variant = MARLIN_F103VE_LONGER
  290. board_build.rename = project.bin
  291. board_build.offset = 0x10000
  292. board_upload.offset_address = 0x08010000
  293. build_flags = ${stm32_variant.build_flags} -DMCU_STM32F103VE -DU20 -DTS_V12
  294. build_unflags = ${stm32_variant.build_unflags} -DUSBCON -DUSBD_USE_CDC -DHAL_PCD_MODULE_ENABLED
  295. extra_scripts = ${stm32_variant.extra_scripts}
  296. monitor_speed = 250000
  297. debug_tool = stlink
  298. #
  299. # TRIGORILLA PRO (STM32F103ZET6)
  300. #
  301. [env:trigorilla_pro]
  302. extends = stm32_variant
  303. board = genericSTM32F103ZE
  304. board_build.variant = MARLIN_F103Zx
  305. build_flags = ${stm32_variant.build_flags}
  306. -DENABLE_HWSERIAL3 -DTIMER_SERIAL=TIM5
  307. build_unflags = ${stm32_variant.build_unflags}
  308. -DUSBCON -DUSBD_USE_CDC
  309. #
  310. # Chitu boards like Tronxy X5s (STM32F103ZET6)
  311. #
  312. [env:chitu_f103]
  313. extends = stm32_variant
  314. board = genericSTM32F103ZE
  315. board_build.variant = MARLIN_F103Zx
  316. board_build.offset = 0x8800
  317. build_flags = ${stm32_variant.build_flags}
  318. -DSTM32F1xx
  319. build_unflags = ${stm32_variant.build_unflags}
  320. extra_scripts = ${stm32_variant.extra_scripts}
  321. buildroot/share/PlatformIO/scripts/chitu_crypt.py
  322. #
  323. # Some Chitu V5 boards have a problem with GPIO init.
  324. # Use this target if G28 or G29 are always failing.
  325. #
  326. [env:chitu_v5_gpio_init]
  327. extends = env:chitu_f103
  328. build_flags = ${env:chitu_f103.build_flags} -DCHITU_V5_Z_MIN_BUGFIX
  329. #
  330. # Zonestar ZM3E2 V1.0 / ZM3E4 V1.0 / ZM3E4 V2.0
  331. #
  332. # STM32F103RC_ZM3E2_USB ........... RCT6 with 256K
  333. # STM32F103VC_ZM3E4_USB ........... VCT6 with 256K
  334. # STM32F103VE_ZM3E4V2_USB ......... VET6 with 512K
  335. #
  336. [ZONESTAR_ZM3E]
  337. extends = stm32_variant
  338. platform_packages = ${stm_flash_drive.platform_packages}
  339. board_upload.offset_address = 0x08005000
  340. board_build.offset = 0x5000
  341. board_upload.maximum_size = 237568
  342. extra_scripts = ${stm32_variant.extra_scripts}
  343. build_flags = ${common_stm32.build_flags}
  344. -DSS_TIMER=4 -DTIMER_SERVO=TIM5 -DUSE_USB_FS -DUSBD_IRQ_PRIO=5 -DUSBD_IRQ_SUBPRIO=6 -DUSBD_USE_CDC_MSC
  345. build_unflags = ${stm32_variant.build_unflags} -DUSBD_USE_CDC
  346. [env:STM32F103RC_ZM3E2_USB]
  347. extends = ZONESTAR_ZM3E
  348. board = genericSTM32F103RC
  349. board_build.variant = MARLIN_F103Rx
  350. [env:STM32F103VC_ZM3E4_USB]
  351. extends = ZONESTAR_ZM3E
  352. board = genericSTM32F103VC
  353. board_build.variant = MARLIN_F103Vx
  354. build_flags = ${ZONESTAR_ZM3E.build_flags} -DTIMER_TONE=TIM1
  355. [env:STM32F103VE_ZM3E4V2_USB]
  356. extends = ZONESTAR_ZM3E
  357. board = genericSTM32F103VE
  358. board_build.variant = MARLIN_F103Vx
  359. build_flags = ${ZONESTAR_ZM3E.build_flags} -DTIMER_TONE=TIM1
  360. board_upload.maximum_size = 499712