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?

Parents
  • 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. 
Reply
  • 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. 
Children