Hi,
I have a problem with programming the RT685. After initial programming, the RT685 cannot boot and remains stuck in BootROM. Due to manufacturing considerations, we chose to use the SEGGER Flasher Pro instead of blhost for programming the blank board. The SEGGER Flasher programs the board via the SWD interface.
I have verified the ISP mode pins and the data on the external flash, and everything appears to be correct. To resolve the issue, I use blhost to read the external flash with the following commands, after this, the problem disappears. Below are the commands to read the flash.
set blhost_connect=-u 0x1fc9,0x0020
blhost %blhost_connect% -j get-property 1 0
blhost %blhost_connect% -j fill-memory 0x1c000 4 0xc0000101
blhost %blhost_connect% -j configure-memory 0x9 0x1c000
blhost %blhost_connect% -j read-memory 0x08000000 0x1000 dump.bin
blhost %blhost_connect% -j reset
Please note that this issue only happens during the initial programming. After the board successfully boots once, the issue cannot be reproduced.
Could you please help us with this? Is there any known limitation regarding the first programming? Must the initial programming be with blhost?
Thank you for your support.
ROM expects a properly configured FlexSPI NOR Flash with a valid Flash Configuration Block (FCB) and bootable image. When using SEGGER Flasher via SWD, the image may be written correctly, but the BootROM might not recognize or initialize the external flash properly during the first boot.
BR,
Omar
Omar, Thanks for your reply.
We used the SEGGER Flasher to program the FCB and the bootable image, both of which were read from a golden unit that successfully booted without issues. As mentioned above, after I sent the blhost commands, the non-booting boards were able to boot successfully. I also checked the NOR Flash data after sending the blhost commands, and they were identical to those on the golden unit.
Does this mean that the issue is not related to the FCB? Is there anything else we can check for the problem? I appreciate your continued support on this.
Thanks,
Jerry
blhost -p <COM XX> - configure-memory 0x09 0x1c000
This is to configure the FlexSPI interface using the parameter written in RAM address 0x1c00. After this command is sent, the FlexSPI finishes the configuration, and it is ready to access the external flash.
It is possible that Segger is not configuring the flexspi interface.
BR,
Omar