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

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432
  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. # Panda Pi V2.9 - Standalone (STM32F103RC)
  70. # Headless, without direct Pi control, but potentially hosting OctoPrint, stepdaemon, etc.
  71. #
  72. [env:PANDA_PI_V29]
  73. extends = common_STM32F103RC_variant
  74. build_flags = ${common_STM32F103RC_variant.build_flags}
  75. -DTIMER_SERVO=TIM1
  76. board_build.offset = 0x5000
  77. board_upload.offset_address = 0x08005000
  78. #
  79. # MKS Robin (STM32F103ZET6)
  80. # Uses HAL STM32 to support Marlin UI for TFT screen with optional touch panel
  81. #
  82. [env:mks_robin]
  83. extends = stm32_variant
  84. board = genericSTM32F103ZE
  85. board_build.variant = MARLIN_F103Zx
  86. board_build.encrypt = Robin.bin
  87. board_build.offset = 0x7000
  88. build_flags = ${stm32_variant.build_flags}
  89. -DENABLE_HWSERIAL3 -DTIMER_SERIAL=TIM5
  90. build_unflags = ${stm32_variant.build_unflags}
  91. -DUSBCON -DUSBD_USE_CDC
  92. #
  93. # MKS Robin E3/E3D (STM32F103RCT6) with TMC2209
  94. #
  95. [env:mks_robin_e3]
  96. extends = common_STM32F103RC_variant
  97. board_build.encrypt = Robin_e3.bin
  98. board_build.offset = 0x5000
  99. board_upload.offset_address = 0x08005000
  100. build_flags = ${common_STM32F103RC_variant.build_flags}
  101. -DTIMER_SERVO=TIM5 -DDEFAULT_SPI=3
  102. build_unflags = ${common_STM32F103RC_variant.build_unflags}
  103. -DUSBCON -DUSBD_USE_CDC
  104. debug_tool = stlink
  105. #
  106. # Creality (STM32F103Rx)
  107. #
  108. [STM32F103Rx_creality]
  109. extends = stm32_variant
  110. board_build.variant = MARLIN_F103Rx
  111. board_build.offset = 0x7000
  112. board_upload.offset_address = 0x08007000
  113. build_flags = ${stm32_variant.build_flags}
  114. -DMCU_STM32F103RE -DHAL_SD_MODULE_ENABLED
  115. -DSS_TIMER=4 -DTIMER_SERVO=TIM5
  116. -DENABLE_HWSERIAL3 -DTRANSFER_CLOCK_DIV=8
  117. build_unflags = ${stm32_variant.build_unflags}
  118. -DUSBCON -DUSBD_USE_CDC
  119. extra_scripts = ${stm32_variant.extra_scripts}
  120. pre:buildroot/share/PlatformIO/scripts/random-bin.py
  121. monitor_speed = 115200
  122. debug_tool = jlink
  123. upload_protocol = jlink
  124. #
  125. # Custom upload to SD via Marlin with Binary Protocol
  126. #
  127. [STM32F103Rx_creality_xfer]
  128. extends = STM32F103Rx_creality
  129. extra_scripts = ${STM32F103Rx_creality.extra_scripts}
  130. pre:buildroot/share/scripts/upload.py
  131. upload_protocol = custom
  132. #
  133. # Creality 512K (STM32F103RE)
  134. #
  135. [env:STM32F103RE_creality]
  136. extends = STM32F103Rx_creality
  137. board = genericSTM32F103RE
  138. [env:STM32F103RE_creality_xfer]
  139. extends = STM32F103Rx_creality_xfer
  140. board = genericSTM32F103RE
  141. #
  142. # Creality 256K (STM32F103RC)
  143. #
  144. [env:STM32F103RC_creality]
  145. extends = STM32F103Rx_creality
  146. board = genericSTM32F103RC
  147. [env:STM32F103RC_creality_xfer]
  148. extends = STM32F103Rx_creality_xfer
  149. board = genericSTM32F103RC
  150. #
  151. # BigTree SKR Mini E3 V2.0 & DIP / SKR CR6 (STM32F103RET6 ARM Cortex-M3)
  152. #
  153. # STM32F103RE_btt ............. RET6
  154. # STM32F103RE_btt_USB ......... RET6 (USB mass storage)
  155. #
  156. [env:STM32F103RE_btt]
  157. extends = stm32_variant
  158. board = genericSTM32F103RE
  159. board_build.variant = MARLIN_F103Rx
  160. board_build.offset = 0x7000
  161. board_upload.offset_address = 0x08007000
  162. build_flags = ${stm32_variant.build_flags}
  163. -DMCU_STM32F103RE -DHAL_SD_MODULE_ENABLED
  164. -DSS_TIMER=4 -DTIMER_SERVO=TIM5
  165. -DENABLE_HWSERIAL3 -DTRANSFER_CLOCK_DIV=8
  166. monitor_speed = 115200
  167. debug_tool = jlink
  168. upload_protocol = jlink
  169. [env:STM32F103RE_btt_USB]
  170. extends = env:STM32F103RE_btt
  171. platform_packages = ${stm_flash_drive.platform_packages}
  172. build_flags = ${env:STM32F103RE_btt.build_flags}
  173. -DUSE_USB_FS -DUSBD_IRQ_PRIO=5
  174. -DUSBD_IRQ_SUBPRIO=6 -DUSBD_USE_CDC_MSC
  175. build_unflags = ${stm32_variant.build_unflags} -DUSBD_USE_CDC
  176. #
  177. # FLSUN QQS Pro (STM32F103VET6)
  178. # board Hispeedv1
  179. #
  180. [env:flsun_hispeedv1]
  181. extends = stm32_variant
  182. board = genericSTM32F103VE
  183. board_build.variant = MARLIN_F103Vx
  184. board_build.encrypt = Robin_mini.bin
  185. board_build.offset = 0x7000
  186. board_upload.offset_address = 0x08007000
  187. build_flags = ${stm32_variant.build_flags}
  188. -DMCU_STM32F103VE -DSS_TIMER=4 -DENABLE_HWSERIAL3
  189. -DTIMER_TONE=TIM3 -DTIMER_SERVO=TIM2
  190. build_unflags = ${stm32_variant.build_unflags}
  191. -DUSBCON -DUSBD_USE_CDC
  192. #
  193. # MKS Robin Nano V1.2 and V2
  194. #
  195. [env:mks_robin_nano35]
  196. extends = stm32_variant
  197. board = genericSTM32F103VE
  198. board_build.variant = MARLIN_F103Vx
  199. board_build.encrypt = Robin_nano35.bin
  200. board_build.offset = 0x7000
  201. board_upload.offset_address = 0x08007000
  202. build_flags = ${stm32_variant.build_flags}
  203. -DMCU_STM32F103VE -DSS_TIMER=4 -DENABLE_HWSERIAL3
  204. -DTIMER_TONE=TIM3 -DTIMER_SERVO=TIM2
  205. build_unflags = ${stm32_variant.build_unflags}
  206. -DUSBCON -DUSBD_USE_CDC
  207. debug_tool = jlink
  208. upload_protocol = jlink
  209. #
  210. # Mingda MPX_ARM_MINI
  211. #
  212. [env:mingda_mpx_arm_mini]
  213. extends = stm32_variant
  214. board = genericSTM32F103ZE
  215. board_build.variant = MARLIN_F103Zx
  216. board_build.offset = 0x10000
  217. build_flags = ${stm32_variant.build_flags}
  218. -DENABLE_HWSERIAL3 -DTIMER_SERIAL=TIM5
  219. build_unflags = ${stm32_variant.build_unflags}
  220. -DUSBCON -DUSBD_USE_CDC
  221. #
  222. # Malyan M200 (STM32F103CB)
  223. #
  224. [env:STM32F103CB_malyan]
  225. extends = common_stm32
  226. board = malyanm200_f103cb
  227. build_flags = ${common_stm32.build_flags}
  228. -DHAL_PCD_MODULE_ENABLED -DDISABLE_GENERIC_SERIALUSB
  229. -DHAL_UART_MODULE_ENABLED
  230. src_filter = ${common.default_src_filter} +<src/HAL/STM32>
  231. #
  232. # FLYmaker FLY Mini (STM32F103RCT6)
  233. #
  234. [env:FLY_MINI]
  235. extends = stm32_variant
  236. board = genericSTM32F103RC
  237. board_build.variant = MARLIN_F103Rx
  238. board_build.offset = 0x5000
  239. board_upload.offset_address = 0x08005000
  240. build_flags = ${stm32_variant.build_flags} -DSS_TIMER=4
  241. #
  242. # MKS Robin Mini (STM32F103VET6)
  243. #
  244. [env:mks_robin_mini]
  245. extends = stm32_variant
  246. board = genericSTM32F103VE
  247. board_build.variant = MARLIN_F103Vx
  248. board_build.encrypt = Robin_mini.bin
  249. board_build.offset = 0x7000
  250. board_upload.offset_address = 0x08007000
  251. build_flags = ${stm32_variant.build_flags}
  252. -DMCU_STM32F103VE -DTIMER_TONE=TIM3 -DTIMER_SERVO=TIM2
  253. #
  254. # MKS Robin Lite/Lite2 (STM32F103RCT6)
  255. #
  256. [env:mks_robin_lite]
  257. extends = stm32_variant
  258. board = genericSTM32F103RC
  259. board_build.variant = MARLIN_F103Rx
  260. board_build.encrypt = mksLite.bin
  261. board_build.offset = 0x5000
  262. board_upload.offset_address = 0x08005000
  263. #
  264. # MKS ROBIN LITE3 (STM32F103RCT6)
  265. #
  266. [env:mks_robin_lite3]
  267. extends = env:mks_robin_lite
  268. board_build.encrypt = mksLite3.bin
  269. #
  270. # MKS Robin Pro (STM32F103ZET6)
  271. #
  272. [env:mks_robin_pro]
  273. extends = env:mks_robin
  274. board_build.encrypt = Robin_pro.bin
  275. #
  276. # MKS Robin E3p (STM32F103VET6)
  277. # - LVGL UI
  278. #
  279. [env:mks_robin_e3p]
  280. extends = stm32_variant
  281. board = genericSTM32F103VE
  282. board_build.variant = MARLIN_F103Vx
  283. board_build.encrypt = Robin_e3p.bin
  284. board_build.offset = 0x7000
  285. board_upload.offset_address = 0x08007000
  286. build_flags = ${stm32_variant.build_flags}
  287. -DMCU_STM32F103VE -DSS_TIMER=4
  288. -DTIMER_TONE=TIM3 -DTIMER_SERVO=TIM2
  289. debug_tool = jlink
  290. upload_protocol = jlink
  291. #
  292. # JGAurora A5S A1 (STM32F103ZET6)
  293. #
  294. [env:jgaurora_a5s_a1]
  295. extends = stm32_variant
  296. board = genericSTM32F103ZE
  297. board_build.variant = MARLIN_F103Zx
  298. board_build.offset = 0xA000
  299. board_build.rename = firmware_for_sd_upload.bin
  300. board_upload.offset_address = 0x0800A000
  301. build_flags = ${stm32_variant.build_flags}
  302. -DSTM32F1xx -DSTM32_XL_DENSITY
  303. extra_scripts = ${stm32_variant.extra_scripts}
  304. buildroot/share/PlatformIO/scripts/jgaurora_a5s_a1_with_bootloader.py
  305. #
  306. # FYSETC STM32F103RC
  307. #
  308. [env:STM32F103RC_fysetc]
  309. extends = common_STM32F103RC_variant
  310. extra_scripts = ${common_STM32F103RC_variant.extra_scripts}
  311. buildroot/share/PlatformIO/scripts/STM32F103RC_fysetc.py
  312. lib_ldf_mode = chain
  313. debug_tool = stlink
  314. upload_protocol = serial
  315. #
  316. # Longer 3D board in Alfawise U20 (STM32F103VET6)
  317. #
  318. [env:STM32F103VE_longer]
  319. extends = stm32_variant
  320. lib_deps = ${common.lib_deps}
  321. https://github.com/tpruvot/STM32_Servo_OpenDrain/archive/2.0.zip
  322. board = genericSTM32F103VE
  323. board_build.variant = MARLIN_F103VE_LONGER
  324. board_build.rename = project.bin
  325. board_build.offset = 0x10000
  326. board_upload.offset_address = 0x08010000
  327. build_flags = ${stm32_variant.build_flags} -DMCU_STM32F103VE -DU20 -DTS_V12
  328. build_unflags = ${stm32_variant.build_unflags} -DUSBCON -DUSBD_USE_CDC -DHAL_PCD_MODULE_ENABLED
  329. extra_scripts = ${stm32_variant.extra_scripts}
  330. monitor_speed = 250000
  331. debug_tool = stlink
  332. #
  333. # TRIGORILLA PRO (STM32F103ZET6)
  334. #
  335. [env:trigorilla_pro]
  336. extends = stm32_variant
  337. board = genericSTM32F103ZE
  338. board_build.variant = MARLIN_F103Zx
  339. build_flags = ${stm32_variant.build_flags}
  340. -DENABLE_HWSERIAL3 -DTIMER_SERIAL=TIM5
  341. build_unflags = ${stm32_variant.build_unflags}
  342. -DUSBCON -DUSBD_USE_CDC
  343. #
  344. # Chitu boards like Tronxy X5s (STM32F103ZET6)
  345. #
  346. [env:chitu_f103]
  347. extends = stm32_variant
  348. board = genericSTM32F103ZE
  349. board_build.variant = MARLIN_F103Zx
  350. board_build.offset = 0x8800
  351. build_flags = ${stm32_variant.build_flags}
  352. -DSTM32F1xx
  353. build_unflags = ${stm32_variant.build_unflags}
  354. extra_scripts = ${stm32_variant.extra_scripts}
  355. buildroot/share/PlatformIO/scripts/chitu_crypt.py
  356. #
  357. # Some Chitu V5 boards have a problem with GPIO init.
  358. # Use this target if G28 or G29 are always failing.
  359. #
  360. [env:chitu_v5_gpio_init]
  361. extends = env:chitu_f103
  362. build_flags = ${env:chitu_f103.build_flags} -DCHITU_V5_Z_MIN_BUGFIX
  363. #
  364. # Zonestar ZM3E2 V1.0 / ZM3E4 V1.0 / ZM3E4 V2.0
  365. #
  366. # STM32F103RC_ZM3E2_USB ........... RCT6 with 256K
  367. # STM32F103VC_ZM3E4_USB ........... VCT6 with 256K
  368. # STM32F103VE_ZM3E4V2_USB ......... VET6 with 512K
  369. #
  370. [ZONESTAR_ZM3E]
  371. extends = stm32_variant
  372. platform_packages = ${stm_flash_drive.platform_packages}
  373. board_upload.offset_address = 0x08005000
  374. board_build.offset = 0x5000
  375. board_upload.maximum_size = 237568
  376. extra_scripts = ${stm32_variant.extra_scripts}
  377. build_flags = ${common_stm32.build_flags}
  378. -DSS_TIMER=4 -DTIMER_SERVO=TIM5 -DUSE_USB_FS -DUSBD_IRQ_PRIO=5 -DUSBD_IRQ_SUBPRIO=6 -DUSBD_USE_CDC_MSC
  379. build_unflags = ${stm32_variant.build_unflags} -DUSBD_USE_CDC
  380. [env:STM32F103RC_ZM3E2_USB]
  381. extends = ZONESTAR_ZM3E
  382. board = genericSTM32F103RC
  383. board_build.variant = MARLIN_F103Rx
  384. [env:STM32F103VC_ZM3E4_USB]
  385. extends = ZONESTAR_ZM3E
  386. board = genericSTM32F103VC
  387. board_build.variant = MARLIN_F103Vx
  388. build_flags = ${ZONESTAR_ZM3E.build_flags} -DTIMER_TONE=TIM1
  389. [env:STM32F103VE_ZM3E4V2_USB]
  390. extends = ZONESTAR_ZM3E
  391. board = genericSTM32F103VE
  392. board_build.variant = MARLIN_F103Vx
  393. build_flags = ${ZONESTAR_ZM3E.build_flags} -DTIMER_TONE=TIM1
  394. board_upload.maximum_size = 499712