BDM Nexus2+ memory access does not work

cancel
Showing results for 
Search instead for 
Did you mean: 

BDM Nexus2+ memory access does not work

557 Views
Contributor II

Dear all,

 

I try to use MPC5748G (silicon version 1N81M) with freemaster version 3.0.2.6 with option "BDM connection Nexus2+ memory access". I use PE micro Multilink Universal FX debugger. I can establish a proper connection to MPC5748G ("Test Connection" reports no problems). But all variables I'm watching returns 0. If I use option "background memory access" everything works as expected. 

Whats wrong here?

Regards

Jörg

0 Kudos
12 Replies

372 Views
NXP Employee
NXP Employee

Hello Jorg,

we have done one more experiment with this evaluation board, and runtime memory access works well over Nexus2+. Is it possible for you to try it with another Power MCU or a different P&E debug probe?

Also, you can try to re-install the FreeMASTER 3.0.2 just to make sure the P&E Micro BDM plug-in is registered properly. 

I'm sorry I have no better answer than "it works on our side"... but it is really the only one for now.

Best regards,

Michal

0 Kudos

372 Views
Contributor II

Dear Michal,

strange that it works at your side...

Forgotten to mention that I'm using DEVKIT-MPC5748G revision B and Multilink Universal FX debugger revision B.

What I habe done in the meantime :

I have installed freemaster on a different computer with the same result with FX debugger: all I'm watching returns 0.

I have also tried OpenSDA connection on both machines but unfortunately also with the same negative result. 

Please give me the addresses of the values you have checked during your test. I will try the same on my side...

Regards

Jörg

0 Kudos

372 Views
NXP TechSupport
NXP TechSupport

Hi Jorg,

let me jump into this thread. I used attached project for my test. It's empty default project, I just added global variable 'counter', which is incremented in endless loop.

I used USB Multilink Rev. A and Multilink Universal FX Rev. A. It's working with both versions on my side.

Regards,

Lukas

0 Kudos

372 Views
Contributor II

Hello Lukas,

thanks for sharing your project. I have done basicly the same test at my side. Nevertheless I have tested with your project but also with same result: variable stays at 0.

If have encountered the following:

I update Multilink firmware with PEFirmwareConfig tool to usbmlfxufjtagens.1018 (should be latest version). 

If I connect to freemaster and test the connection to the targed the firmware is automatically updated from version 10.18 to 10.36.

freemaster2.JPG

But at the end of the update process 10.18 is shown as the new version.

freemaster3.JPG

I could not find a difference in firmware images comming from P&E update tool and the ones provided with freemaster installation. Why is the update started? Could there be somthing wrong with the firmware update? Can you see the same at your side?

The connection test shows this result:

freemaster.JPG

Is BDM version 0.0 correct?

Regards

Jörg

0 Kudos

372 Views
NXP Employee
NXP Employee

Hello Jörg, 

when testing on our side, Lukas also sees BDM version 0.0, so I believe this is correct. The set of P&E firmware files included in FreeMASTER 3.0.2 has been provided by our partners in P&E directly, so I believe it is correct too.

The reason why you see intermediate update to 10.36 is most likely the update of Multilink bootloader (usbmlfxufbootens), later followed by update to Qoriva/PX firmware usbmlfsufjagens to version 10.18.

Just to be sure, you may use the official P&E updater (PEFirmwareConfig.exe) and remove all firmware images from c:\NXP\FreeMASTER 3.0\FreeMASTER\plugins\bdm to prevent any further update. But I do not think this is going to help.

Is it possible for you to test a different Multilink device?

Thank you,

Michal 

0 Kudos

372 Views
Contributor II

Hello Michal,

I removed firmware images but this doesn't change the result. I have installed freemaster version 2.5 on a different machine but also doesn't work. What I have encountered is if I use Nexus2+ and test the connection I can see that the values sometimes changing and also the values are different from the ones which were displayed with background memory access. So I think that's the prove that there is something wrong reading out the values from the 5748G. I have also done a check with freemaster communication log, communication is without failures.

Is it possible to lower the JTAG frequency (via connect string?) just to do some further tests?

Unfortunately I don't have a second Multilink and no other board o give it a try.

Regards

Jörg

0 Kudos

372 Views
NXP Employee
NXP Employee

Dear Jörg, 

I have enabled the JTAG clock speed to be specified when Nexus2+ mode is selected. Please extract the plugin DLL from attached ZIP and replace the existing file in c:\NXP\FreeMASTER 3.0\FreeMASTER\plugins\bdm. The JTAG Clock Speed field should be editable in the new version. Specify value in kHz, it will be internally re-calculated to a divider value N in range 0..31 supported by P&E interfaces (Multilink, Cyclone and Lightning only)

For USB Multilink, the calculation is (the formula is different for Cyclone and Lightning):

   N = (1000 / Clock_kHz) - 1

   Clock_kHz = 1000 / (N+1)

In the old plugin version, the N was set to 2 for USB Multilink. So the JTAG clock was fixed at 333 kHz. I'm really curious if setting a lower values will help in your case.

Thanks,

Michal

pastedImage_1.png

0 Kudos

372 Views
Contributor II

Dear Michal,

unfortunately also this doesn't help.

So now I'm out of ideas for further investigations. I will buy a new board and give it a try. I let you know about the results, but this can take a while. Nevertheless thank you very much for your support...

Regards

Jörg

0 Kudos

372 Views
NXP Employee
NXP Employee

OK Jörg. I'm sorry I could not help. Please let me know as soon as you test the new board.

I'd recommend to use the FreeMASTER over serial line which should work well.

Regards,

Michal

0 Kudos

359 Views
Contributor II

Dear Michal,

in the meantime I have bought a DEVKIT-MPC5748G latest revision. But same result doesn’t work.

So I have contacted PEmiro for help (see https://www.pemicro.com/forums/forum.cfm?forum_topic_id=7410). With ICDPPCNEXUS real-time view its working fine. As suggested by PEmicro could you please check which version of unit_ppcnexus.dll you have used for your tests…

Regards
Jörg

0 Kudos

372 Views
NXP Employee
NXP Employee

Dear Jorg,

my colleague has been able to connect to MPC5748G device using the Nexus2+ mode and he was able to read and write registers properly. His mask set is 0N78S though. I will try to find out if this could make any difference.

Anything new on your side?

Thanks,

Michal

 

0 Kudos

372 Views
NXP Employee
NXP Employee

Dear Jörg,

we are checking this failure internally. Please be patient.

Thank you,

Michal

0 Kudos