I am having ongoing challenges with my prototypes. I am looking for the best tools to monitor and analyze bus traffic. In my design, an RTC (real-time clock) gets programmed by a CPU a couple of times roughly every 24 hours to generate an interrupt signal to “wake up” the CPU again after it has been set to sleep. However, there is an ongoing problem: the command packages are delivered in the correct order, but the programmed time to awaken the CPU is incorrect.
To gain more insight into this issue, I want to do the following:
Based on those requests, which tools do you recommend for this project and could you provide some examples of using those tools?
Response from Technical Support:Thanks for your questions! We recommend using our Beagle I2C/SPI Protocol Analyzer in conjunction with our Data Center Software to observe and record live traffic.
The Beagle I2C/SPI analyzer is a low-cost, effective tool that supports non-intrusive monitoring for the following bus protocols:
† Actual SPI capture performance is dependent on CPU speed and SPI bus throughput. 24 MHz SPI capture has been tested for typical applications (e.g., captures of a few hundred SPI packets). Depending on user configuration, the maximum achievable capture throughput for continuous streaming applications may be less than 24 MHz.
With the GUI interface, you can observe real-time traffic as well as capturing all that data for detailed analysis. Here are some guidelines to help you get started:
Data Center Software captures raw data, which can be filtered after the capture. The data is saved to the RAM of the computer. To optimize memory in your application, there is an option to disable the capture of bit-level timing and just keep whole transfers if needed.
However, assuming the following conditions, you should have no problem capturing 48 hours of traffic:
Two software packages are available that support using the Beagle I2C/SPI analyzer:
For more information about capturing data, refer to this article for capturing and storing data for extended periods and test runs. This example refers to storing SPI data, but the techniques described can be modified for storing I2C data.
There are many blogs and Knowledge Base articles that provide examples of analyzing bus traffic. Here are a few that may be helpful for your specific application. Note – some of these articles were created for SPI data. As previously mentioned, they can all be modified for working with your I2C system.
We hope this answers your questions. Additional resources that you may find helpful include the following:
If you want more information, feel free to contact us with your questions or request a demo that applies to your application.