This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

E300: Identifier not found - <read> 'os_Info': 'osRtxInfo' not found

Hi,

I had a program that was functioning correctly with Keil MDK-Middleware version 7.12 and CMSIS 5.7.0. During debug mode, I could  view and interact with the RTX RTOS window without any issues. However, to incorporate certain functionalities from the Network Component Version 7.19.0, I decided to upgrade to Keil MDK-Middleware version 7.17. While the program continues to operate as intended after the update, I encountered an unexpected error displayed within the RTX RTOS window:

E300: Identifier not found - <read> 'os_Info': 'osRtxInfo' not found

 

And the RTX RTOS window is like this:

I've followed this page (  What does this message mean? osRtxInfo not found ) and updated all files

I deleted the "uvoptx" file from my directory, but none of those steps worked. I then updated my Keil MDK, but the issue worsened with compiler V6. Consequently, I downgraded it to the previous version. However, the same problem persists. What mistake am I making?

  • Here are some hints to find and fix this issue:

    • As the error message E300 says, the µVision debugger cannot find the identifier 'os_Info' and 'osRrxInfo'. These identifiers can only be found when the debug information is present. I get exactly the same error message as you if I un-select the checkbox 'Debug Information' in the µVision dialog 'Options for Target - Output'. So please make sure this option is enabled.
    • From your screen captures I see that you are using RTX5, which implements the CMSIS-RTOS2 API. In your project file list, I see the file cmsis-os1.c. This is the compatibility layer when your application was written for RTX4 (CMSIS-RTOS1 API), but you link RTX5. Is this really necessary? This might confuse the debugger. 
  • Dear Hans Schneebauer,

    I appreciate your help.

    1)The Debug information is checked.

    2) The cmsis-os1.c is added automatically even though I have selected the RTX5.

  • Setting the checkbox CMSIS - RTOS(API) - Keil RTX5 is not necessary when no RTX4 (CMSIS-RTOS1 API) is used. Un-selecting this option should remove the file cmsis-os1.c . Maybe this helps?

    To be sure that the debug information of RTX5 is included in your project (usually this is not necessary), you could select 'Source' instead of 'Library' under RTOS2(API) - Keil RTX5.