MPC5748G Firmware Upgrade Utility

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

MPC5748G Firmware Upgrade Utility

3,937 Views
sandeepvl
Contributor III

Hi guys, 

I have a DEVKIT - MPC5748G and use S32-DS/OpenSDA combo to program the flash.

Now, I am in search of a simple firmware upgrade utility/mechanism which helps end users to upgrade the firmware in flash via UART, without having to install S32 IDE/tool chain or use any other hardware debug probe.

I read about RAppiD Bootloader  - MPC5748G LIN0 boot .

1. Will this suit my purpose? 

2. To confirm - Is this used to program the MCU MPC5748G and not the OpenSDA controller?

Thanks

Sandeep

16 Replies

2,268 Views
sandeepvl
Contributor III

Hi, 

I tried RAppiD Boot loader on my MPC5748G DEVKIT. But failed to communicate with it.

First I flashed the MPC5748G.rbf using S32 DS via OpenSDA. Then using the RAppID BL Tool, I tried to read MCU memory. But trace window shows that it is not getting response from RBF.

pastedImage_1.png

Do I need to do some thing else to get it working?

Thanks

Sandeep

0 Kudos

2,268 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport
0 Kudos

2,268 Views
sandeepvl
Contributor III

Yes, LINFLEX2 is used in DEVKIT for UART.

To get a clear picture of how the RAppID BL works:

1. MPC5748G.rbf has to be flashed using a JTAG debugger/OpenSDA. This is the RAppID Boot loader.

2. Then using the RAppID BL Tool, the application to be flashed is selected. 

I have confirmed that the .rbf file is flashed correctly and is getting executed on Reset.

MPC5748G.rbf - Is this listening to LINFLEX2 UART all the time? Or does it have a timeout? 

Thanks

Sandeep

0 Kudos

2,268 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

I was told that there's some problem in virtual serial port (OpenSDA firmware) on DEVKIT which is still not resolved. I tested it on DEVKIT and it really doesn't work. It looks like the virtual serial port adds some characters to communication, so it leads to communication error between RBF running on MCU and Rappid bootloader application running on PC.

I'm able to make it working on this EVB board:

Evaluation System for MPC574xB/C/G Family|NXP 

So, the bootloader works but not on the DEVKIT...

Regards,

Lukas

2,268 Views
hugho_keeffe
Contributor I

Hi Lukas,

Is this open-source ? We could add support to RAppID for the the DEVKIT if we had the source

Thanks

Hugh

0 Kudos

2,268 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

Hi Hugh,

as mentioned above, there's no problem with Rappid bootloader, there's problem with OpenSDA. It's not open source.

Lukas

0 Kudos

2,268 Views
sandeepvl
Contributor III

Hi Lukas,

Is there any other way to do the firmware upgrade?

Can we use Serial Boot Loader?

http://www.nxp.com/assets/documents/data/en/application-notes/AN5319.pdf

http://www.nxp.com/assets/documents/data/en/application-notes-software/AN5319SW.zip

The source code is available and perhaps I can modify this to work with DEVKIT.

Can I use the flash driver (c-array_driver) available in the zip file as such, as it is specifically for MPC5748G? 

Awaiting a quick response.

Thanks

Sandeep

0 Kudos

2,268 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

Hi Sandeep,

I do not know the problem in OpenSDA in detail. As far as I know, it adds some unwanted characters to communication. I can try to find out more details next week (engineers who knows more is out of office now).

That means it will affect any serial communication which uses virtual serial port on OpenSDA. If the behavior is predictable, it could be possible to use AN5319. I will tell you more at beginning of the next week.

Regards,

Lukas

0 Kudos

2,268 Views
kfirbs
Contributor III

Are there any updaets regarding the flash update issue with OpenSDA?

I'm having the same issue.

0 Kudos

2,268 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

Hi,

I got information that it has not been fixed yet. We will try to push PEmicro (they developed the firmware) to fix it but I can't promise anything now.

Regards,

Lukas

0 Kudos

2,268 Views
sandeepvl
Contributor III

Hi Lukas, 

Any update on this?

Do you know any other alternative (like RappidBootloader) to update the firmware in flash without using JTAG or other programming tools? 

This is very critical from our perspective. 

I am sure that the issue with serial in Devkit can be solved by the suggestion (Tx has to be pulled up) in MPC5748G Devkit - LinFlex2 UART shows junk charaters .

Can this modification be done in the .rbf file and then give us an update since its source code is not open?

Thanks

Sandeep

0 Kudos

2,268 Views
sandeepvl
Contributor III

Thank you Lukas for the response. I know that there is an issue with the OpenSDA firmware in DEVKIT. I had reported it here - MPC5748G Devkit - LinFlex2 UART shows junk charaters . I did find a solution to get over this issue which was also mentioned in that thread.

Is there any way that you can modify that .rbf file using that hack and try in DEVKIT? It will be so helpful if I can get a reworked version as well. We need a firmware upgrade utility for NXP Devkit and if I can use RAppID BL, it will save a lot of effort.

Thanks

Sandeep

0 Kudos

2,268 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

Hi Sandeep,

there's no problem with RBF file, there's problem with OpenSDA which emulates serial interfaces (UART-2-USB bridge). I was told that we do not provide source codes for Rappid bootloader and also OpenSDA is proprietary code (PEmicro).

Lukas

0 Kudos

2,268 Views
sandeepvl
Contributor III

Hi Lukas, 

To understand its working, I tried the RAppID BL on MPC5748G EVB. I was able to flash a sample application using RAppID BL Tool over UART. Verified the flash memory contents. However, the flashed code is not getting executed on Reset. 

As said in the user manual of RAppID BL, I added the following in sample application:

1. RCHW (@0x00FA0000) is set as 0x005A0000. 

2. Next 4 bytes represent start address of the application.

3. Next 4 bytes represent the delay before boot loader launches application.

4. Next 4 bytes represent the location of application key. The application key (0x55AA55AA) is placed at the end of of program and that address is provided here.

Is there anything missing?

Thanks

Sandeep

0 Kudos

2,268 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

Hi Sandeep,

yes, RAppID bootloader can be used for this purpose.

https://www.nxp.com/webapp/Download?colCode=RAPPID_BOOTLOADER_UTILITY

Yes, it can be used to load new code to MPC5748G. It is not supposed to update the OpenSDA firmware.

Regards,

Lukas

0 Kudos

2,268 Views
sandeepvl
Contributor III

Thanks Lukas for the response. But I am facing an issue which is outlined below.

0 Kudos