-
Notifications
You must be signed in to change notification settings - Fork 129
Description
I am trying to get GRBLHAL running on my Rumba32 board, which uses an STM32F446VETX MCU—the same as the FYSETC S6.
Here’s what I’ve done so far:
- I copied the FYSETC S6 [env] configuration and added HAS_BOOTLOADER=1 since the Rumba32 has a built-in bootloader.
- I tried all the .ld linker scripts. The only one that works for me is: FLEXI_STM32F446RETX_BL_FLASH.ld
- After flashing with this linker script, the board shows up as a COM port and communicates correctly with IO Sender.
- Other linker scripts (STM32F446RETX_BL32K_FLASH, STM32F446RETX_FLASH, STM32F446RETX_NO_BL_FLASH) flash fine but the board does not appear as a COM port.
Problem:
After flashing with FLEXI_STM32F446RETX_BL_FLASH.ld, the board works initially. However, when I reset or power-cycle the board, it no longer appears in Device Manager and the PC makes no connection sound.
Environment configuration used:
[env:fysetc_s6]
board = fysetc_s6
board_build.ldscript = FLEXI_STM32F446RETX_BL_FLASH.ld
build_flags = ${common.build_flags}
-D BOARD_FYSETC_S6=
-D HSE_VALUE=12000000
-D USB_SERIAL_CDC=1
-D HAS_BOOTLOADER=1
lib_deps = ${common.lib_deps}
eeprom
lib_extra_dirs = ${common.lib_extra_dirs}
upload_protocol = dfu
there is onther deffrence between fysetc_s6 and rumba32 : the eeprom
rumba32 : 24LC64T-I/OT -- 64 Kbit (8 KB)
fysetc_s6 : 24LC16BT-I/OT -- 16 Kbit (2 KB)
It seems like the USB is only functional immediately after flashing but fails to enumerate after a reset or power cycle.
I suspect this might be related to the bootloader or how the firmware handles startup and the vector table.
Any guidance on how to ensure the USB COM port persists after reset or power cycle would be greatly appreciated.