Marlin 2.0 Compatibility with Chinese 32-bit 3D Printer Motherboards

A follow up to a previous post, this is a listing of all the chinese 3D printer motherboards I could find, along with their CPU. I’m noticing that STM32 is overwhelmingly the most popular choice. Additionally, the STM32F103ZET6 seems to be the most popular selected CPU as well. Considering alternate firmware options for these boards, since Marlin is not designed for a colour TFT display with touch UI, I am wondering whether a new fork is a better option, rather than trying to bend Marlin 2.0 to fit.

CPU Type

Processor

  • Printer/Motherboard Model  – Stock Firmware info

Printers with working Marlin 2.0 firmware linked in green.

STM32F1 (ARM Cortex-M3)

STM32F103C8T6 (64K 128K flash)

STM32F103ZET6 (512K flash)

STM32F103VET6 (512K flash)

STM32F107VCT6 (256K flash)

  • MKS TFT32 / TFT28 LCD module – Proprietary firmware Unsupported at present

STM32F103RCT6 (256K flash)

STM32F1 unidentified

STM32F4 (ARM Cortex-M4)

STM32F407ZGT6

NXP LPC1000

LPC1768

33 Comments

  1. Looking into getting the STM32F103 firmware off my XViCO board. I have an ST Nucleo board, which has an ST-Link built-in, so it should be possible.

    Note that I can find identical copies of my board and screen on AliExpress by searching for “stm32f103 3d”. One of the buyers on store “3D Super Shop” even complains that the board came with “XViCO firmware”.

  2. Hobi

    Have a look to the above thread of alfawise. Code runs now. We are tuning machine settings as the actual code runs so fast that we have to limit the machine to avoid loosing y axis steps! A

  3. Olivier

    Hi folks
    Watch out for a nasty timer bug that took us 3 weeks almost to find . On stm 32f103 it seems that timer direct reload mode do fail sometimes. Have a look on marlin website. You have to use timer preload mode . At least for marlin2

    • admin

      Hi Olivier, I’ve been following the GitHub progress pretty closely, great to see lots happening and a BIG thank you to you and the Ux0 team for your contributions. Can you please give me a link to that specific issue? I’m looking forward hopefully to a fix for the layer shifting issue.

        • admin

          I’ve actually been following and participating in that thread 😉 I bought an online course on STM32 timers but it looks like you guys are almost done solving the problem! Can you confirm with this fix, there are no more layer shifts?

          • Olivier

            Apparently with that fix there are no issues reported by beta testers , about 5 people that tried on multiple prints. One hour prints. Before it was one glitch every 30 seconds almost.
            I will improve a little bit the fix from a marlin view. The current version is not 100% comparable to the marlin code. We actually delay the timer process by one isr. We need to do that on the steps too… I am cutting the hair in 4 here!
            I think this is a hardware bug in the chip due to a crosstalk issue in the signals ( inside the chip, the chip tracks)

          • Olivier

            Hmmm one more news. I am really looking why I have a bug that looks a cpu bug . Just learnt that some Chinese guts mixed real and fake clones cpus. You cannot detect with the markings as they copied them too…. I will run the code on a genuine stm board. Gosh…

  4. Nano

    hello in your support list for the STM32F103ZET6 (512K flash) you put the MKS Robin Lite (MKS Robin Mini) the board is not using STM32F103ZET6 it is based on the STM32F103VET6 cany you plz change the flaw

      • Olivier

        @Nano or other users of VE chips. I see one interrupt skipped over 1 million in average on the stepper isr in marlin. I see the counter not resetting to 0 but continue counting and that generates a 13ms stepper clock gap, which makes a shock in all steppers. I still do not understand why it does that. Does your marlin machine also feels rough and skip players?

  5. martin

    How to test marlin 2 firmware on chitu F x5sa board? it has no programmer connector, only wifi. Which isp use for it?

    • admin

      I don’t know for sure as I don’t have one – you may have to use a multimeter to find out what pins are connected to the programming pins on the STM32F103ZET6 CPU. There is an unpopulated header on the left of the CPU. I wonder if that is the programming header? ST-Link will work – they are $3 on ebay for clones that work with the official software for STM32 programming.

Leave a Reply

Your email address will not be published. Required fields are marked *