STM32G474 IAP bin file transfer stopped according to AN4657
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2025-01-12 06:49 PM - last edited on ‎2025-01-15 04:57 PM by Andrew Neil
Hello,
Now I am designing a IAP program for STM32G474VET6 according to the AN4657 referred to STM32L476G_EVAL. and I used VScode +CMake tools.
I have modified the flash_if.h because of the diffrence between STM32G474VET6 and STM32L476G as below
/* Define the address from where user application will be loaded.
Note: this area is reserved for the IAP code */
#define FLASH_PAGE_STEP FLASH_PAGE_SIZE /* Size of page : 2 Kbytes */
#define APPLICATION_ADDRESS (uint32_t)0x08008000 /* Start user code address: ADDR_FLASH_PAGE_8 */
/* Notable Flash addresses */
#define USER_FLASH_END_ADDRESS 0x08080000 /* STM32G474VET6, Flash 512KB*/
/* Define the user application size */
#define USER_FLASH_SIZE ((uint32_t)0x00008000) /* Small default template application */
and modified the flash_if.c as below
/* 512KB flash 1 * 512 * 1024 */
#define FLASH_START_ADRESS 0x08000000
#define FLASH_PAGE_NBPERBANK 128
#define FLASH_BANK_NUMBER 2
/* Unlock the Program memory */
//HAL_FLASH_Lock();
the issue I met is when I used Tera Term to transfer an APP bin file, the transfer stopped and the result is time_out as below
I am sure that the UART is OK because I can receive the menu strings and send 1 for choose download.
I will attach the project file as attachment(it seems cannot attach), please give me some advice.
Best Regards,
Chester
- Labels:
-
Bootloader
-
STM32G4 series
-
UART-USART
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2025-01-14 05:36 PM
Hello, @SofLit @Tesla DeLorean @MM..1 @Imen.D
what is the issue?
I attached the project file. please have a check.
Could you give me some advice?
Thanks a lot!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2025-01-14 10:06 PM
First try explain why you dont use internal system bootloader, and second why you dont scope signals and debug...
How is your TT COM config?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2025-01-15 04:52 PM
hello, @MM..1
1. I want to study IAP and then expand to OTA. I am not sure use internal system bootloader can expand to OTA or not. I searched ST.com, then I get the AN4657 about IAP. can internal system bootloader expand to OTA? please give some guide.
2. I have debug to step into code, it seems HAL_UART_Receive() had a timeout always for the first byte. another guy had the same issue with me, he also posted a question, but no results from you all.
3. TT COM config as the AN4657 required, as below
send bin file as below
is something wrong?
if my TT config something wrong, how can I get the menu strings and I sent 1 for choosing download?
please give some advice.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2025-01-16 05:40 AM
1. Use system bootloader with OTA is based on module capa. I use BT SPP as bridge to system and it work...
2. If your TX RX is as AN2606 describe try first system bootloader to go work. After this is ok create your own...
3. Debug RX TX is basic ...