This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Problem with memory code model

Other Parts Discussed in Thread: TIMAC, CC2430, Z-STACK

Hi, i'm developing an application on the TIMAC stack with the IAR Workbench 7.50. When i compile with near code model ( corresponding linker is lnk51ew_cc2430.xcl) everything works. Unfortunally i need more than 64 kb of flash memory so i set the memory code model = banked model. If now i compile i get this error:

Error[e117]: Incompatible runtime models. Module OSAL specifies that '__code_model' must be 'banked', but module mac_beacon has the value 'near'

Instead if i compile the zstack->sampleApplication (always banked model) it works!

I also tried to paste my application inside the Zstack folder but after compiling i always get the same error.

What can i do?

  • Which version of TIMAC are you working with?

  • TI-MAC 1.2.1

    Naturally when i use the banked model i set the linker lnwk51ew_cc2430b.xcl (it's inside the IAR program).

  • The problem you are having with TIMAC-1.2.1 is that it does not have a library that is compiled to support banked-mode. The linker can't use a non-banked library with a banked project. Attempting to use a banked-mode library from Z-Stack in a TIMAC project won't work either since they are compiled with different options.

    Support for banked-mode systems with the CC2430 will be available in the upcoming TIMAC-1.3.0 release.

  • Hi, i supposed something similar. The problem now is that i can't find this release. Can you send me the link? thank you very much

  • The key word in the previous reply was "upcoming". TIMAC-1.3.0 is targeted for for release at the end of June 2009.

  • I am not sure if this is the right place to ask but has anybody implemented a flash write function for CC2430 when using banked code model(TIMAC1.3.0). I now that the sample project attached to TIMAC1.3.0 includes hal_flash.h but where is the c- or asm-code? My point is that I want to write the minimum size of data(32bits) for example to the beginning of the bank3. Write and read functions works when I use non-banked version. Read function works also with banked version. Any advices where to start to solve the problem?