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.

monitoring system using UIA to check CPU load

Other Parts Discussed in Thread: SYSBIOS

Dear Champ,

My customer is trying to developing 'monitoring system' to check CPU load continually in the field by sending information to server PC.

So, I recommended to UIA to capture data in the target board, and send it to server PC through Ethernet, and open it in the CCS when needed.

in this scenario, my questions are

1. do you think this is realistic scenario?

2. Is it possible to detect UIA data in the server PC if it is mixed with other data? could you please share the example code or how it can be detected?

3. Is there any example code for server PC? LoggerSM is good examples on this? or is there any other example code?

4. How UIA data stored in the server PC? e.g. what is the file format should be used in the server PC(host) storage and open it in CCSv6?

Thanks and Best Regards,

SI.

  • Hi SI,

    Do you know what platform they are using?  They could use UIA and transfer the data over Ethernet.  I have an example that uses Ethernet to upload UIA data to CCS through Ethernet for TivaC, but it will require a new release of UIA (there are some bugs in the latest UIA release that causes my example to crash).

    If they just want CPU load, then UIA might be more than they actually need.  They can use the SYS/BIOS Load module to get the CPU load and send just the CPU load to the PC.  This could be done with sockets or a CGI script.  Here is a link with an example for TivaC you can look at.  The PowerPoint slides go through the steps of adding an HTTP server and CGI script that calls Clock_getTicks().  You could replace Clock_getTicks() with Load_getCPULoad().

    The advantage of the CGI script is you won't need to write code for the server PC.

    Best regards,

        Janet

  • Hi Janet,

    Thanks for this information. this is very helpful.

    Their target platform is C6678, and they want to monitor more than CPU loads.

    I don't find an anything to upload UIA data to CCS through Ethernet in the SYSBIOS HTTP server examples you linked below.

    Do you mean you have another example? if so, Could you please share it?

    If it require new release of UIA, do you have any information when new UIA version will be released?

    Do you think this example can be referenced for C6678 also?

    Thanks and Best Regards,

    SI.

  • Hi SI,

    The HTTP server example was just a way to get around using UIA, if they only wanted CPU load.  If they want the BIOS Log events in addition to CPU load, they will need to use one of the UIA loggers.  They could use LoggerStreamer or LoggerStreamer2 and sockets to transport the data up to the PC.  This does not require any fixes in UIA - the latest version should work fine. Unfortunately, I don't have an example of this.  The (broken) example I have is for TivaC and this wouldn't work for C6678.  You can check the cdoc for LoggerStreamer and LoggerStreamer2 in UIA product.  You may also find some useful information here:

    In particular, check Tutorial 5.  I hope that will be helpful.

    Best regards,

        Janet

  • Hi Janet,

    Thanks for your answers.
    Does HTTP server example can be work on C6678?
    I think it can be a start point although they should try LoggerStreamer later. Actually, I already suggested to refer LoggerStreamer, but they still want to get more realistic examples. So, I would like to suggest to refer HTTP server example also, and need your opinion on this.


    Thanks and Best Regards,
    SI.
  • Hi SI,

    The HTTP server example should work on C6678, since it has Ethernet support.  Do you know what software they are using, mcsdk, ti-rtos?

    Best regards,

        Janet

  • Janet,

    Thanks for the response. They are using MCSDK.
    If it can be run on C6678, it should be work on each core and 8 HTTP server will be run per 1 C6678 device as it has 8 cores, does my understanding right?

    Thanks and Best Regards,
    SI.
  • That sounds right. They will have the NDK and Ethernet drivers they need, so everything should work.
    Best regards,
    Janet