klipper icon indicating copy to clipboard operation
klipper copied to clipboard

add support for at32f415 and at32f413

Open vcore85 opened this issue 1 year ago • 3 comments

This PR add support for artery at32f415 and at32f413 . They are almost fully compatible with stm32f103 ,but have higher clock and little difference. The at32f413 need to set RCC_CFGR_PLLRANGE in RCC_CFGR register when PLL range great than 72Mhz . The RCC_CFGR_PLLRANGE bit is reserved in stm32f103 series . While at32f415 do not need to set RCC_CFGR_PLLRANGE bit . They can run stably at 120Mhz . The RCC_CFGR_USBPRE_DIV2_5 use bit 23 which is also reserved in stm32f103 series . at32f413 can run usb and canbus ,but need to make small change in usbfs.c . at32f415 can only run canbus at now . There are some changes in i2c.c for at32f413/at32f415 running i2c at the speed of 100k and 400k .

signed-off-by: Albert Lin [email protected]

vcore85 avatar Jun 23 '24 15:06 vcore85

Thank you for your contribution to Klipper. Unfortunately, a reviewer has not assigned themselves to this GitHub Pull Request. All Pull Requests are reviewed before merging, and a reviewer will need to volunteer. Further information is available at: https://www.klipper3d.org/CONTRIBUTING.html

There are some steps that you can take now:

  1. Perform a self-review of your Pull Request by following the steps at: https://www.klipper3d.org/CONTRIBUTING.html#what-to-expect-in-a-review If you have completed a self-review, be sure to state the results of that self-review explicitly in the Pull Request comments. A reviewer is more likely to participate if the bulk of a review has already been completed.
  2. Consider opening a topic on the Klipper Discourse server to discuss this work. The Discourse server is a good place to discuss development ideas and to engage users interested in testing. Reviewers are more likely to prioritize Pull Requests with an active community of users.
  3. Consider helping out reviewers by reviewing other Klipper Pull Requests. Taking the time to perform a careful and detailed review of others work is appreciated. Regular contributors are more likely to prioritize the contributions of other regular contributors.

Unfortunately, if a reviewer does not assign themselves to this GitHub Pull Request then it will be automatically closed. If this happens, then it is a good idea to move further discussion to the Klipper Discourse server. Reviewers can reach out on that forum to let you know if they are interested and when they are available.

Best regards, ~ Your friendly GitIssueBot

PS: I'm just an automated script, not a human being.

github-actions[bot] avatar Jul 08 '24 00:07 github-actions[bot]

Thanks. I'm not sure I understand the implications of this change. What happens if one runs the unmodified stm32f103 Klipper code on the at32f413/at32f415 chips?

-Kevin

KevinOConnor avatar Jul 08 '24 02:07 KevinOConnor

Thanks. I'm not sure I understand the implications of this change. What happens if one runs the unmodified stm32f103 Klipper code on the at32f413/at32f415 chips?

-Kevin

The unmodified stm32f103 Klipper code with canbus runs well on the at32f413/at32f415 chips in most situation. But the Klipper code with usb interface can not run on at32f413 before the change of usbfs.c . The changes of mcu clock and i2c.c can make the at32 chips running hardware i2c with 400k speed which the eddy coil needed.

vcore85 avatar Jul 10 '24 06:07 vcore85