RT1176 can't start multi core app created by project wizard

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

RT1176 can't start multi core app created by project wizard

Jump to solution
1,243 Views
ingo77
Contributor II

I use the latest MCUXpresso IDE v11.6.0 [Build 8187] [2022-07-13]

and the evkmimxrt1170

Steps to reproduce

  • Create M4 Slave project first
    • New project
    • Core: cm4, Role M4SLAVE, C++
    • Keep all other settings to default
  • Create M7 Master project
    • New project
    • Core: cm7, Role MASTER, c++
    • On next page, go to Multicore slave project settings
      • Point M4SLAVE project to previous one, keep default link RAM2
    • Keep all other settings to default
  • Compile both projects
  • Start debugging of M7 Master project

In result, the debugger will successfully connect to the M7 Core and place the breakpoint at the first instruction.

Then it tries to start and connect to the debugger to the M4 Core, and fails with the following error

15: Target error from Set break/watch
15: Target error from Set break/watch
HW Execution break may only be set below 0x20000000.
Debugging context: test_M4SLAVE LinkServer Debug

What is the root cause of that?

And if it is due to a wrong setting, would it not make sense that if we have project wizards, that they would correctly setup the projects in the first place?

 

0 Kudos
1 Solution
1,233 Views
ingo77
Contributor II

Ok solving myself....essentially in the new project wizard what you configure on page 1 does not correlate to page 2.

So even you set on page 1 that this is a Master / Slave, still on page 2 it will define a default memory configuration that is not compatible with it.

I have not gone in detail through what was proposed and where the mistake is, just copied the memory configuration from an M4Slave/M7Master SDK example and then it worked.

Would be great if the development team can fix this in the project wizard. If a wizard is there, then the users expectation is that if there are default values given, these default values match with what the user selected.

View solution in original post

3 Replies
1,234 Views
ingo77
Contributor II

Ok solving myself....essentially in the new project wizard what you configure on page 1 does not correlate to page 2.

So even you set on page 1 that this is a Master / Slave, still on page 2 it will define a default memory configuration that is not compatible with it.

I have not gone in detail through what was proposed and where the mistake is, just copied the memory configuration from an M4Slave/M7Master SDK example and then it worked.

Would be great if the development team can fix this in the project wizard. If a wizard is there, then the users expectation is that if there are default values given, these default values match with what the user selected.

1,242 Views
ingo77
Contributor II

I found one thing

  • For M4 Slave need to set "Link application to RAM", in the project wizard, or can set it later in project settings under C++ Linker

Then at least both projects start, but the M4 goes straight into the HardFault_Handler ( I did not configure semihost, but left it to UART as by default ).

So, what more is there to configure to get it to run?

0 Kudos
1,094 Views
yocto1234
Contributor I

I am facing the same issue. Did multi core app with CPP worked for you? Any help is appreciated. 

0 Kudos