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

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