Hello!
I am working on a project in which we need to do OTA on S32K144.
I use the RAppID Boot Loader Utility V1.6.7.35 to load the application into the rchw.c file S32K144_S32DS_UART1_CAN0.rbf
and S32K1xx_flash.ld and it flash and works normally.
But I have a question.
1. Rappid Bootloader After booting, can the user application operation delay time be adjusted?
2. in the rchw.c file
const volatile uint32_t RCHW[] __attribute__ ((section(".cfmConfigure"))) = { 0x015A015A, (uint32_t)Reset_Handler, 5000000, (uint32_t)&APPKEY } ;
Does 5000000 in this part mean 5 seconds? Even if you change 5000000 --> 1000000 to shorten the operating delay time, there is a delay time of 5 seconds continuously instead of 1 second.
Is there any way to solve this?
Thanks in advance
Hi Romeo,
From the user manual, there is the following description for RBF file-based bootloader, which is correct for S32K144.
Eight bytes offset from a valid RCHW (see Microcontroller Reference Manual for
more information) there is a four byte field that defines the amount of time (in
microseconds) the bootloader will delay before jumping to the Application. If the
field is 0xFFFFFFFF then the delay will default to 20ms. Otherwise it will delay as
long as the user specifies in the field.
Have you tried using this value?
Best Regards,
Mike
Hi mikedoidge,
thanks for the quick reply
I tried what you said, but it still works with a 5 second delay.
const volatile uint32_t RCHW[] __attribute__ ((section(".cfmConfigure"))) = { 0x015A015A, (uint32_t)Reset_Handler, 0xFFFFFFFF , (uint32_t)&APPKEY } ;
I used S32K144_S32DS_UART1_CAN0.rbf as the bootloader, maybe this bootloader already has a 5 second delay by default?
Looking at the rbf file I have,
S32K144_S32DS_UART1_CAN0.rbf has a delay time of 5 seconds by default, and S32K144_V11.rbf has a delay time of 3 seconds by default.
const volatile uint32_t RCHW[] __attribute__ ((section(".cfmConfigure"))) = { 0x015A015A, (uint32_t)Reset_Handler, 5000000 , (uint32_t)&APPKEY } ;
Even if I changed the value of 5000000 in various ways, there was no change.
As above, I can't do anything other than let the user specify the fields. But those values were of no use.
As you said, is it possible to get an rbf file that supports UART1 and CAN0 with default 20ms latency?
I want to operate it with an operation delay time of 100ms ~ 1000ms. I want to specify in user field.
Best Regards,
Romeo
Hi Romeo,
I'm now wondering if maybe you aren't actually loading the .srec file you build from the rchw.c to the target. As I understand, you should build the SREC file and load it to the device using the OpenSDA serial connection. This is described in description.txt file in the bootloader_S32K example project. If your changes aren't being reflected, then most likely this isn't being done properly.
One way to confirm, you could change the flash rate of the LED being toggled in appl.c. Try changing this and you can easily confirm if the file is being properly loaded to the target when you check the flash rate of the LED.
Best Regards,
Mike
Hi mikedoidge,
thanks for the quick reply
Going from the bootloader to the application works just fine.
What I want to do is change the time of the transition from the bootloader to the application.
in the rchw.c file
const volatile uint32_t RCHW[] __attribute__ ((section(".cfmConfigure"))) = { 0x015A015A, (uint32_t)Reset_Handler, 5000000, (uint32_t)&APPKEY } ;
Even if I change 5000000 to 1000000 it is always 5 seconds.
I wonder if it is possible to obtain an rbf file that can be adjusted in the above part.
Best Regards,
Romeo
Hello @Romeo,
After further investigation, it appears that the ability to adjust the delay as you are trying is not supported. The delay time was hardcoded for the S32K144. The details as to why this is the case have are not clear. It could be the support for that feature was not fully implemented or it is available only for some devices and since the interface is generic, it has the appearance of being configurable for this device.
Unfortunately, this product is in minimal support state. We can answer questions and provide information, but there is no customization support available.
My apologies we could not help you more with this issue.
Best Regards,
Mike