Tool/software:
hii ,
I followed the steps as TI recommends (+) AM2434: bootloader over UART and OSPI - Arm-based microcontrollers forum - Arm-based microcontrollers - TI E2E support forums for the OSPI mode UART firmware update.
I implemented the process according to the flowchart and developed a custom SBL_OSPI driver. When running in OSPI mode and connecting to the serial monitor, I see "CCCCCC." However, while the firmware update via UART successfully transmits the data, the flashing process fails.
I have attached the log below for reference. Could you confirm if this is the correct flow or if I might be missing something?
Thanks,
Kavaskar
Hi Kavaskar,
You first have to sent the sbl_uart uniflash if you want to flash the image, your config file should look something like this:
# First point to sbl_uart_uniflash binary, which function's as a server to flash one or more files --flash-writer=sbl_prebuilt/am64x-evm/sbl_uart_uniflash.release.hs_fs.tiimage # Now send one or more files to flash or flashverify as needed. The order of sending files does not matter # When sending bootloader make sure to flash at offset 0x0. ROM expects bootloader at offset 0x0 --file=<path to your sbl_ospi> --operation=flash --flash-offset=0x0
Best Regards,
Meet.
Hi Meet,
These things are already handled when the device is in UART boot mode. In my case, the device is in OSPI mode, and when I switch to UART mode via software, it behaves as you described. I have already implemented your suggestion as well.
C:\ti\mcu_plus_sdk_am243x_10_01_00_32\tools\boot> python uart_uniflash.py -p com10 --cfg=default_sbl_ospi.cfg Parsing config file ... Parsing config file ... SUCCESS. Found 3 command(s) !!! Executing command 1 of 3 ... Found flash writer ... sending sbl_prebuilt/am243x-lp/sbl_uart_uniflash.release.hs_fs.tiimage Sent flashwriter sbl_prebuilt/am243x-lp/sbl_uart_uniflash.release.hs_fs.tiimage of size 308654 bytes in 30.43s. Executing command 2 of 3 ... Command arguments : --file=sbl_ospi.Debug.hs_fs.tiimage --operation=flash --flash-offset=0x0 Sending sbl_ospi.Debug.hs_fs.tiimage: 0%| | 0/393893 [00:00<?, ?bytes/s] [ERROR] XMODEM send failed, no response OR incorrect response from EVM OR cancelled by user, Power cycle EVM and run this script again !!!
Thanks,
Kavaskar
Hi Meet,
I’m working on a custom bootloader setup for the AM243x and would appreciate your help in reviewing the configuration and flow.
In UART boot mode, I load both the sbl_uart_uniflash.tiimage
and a custom sbl_ospi.tiimage
at offset 0x00
using the Python UniFlash command. The main application image (app_image
) is placed at offset 0x80000
.
When switching to OSPI boot mode, the custom sbl_ospi
bootloader executes and checks a condition by reading a bit stored at flash offset 0x200000
. If this bit is set, the bootloader proceeds to load sbl_uart_uniflash
.
Once sbl_uart_uniflash
is running, it successfully receives the firmware image over UART. However, during the flashing process, the image fails to write into flash memory. The data reception appears to complete without issues, but the write operation does not succeed as expected.
I’ve uploaded a ZIP file containing the relevant source files and logs for your reference.
Could you please review it and let me know if I might have missed any configuration or if something needs to be corrected?
Looking forward to your support.
Thanks and regards,
Kavaskar
Hi kavaskar,
Thanks for the files, Please give me some time to review this info and get back to you.
Best Regards,
Meet.