Bootloader implementation

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Bootloader implementation

4,376 Views
james_dulgerian
Contributor I

I am working on a project using the s32k146. We have CAN in the project and I have a Peak CAN transceiver. I would like to implement the bootloader discussed in UBLUG.pdf (attached) to download firmware to my target. It is unclear to me how I build this project and install to enable the bootloader. Also, I would like to get the NXPOpenBus PC utility.

0 Kudos
11 Replies

3,211 Views
ClaudioB
Contributor II

Hello @dianabatrlova ,

I'm working on another bootloader project on the S32K118 micro and different canbus protocol (KWP2000).

I tryed to make a porting of the previuos NXP unified bootloader project having a lot of issues, in principle because it's not clear for me, how the api-flash routines had to be call.
I would like to understand if the flash routines have to be run in ram mandatory or if would be able to call the flash_drv routines (generated by processor expert of s32ds IDE ), too.
I used the same memory section proposed in the unified bootloader project for the S32K118 but when I try to call FLASH_DRV_Program in order to download the application on the dedicated flash section (start address 0xF000) I'm not able to perform the writing.

Do you have some suggest about it?

Let me know if you think to need any other information about my project.

Thank you so much for your support.

 

Claudio

 

0 Kudos

3,743 Views
y007zzz
Contributor I

@dianabatrlova Hey Diana, i have the same issue, need to install the SDK ARM 2018.R in my Linux machine, is there a workaround?

Thanks!

0 Kudos

4,133 Views
ClaudioB
Contributor II

After compiled a bootloader CAN project, I tryied to use the NxpOpenBus tool but after established the connection with my hw where it is running the bootloader project, I always receive for every uds service that I try to send by the NxpOpenBus tool, the same message of fail...

Do you have some suggest about it?

 

Thank you for your support,

claudio

0 Kudos

4,128 Views
ClaudioB
Contributor II

In attachment the message request and fail answer.

Claudio

0 Kudos

4,185 Views
ClaudioB
Contributor II

Hello Diana,

could you explain me how I have to import the bootloader project for s32k144 (with CAN). I tried to import the project in SDK workspace but when I try to compile the project I have a lot of no-included path errors.

Have I to include the correct path one by one or there is an more friendly way? 

 

Thank you so much for your answer,

Claudio

0 Kudos

4,258 Views
dianabatrlova
NXP TechSupport
NXP TechSupport

Hello,

The SW of the unified bootloader framework can be downloaded here:

https://www.nxp.com/downloads/en/snippets-boot-code-headers-monitors/unified_bootloader_framework.zi... 

It can be downloaded to your target by S32 Design Studio for ARM version 2.2 or 2018.R1:

https://www.nxp.com/design/software/development-software/s32-design-studio-ide/s32-design-studio-for...

I hope it helps.

Best regards,

Diana

0 Kudos

3,994 Views
ganeshvaka2
Contributor II

Hello @dianabatrlova 
we are working on lin Based bootloader for s32k116.as per your Guidelines we are integrated  unified bootloader framework in s32Ds . When receiving the information of the master node as a slave node, it will not enter the callback function and cannot receive the information sent by the host. two。. When receiving information as the master node, if you hit a breakpoint where the callback function receives the PID_OK, and then continue to run, you will no longer enter the callback function. What is the reason for this? Could you take a look at my code for me?
Thank you
Ganesh Babu Vaka

0 Kudos

4,164 Views
ClaudioB
Contributor II

Hello Diana,

Could you helpme to understand how create the bootloader_can project for S32K144 using the S32K1xx_unified_bootloader_demo_V1.0 repository?

 

If I import the s32K144_CAN_bootloader project direcctly in the S32DS SDK I'm not able to compile the project for a lot of paths unsresolved.

I see that inside the folder named s32K144_CAN_bootloader there is a batch file, but if I try to run it (with administrator rights), I receive an error for path not found.

Do you have some suggest about it?

Regards,

Claudio

 

 

 

0 Kudos

4,120 Views
dianabatrlova
NXP TechSupport
NXP TechSupport

Hello Claudio,

 

I would like to add here some points which we already discussed in the support ticket and which helped you to compile the project.

 

I suggest using S32DS for ARM 2018.R1 which includes SDK 2.0.0 S32 Design Studio for Arm 2018.R1 – Windows/Linux

After the installation please, check if the SDK 2.0.0 is available: C:\NXP\S32DS_ARM_v2018.R1\S32DS\S32SDK_S32K14x_RTM_2.0.0

If not, please, install this update: https://community.nxp.com/t5/S32-Design-Studio-Knowledge-Base/S32-Design-Studio-for-ARM-2018-R1-Upda...

 

After that, go to the installation folder of the unified bootloader and follow ReadMe.txt

\S32K1xx\Project\S32DS\S32K144_CAN\S32K144_CAN_bootloader\ReadMe.txt

Then open S32DS for ARM 2018.R1 menu File -> Import -> General -> Existing Files Projects into Workspace

Then you can compile the project without errors. 

 

I hope it helps.

Best regards,

Diana

 

0 Kudos

3,615 Views
sparkee
Contributor V

Is it still the opinion of the company that in order to use the Unified Bootloader we should uninstall the latest version of S32DS that we developed our application on and install a 3-4 year old version of S32DS with an older SDK?

This seems crazy to me.  Has this been resolved and I'm just missing it? 

There's no way my application will work this way.

@dianabatrlova 

Tags (1)

3,995 Views
ganeshvaka2
Contributor II
Hello @dianabatrlova we are working on lin Based bootloader for s32k116.as per your Guidelines we are integrated in s32Ds . When receiving the information of the master node as a slave node, it will not enter the callback function and cannot receive the information sent by the host. two。. When receiving information as the master node, if you hit a breakpoint where the callback function receives the PID_OK, and then continue to run, you will no longer enter the callback function. What is the reason for this? Could you take a look at my code for me? Thank you Ganesh Babu Vaka
0 Kudos