Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

STM32F103 / STM32F407 boards BOOT0 pin should have jumper to VDD 3v3 #63

Open
ag88 opened this issue Oct 4, 2021 · 2 comments
Open

Comments

@ag88
Copy link

ag88 commented Oct 4, 2021

STM32F103 / STM32F407 boards BOOT0 pin should have jumper (or button) to VDD 3v3, and the pin should be resistor to GND. can use like 1k, 4.7k etc. or can jumper both sides 3V3, BOOT0, GND, so normal use jumper BOOT0, GND, program jumper 3V3, BOOT0

Your boards are quite good, but for many of your boards
e.g. Robin Nano V3
https://github.com/makerbase-mks/MKS-Robin-Nano-V3.X/blob/main/hardware/MKS%20Robin%20Nano%20V3.0_004/MKS%20Robin%20Nano%20V3.0_004%20SCH.pdf
Robin Nano V1.x
https://github.com/makerbase-mks/MKS-Robin-Nano-V1.X
Robin E3D
https://github.com/makerbase-mks/MKS-Robin-E3-E3D/blob/master/hardware/MKS%20Robin%20E3%20V1.1_004/MKS%20Robin%20E3%20V1.1_004%20SCH.pdf
https://github.com/makerbase-mks/MKS-Robin-Nano-V1.X/blob/master/hardware/MKS%20Robin%20Nano%20V1.3_002/MKS%20Robin%20Nano%20V1.3_002%20SCH.pdf

BOOT0 is tie to GND, this is not good. BOOT0 allows the use of UART to upload firmware on PA9 TX, PA10 RX for STM32F103. And for STM32F407 BOOT0 allows direct USB DFU firmware upload (no need extra boot loader or st-link). The procedure is set BOOT0, press reset, upload firmware.

So for STM32F103 (for STM32F407 as well) uart1 pins PA9, PA10 should be made available on headers. I think this is already ok.

@mks-viva
Copy link
Collaborator

mks-viva commented Oct 7, 2021

Thank you very much for your suggestion and support for MKS. In fact, we did the same. MKS Eagle and MKS Monster8 have added BOOT0 button settings.
image
image

@ag88
Copy link
Author

ag88 commented Oct 7, 2021

Thanks, I've an 'old' Atmega based MKS board. I'd be buying MKS's STM32 boards, as I'm a fan of STM32.
But actually the most important thing to fix for other MKS STM32 boards is this
STM32F103 / STM32F407 boards should use on-chip USB support
this apparently affect E3 / E3D and v1.x boards
makerbase-mks/MKS-Robin-Nano-V1.X#117
makerbase-mks/MKS-Robin-E3-E3D#139

Nano V3 do not have the problem, V3 use direct USB which is good. MKS should update designs for STM32 to use these practices as these has been a 'best practices' for STM32 boards

  • use direct USB to STM32 chip (PA11 USB D-, PA12 USB D+) instead of using a separate USB-uart chip for STM32F103 and STM32F407 as above
    (need to update 'old' boards, to 'new' designs so that it is USB to STM32 direct, e.g. Nano V1 and E3 / E3D)

  • provide BOOT0 pin support on header as that is needed for uploading firmware. For STM32F407, that one has on chip USB DFU (device firmware update) . STM32F103 needs an extra usb uart dongle to program. The extra usb uart don't need to be on board, but the pins PA9 TX, PA10 RX needs to be available on headers. MKS can sell usb uart dongles for those who wish to program their stm32f103 boards. Programming can be done with STM32CubeProgrammer
    https://www.st.com/en/development-tools/stm32cubeprog.html

  • RTC and VBAT support
    discussed here:
    STM32F103 / STM32F407 boards, enhancement request 32khz RTC crystal and VBAT #64 (comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants