EasyThreeD-K7-STM32
EasyThreeD-K7-STM32 copied to clipboard
Enhancements for boards with AT32F403ARCT7
Hi, a couple days ago I've received a K9 with AT32F403ARCT7 and now I wonder if there is an option for compiling Marlin for Cortex-M4F arch and 240MHz clock while using STM32F103 config. I'm not familiar with PlatformIO, but used STM32 HAL libraries, therefore I leave my thoughts here for consideration, and with some help I may be able to contribute to this project.
PS: Thanks for y'all for supporting this niche printers. After short time of testing I can say, that this firmware works much better that original one.
Edit: Now that I'm at it, I've got confused. I have a black and blue K7 (in terms of shape and parts location) with additional buttons, exactly like in K9. My printer works with K9 firmware, also with bed positioning buttons. It may be relevant later on.
I tried to create a configuration for Cortex-M4, but immediately found several problems with porting. For some reason Marlin does not support disabling JTAG on the M4, although it is required on the ET4000+. Having problems with pin names, I didn’t spend much time on it and gave up.
If you are able to successfully build the firmware, please try to enable I2C as well. See https://github.com/schmttc/EasyThreeD-K7-STM32/issues/5#issuecomment-1883304759
According to Artery cross reference table, you may be intrested in STM32F446
platformio has genericSTM32F446RC board
Okay, I may look into that later. Thanks for the cross reference table.
After some thought and tinkering, I've got to the conclusion that it may be better to only increase the CPU frequency. Porting to other arch is especially difficult, because rn this board only works with libmaple.
Found some time to dig into the topic a little deeper. With libmaple it should be possible to easily define a new board and cpu variant, and then to increase the cpu clock to 120 MHz. At this moment I'm not sure what it will take to get the mcu working at full speed, as registers for PPL configuration may differ between STM32F103 and AT32 (libmaple doesn't have macro definitions for higher settings).
AT32F403A has extra PLL config bits that STM32F103 doesn't have
Also, you may be interested in Clock Configuration Tool by Artery