Quantcast
Channel: Total Phase Blog
Viewing all 822 articles
Browse latest View live

Support Question of the Week: What Are the Best USB Protocol Analyzers and Software Tools for Extended Periods of Data Capture and Analysis?

$
0
0

I need to analyze USB communication between an Android smartphone and an embedded board that is equipped with an FTDI USB host chip, FT312D. The USB link does not run consistently. The USB communication fails at random times, anywhere from 5 minutes to 24 hours after USB communication starts. To analyze and debug this problem, I need to do the following:

  • Identify the quality of the USB signals over the entire capture session
  • Review a record of the USB communication for at least the last 24 hours

Can you advise which USB protocol analyzers would work best for these requirements?

Thanks for your question! Technically, you can use the BeagleTM USB 12 Protocol Analyzer to capture your USB full speed data. However, we recommend using BeagleTM USB 480 Analyzer or the BeagleTM USB 480 Power Protocol Analyzer. These analyzers are more robust, have additional features, as well as additional buffering to insure there is no data lost over extended periods of analysis and data capture.

Beagle 480 Power Protocol Analyzer for Power Measurements and Extended Periods of Data Capture Figure 1: Beagle 480 Power Protocol Analyzer

The Beagle USB 12 Protocol Analyzer is a non-intrusive monitor for full-speed and low-speed USB (1.5 Mbps/12 Mbps). The Beagle 12 has Real-Time USB Descriptor Parsing, and real-time Data capture and display. The Beagle 12 analyzer can also watch USB packets as they occur on the bus.

The Beagle USB 480 Protocol Analyzer is a non-intrusive monitor for high-speed, full-speed, and low-speed USB 2.0 (480 Mbps / 12 Mbps / 1.5 Mbps). The Beagle 480 analyzer has real-time USB class-level decoding with the Data Center software, two capture modes (real-time and delayed-download), high-speed USB chirp detection, robust automatic speed detection, hardware-based packet suppression, and digital inputs and outputs for synchronizing with external logic. The Beagle 480 analyzer can also detect suspend/resume events and unexpected signals. In addition, the Beagle 480 analyzer has a software circular buffer mode.

The Beagle USB 480 Power Protocol Analyzer – Ultimate Edition is an upgrade version of the Beagle 480 analyzer with enhanced features including: real time current and voltage monitoring, enhanced USB 2.0 advanced triggering,  an extra-large hardware buffer and a hardware circular buffer.

Beagle Software API supports multiple software languages and can be modified for specific user requirements. Figure 2: Beagle API Software

For capturing and storing long periods of data capture, we recommend using the Beagle Software API. For your USB bus analysis, most likely you will need to capture more data than can be stored in the RAM of a computer. With API, you can write a custom code that stores the data in the analysis computer disk instead of the RAM. Many example programs are provided, which you can modify for your specific needs. For information about Beagle Software API, please refer to section 6 of the Beagle Protocol Analyzer User Manual.

When using a USB analyzers with the Data Center Software, the USB Data is stored in the RAM of the computer, which may not provide the storage space you need for your extended periods of data capture and analysis.

For additional information about Protocol Analyzers, Software API and other Total Phase products, please refer to the following documents:

We hope this answers your question. If you have other questions about Total Phase products, feel free to email us at sales@totalphase.com or submit a request for technical support.


Support Question of the Week: How Do I Connect the SPI Host Adapter Signal Pins and Program Unsupported SPI Flash Devices?

$
0
0

I'm trying use the CheetahTM SPI Host Adapter to program Micron SPI flash devices N25Q256A and  N25Q00A. I  have two questions:

  1. Do you currently support programming N25Q256A and N25Q00A?
  2. Listed below is the IO pin list for the N25Q256A13ESF40F. Can you tell me which SPI flash device signal pins to connect to  the Cheetah adapter signal pins?
    • Pin 1: HOLD
    • Pin 7: CS
    • Pin 8: MISO
    • Pin 9: WP
    • Pin 10: GND
    • Pin 15: MOSI
    • Pin 16: SCLK

Thanks for your questions! We currently provide built-in support for programming the N25Q256A SPI Flash with the Cheetah SPI Host Adapter.

Use SPI Software and Cheetah SPI Host Adapter to Program Unsupported Chips Figure 1: Cheetah SPI Host Adapter

Following is a summary of the free software tools that you can use with the Cheetah adapter:

  • The CheetahTM GUI Software provides full access to all Cheetah adapter functionality, and eliminates the need to write custom software to control the adapter.
  • The Flash Center Software can be used to erase, program, and verify SPI based EEPROM and flash memory Chips. It has an XML parts library with built-in support for devices from several manufacturers.
  • The Cheetah Software API is used to control the adapter and to write a custom program for your specifications. The API supports multiple operating systems  (Windows, Linux, and Mac) and programming languages (C, Python, Visual Basic, and C#). Program examples are included. For information about API, please refer to section 5 of the Cheetah Host Adapter User Manual.

Currently, the Flash Center software does not have built-in support for the N25Q00A; it is being developed. To start your project now, you can create a program for your device by creating a new XML part file. The XML parts library is included with the Flash Center package in the parts directory. You can use an existing part file for a similar device and then modify the XML fields to match your device. The various fields, such as the device ID and the timing parameters, are provided in your device's data sheet. For more information about the XML parameters and adding devices, please refer to section 4 of the Flash Center User Manual.

Regarding the signal pins, connect the Cheetah SPI signal pins to the N25Q256A SPI signal  pins as follows:

  • Cheetah pins 2 and 10 (GND) to N25Q256A pin 10 (VSS)
  • Cheetah pin 8 (MOSI) to N25Q256A pin 15 (DQ0)
  • Cheetah pin 5 (MISO) to N25Q256A pin 8 (DQ1)
  • Cheetah pin 7 (SCLK) to N25Q256A pin 16 (C)
  • Cheetah pin 9 (SS1) to N25Q256A pin 7 (S#)

Ensure the following N25Q256A signal pins are properly correctly: pin 9 (W#); pin 1 (Hold); pin 3 (Reset). For details about connecting those three pins, please refer to  the N25Q256A datasheet.

For additional information, please refer to the following documents:

We hope this answers your question. If you have other questions about our host adapters or other Total Phase products, feel free to email us at sales@totalphase.com or submit a request for technical support.

Support Question of the Week: Which SPI Host Adapter is Best for Simulating a MCU When a Programmed Delay is Needed Between Bytes?

$
0
0

I am looking to use an SPI host adapter as a master to simulate a MCU (multipoint control unit) for an application - this MCU in the design phase. Another existing MCU will be used as the SPI slave. In this simulation, I need to send an 8-byte message on one slave select. The first byte will always be the message ID, which the microcontroller needs to process to determine how to respond to the remaining 7 bytes. For this project, I need to insert a delay between the first byte and the second byte. The required delay is 150μs. Which host adapter do you recommend?

Thanks for your question! We have two devices that can operate as a simulator: The Aardvark I2C/SPI Host Adapter and the Cheetah SPI Host Adapter. For your system requirements, we recommend the Cheetah SPI Host Adapter, a high-speed SPI adapter that can communicate over SPI at up to 40+ MHz. You can insert User Insertable Delays from 0.8 tclk to 2^32 tclk between bytes, using the Cheetah GUI software, or the API. For details about the Cheetah adapter SPI characteristics, please refer to section 2.5.1 of the Cheetah Host Adapter User Manual.

User Insertable Delay for SPI Data Transfers Figure 1: Cheetah SPI Byte-Level Timing

You can control the delay using the Cheetah GUI Software and the Cheetah Software API. For additional information about the Cheetah GUI SPI transactions, please refer to our knowledgeable article Writing and Reading from SPI Flash Using Cheetah adapter and Cheetah GUI. For details about using Cheetah API, please refer to section 5 of the Cheetah Host Adapter User Manual.

To use the Cheetah API to send SPI data across the bus at high speed, commands are accumulated in a queue until a call is made to batch shift all of the queued commands. Following is an example of a command queue sequence for a typical SPI transaction:

  1. Clear the command queue: call ch_spi_queue_clear.
  2. Enable the Cheetah devices outputs on the SPI bus: call ch_spi_queue_oe.
  3. Enable the slave select signal: call ch_spi_queue_ss.
  4. Queue data to send across the SPI bus: Call ch_spi_queue_byte and ch_spi_queue_array.
  5. Disable the slave select signal: call ch_spi_queue_ss.
    Optionally, disable the outputs of the Cheetah device: call ch_spi_queue_oe.
  6. Send the accumulated commands across the SPI bus: Call ch_spi_batch_shift.

For additional information about the Cheetah API SPI transactions, please refer to section 5.5.1 of the Cheetah Host Adapter User Manual.

For additional information, please refer to the following documents:

We hope this answers your question. If you have other questions about our host adapters or other Total Phase products, feel free to email us at sales@totalphase.com or submit a request for technical support.

Support Question of the Week: How Do I Support Reading 16-Bit SPI Data Samples at Higher Frequencies with an SPI Host Adapter?

$
0
0

I am trying to sample IMU (inertial measurement unit, M-G362PDC1 by Epson) data at 100 Hz but my setup misses some of the 16-bit SPI data samples.  Here’s my setup:

  • I am using a MacBook as the host and the AardvarkTM I2C/SPI Host Adapter is connected for SPI communication between the computer and the IMU. The Aardvark is the master; the IMU is the slave and is powered by USB.
  • The MacBook is running the Data CenterTM Software and I am using Aardvark Software API. The Aardvark interrupts the MacBook when DRDY signal is asserted. Pin1 of Aardvark is used as GPIO interrupt.
  • The output data rate for IMU is 1000 samples per second. I should get six samples per read but I only receive four. I am reading two bytes at a time.
  • The data samples I receive are correct, but some data samples are missing. At lower frequencies it works fine, there is no sample missing issue - but at higher frequencies I do have this problem.

Looking at section 3.8.4 of the AardvarkTM Host Adapter User Manual, it looks like samples are missing because of USB scheduling delays. What can I change in the setup to read all the SPI data samples at the higher frequencies?

Thanks for your question! For your application, we recommend using the CheetahTM SPI Host Adapter. The preliminary Epson IMU that you are using sends 16-bit data without any clock delay. However, the Aardvark adapter requires some delay (td 7 to 9us) after 8-bit data as described in section 2.4 of the Aardvark adapter manual. Therefore, the IMU does not provide the required SPI signaling characteristics to the Aardvark adapter. The Aardvark adapter is a general purpose device, that can actively communicate on the bus, and provides master and slave capability along with I2C/SPI features. The Aardvark adapter can transfer up to 8 bits of data without td delay. The Aardvark can not transfer 16-bit data without a td delay.

Use SPI Software and Cheetah SPI Host Adapter to Program Unsupported Chips Figure 1: Cheetah SPI Host Adapter

The Cheetah adapter actively communicates on the bus, operates at high speeds up to 50 MHz, can provide gapless shifting, and provides control over the timing of the data that is shifted out. The Cheetah adapter can send multiples of 8- and 16-bit data without requiring a delay. For additional information, please refer to section 2.5 of the Cheetah Host Adapter User Manual.

For an example of using the Cheetah adapter to read/write to the IMU, please refer to Writing and Reading from SPI Flash Using Cheetah Adapter and Cheetah GUI. You will need to modify the instructions according to the IMU datasheet.

Regarding the API code, it will need to be converted from Aardvark Software API code to Cheetah Software API code.

For additional information, please refer to the following documents:

We hope this answers your question. If you have other questions about our host adapters or other Total Phase products, feel free to email us at sales@totalphase.com or submit a request for technical support.

Support Question of the Week: How Can I Quickly and Program SPI Memory Devices With an SPI Host Adapter?

$
0
0

I will be using the Aardvark host adapter to program a series of SPI memory devices. This is a high volume project - what is the fastest and easiest way I can do this?

Thanks for your question! The AardvarkTM I2C/SPI Host Adapter is often used to program SPI memory devices.  For your application, we recommend using the Aardvark adapter with the Flash CenterTM Software, With one click, you can erase, program, and verify an entire device, including EEPROM and SPI flash memory.Following is an example for programming a SPI flash memory device and then reading back the data. In this example, the Aardvark adapter is the SPI master and the SPI Flash Demo Board, which has an ST Micro SPI Flash M25P32 device, is the SPI slave. You can modify this example for your devices. For details, please refer to our knowledge base article Programming SPI Flash Using Aardvark Adapter and Flash Center.

Note: The CheetahTM SPI Host Adapter can also be used, especially to support faster programming requirements; in this example the Aardvark adapter is used.

Initial Set Up:

  1. Download and run the latest version of the Total Phase USB Drivers Installer.
  2. Download and unzip the latest version of the Flash Center Software.
  3. Connect the Aardvark adapter to the computer via the USB connector.
  4. Connect the Aardvark adapter to the SPI Flash Demo board via the I2C/SPI connector.
  5. Launch the Flash Center Software.
  6. Connect the Aardvark adapter to the Flash Center Software:
    • Click Adapters > Add Adapters.
    • Select the Aardvark adapter.
    • Click Add to connect to the adapter.
  7. Enable Target Power.
  8. Click Operations > Choose Target and choose M25P32.
  9. Configure Bit Rate to 8 MHz.
  10. Read the memory device:
    • Click Operations > Read Target.
Flash Center Software shows results of the Aardvark I2C/SPI Host Adapter reading the M25P32 Device Figure 1: Aardvark I2C/SPI Host Adapter Reads the M25P32 Device

Program and Read the M25P32 device:

  1. Click Operations > Program + Verify > Click OK.
  2. Click Operations > Read Target. See Figure 2.
Flash Center Software shows the results of the Aardvark Adapter programming and reading the device Figure 2: Aardvark Adapter Programs and Reads the M25P32

For additional information, please refer to the following documents:

If you have other questions about our host adapters or other Total Phase products, feel free to email us at sales@totalphase.com or submit a request for technical support.

Support Question of the Week: How Do I Use the Komodo CAN Interface to View Retried Transmissions on the CAN Bus?

$
0
0

I just purchased the KomodoTM CAN Interface and I need to count the number of retried transmissions on the CAN bus. How can I do that? Please advise.

Thanks for your question! The Komodo CAN Interface monitors the CAN bus for traffic that is sent by the Komodo, as well as the traffic that is successfully sent by other devices. The retried transmissions that can be monitored are the transmissions that were initiated by the Komodo interface. These retried transmissions can be viewed on the Data CenterTM Software. Transmissions that failed from other devices on the CAN bus are not monitored; retries from other devices are not seen by the Komodo interface. Regarding data transmissions from other devices, the Komodo interface can only view the transmissions that are successful.

Using the Komodo interface with the Data Center Software, the overall count of retries from the Komodo analyzer can be monitored. You can filter the data to show only the packets that were delivered from a specific Komodo ID. To see how this works, you can run the example of viewing arbitration that is provided on the Data Center Software, as described below:

Using the Komodo interface with the Data Center Software, the overall count of retries from the Komodo analyzer can be monitored. You can filter the data to show only the packets that were delivered from a specific Komodo ID. To see how this works, you can run the example of viewing arbitration is provided on the Data Center Software, as described below:

  1. Launch the Data Center Software
  2. Click File, click Examples, choose can-activity-board.tdc from the drop menu and then click OK.
    • Case Examples are provided in Data Center Software Figure 1: How to Select a Data Center Software Case Example
  3. Click the Bus tab (at the bottom right of the Data Center Software screen).
  4. In the Navigator window under Description, expand CAN Bus A, right click Device (029), and then choose Filter: Show Only. Only the information about the selected Komodo channel A ID 029 will be displayed.
  5.  In the Navigator window under Description, click CAN Bus A. Information will then be displayed under Statistics.
  6. Scroll down to Arbitration Losses. The data in the Visible column shows the Arbitration Losses in Komodo channel A ID 029.  Note - in the example file, the result of the Arbitration Losses is zero.
View CAN bus arbitration losses on Data Center Software. Figure 2: Arbitration Losses: Number of Retries

For more information, please refer to the following documents:

We hope this answers your question. If you have other questions about our CAN Interfaces, Host Adapters or other Total Phase products, feel free to email us at sales@totalphase.com or submit a request for technical support.

Support Question of the Week: How Can a GPIO Interface be Created for the Cheetah SPI Host Adapter to Control the Reset Signal and Pulse Periods?

$
0
0

I am using the CheetahTM SPI Host Adapter and would like to use it to program an SPI device. To set this device to programming mode, I need to do the following:

  1. At power on, set the Reset pin, and set the SCK pin for low for 4.7msec
  2. Afterwards, send a 4-bye command

The Cheetah adapter does not have GPIOs - how do I control that signal? Also, how do I send the command?

Thanks for your question! Using the Cheetah adapter, you can set the target device reset pin and the SCK pin to low for 4.7ms when you power on the device, and then sent a 4-bypte command. Although the Cheetah adapter does not have a GPIO pin, it does have three SS (SPI slave select) output signals. You can select one of the SS signals to control the reset line of your target device, and to pull the signal low for your required 4.7 ms pulse period. You can also use tud, user insertable delay, to program the desired length of the pulse period. For information about tud, timing, and other SPI signal characteristics, please refer to section 2.5 of the Cheetah SPI Host Adapter User Manual.

Use API Software and Cheetah SPI Host Adapter  SS Signal Pins to Create GPIO Figure 1: Cheetah SPI Host Adapter

For controlling the signals, you can use the Cheetah Software API. With API, commands are accumulated in a queue until a call is submitted to batch shift all of the queued commands. Following is an example of a command queue for a typical SPI transaction.

  1. Clear the command queue: call ch_spi_queue_clear.
  2. Enable the Cheetah devices outputs on the SPI bus: call ch_spi_queue_oe.
  3. Enable the slave select signal: call ch_spi_queue_ss.
  4. Queue data to send across the SPI bus: Call ch_spi_queue_byte and ch_spi_queue_array.
  5. Disable the slave select signal: call ch_spi_queue_ss.
  6. Optionally, disable the outputs of the Cheetah device: call ch_spi_queue_oe.
  7. Send the accumulated commands across the SPI bus: Call ch_spi_batch_shift.The SPI signals (SS, MISO, MOSI and SCLK) will be toggled as called in the accumulated commands.

Note:  the command queue is not cleared after it has been executed, which allows the same queue to be executed many times without having to re-enter the commands. To clear a command, call ch_spi_queue_clear. For more details about the API software, please refer to section 5 of the Cheetah SPI Host Adapter User Manual.

For more information, please refer to the following documents:

We hope this answers your question. If you have other questions about our host adapters or other Total Phase products, feel free to email us at sales@totalphase.com or submit a request for technical support.

Support Question of the Week: Using the Aardvark I2C/SPI Host Adapter, How Can I Configure the Flash Center Software Parameters to Program SPI EEPROM Devices?

$
0
0

I have multiple AardvarkTM I2C/SPI Host Adapters and I plan to use them for a production flow; programming SPI EEPROMs (Microchip 93AA56AT-I/OT). It looks like this device is not supported by Flash Center Software. Also, to program this device, it looks like polarity needs to be set as "active high". Can you send me information about editing SS polarity for this device?

Thanks for your question! In a recent update of the Flash CenterTM Software, for greater flexibility to support more devices, programming parameters were added. One parameter, spiSSPolarity, can be used for programming the SS polarity: it is a Boolean parameter that sets the output polarity of the SS line. For details, please refer to section 4.3.6 of the Flash Center Software User Manual.

Flash Center Software can be customized to create you part files. Figure 1: Flash Center Software

Currently, the Flash Center Software does not provide built-in support for the Microchip 93AA56AT SPI EEPROM device. However, the Flash Center Software does provide built-in support for a similar device, the Catalyst CAT93C56, 8-bit mode. With that information, we recommend programming the Microchip 93AA56A as described below.

Programming Microchip 93AA56A

Connect the Microchip 93AA56A ORG pin to ground. This will configure the device to function in the 8-bit mode.

  1. In the most current Flash Center Software, choose the device CAT93C56.
  2. Perform the read and program & verify operations on your Microchip 93AA56A with the Aardvark host adapter.

The Flash Center application is written using standard APIs, which you can use as is or you can customize to create a program for your specifications, such as your own part file. The Aardvark Software API supports multiple operating systems  (Windows, Linux, and Mac) and programming languages (C, Python, Visual Basic, and C#). Program examples are included. For information about adding part files and about API, please refer to section 4  and section 5 of the Aardvark Host Adapter User Manual, respectively.

For additional information, please refer to the following documents:

We hope this answers your question. If you have other questions about our host adapters or other Total Phase products, feel free to email us at sales@totalphase.com or submit a request for technical support.


Support Question of the Week: To Save Board Space and Not Include a Connector on the PCB, How Should I Connect the Beagle USB Protocol Analyzer?

$
0
0

I am working on a new design that will be installed in a system. To do so, I need to save board space. My target USB bus is inside of an embedded system. To analyze and verify the results, I'll need to tap off the lines to monitor the USB bus. To use the Beagle USB 480 Protocol Analyzer, I think I'll only need to wire in GND and the D+/D- signal pair - is that correct?

Thanks for your question! Section 3.1 of the Beagle Protocol Analyzer User Manual describes the four main architectures for connecting devices to the Beagle analyzer.

Beagle USB Protocol Analyzer Connections Figure 1: Beagle USB Protocol Analyzer Connections

As the system that you will be analyzing is embedded, the architecture to use is probably (d), as shown above in Figure 1. You are correct that GND and the D+/D- signals are needed. The D+/D- signal path of a USB does not have to be broken to be monitored by a Beagle USB protocol analyzer. The VBUS, GND, D+, and D- lines can be connected to either the Type A or Type B connector on the Beagle analyzer using "T" connections.

The method of connecting the analyzer to the embedded bus will vary depending on the accessibility of the signals on the target system. You may need to cut open a USB cable to attach the wires to the target system.

If the signal lines are easily accessible through a header or test pads, then connecting to it should be straightforward. If the signals are not easily accessible, the wires may need to be soldered directly to IC pins or to traces on the printed circuit board. Extreme caution of this is required; note that Total Phase cannot be held responsible if equipment is damaged from such activities.

Following are some of the factors to consider when monitoring an embedded USB:

  • How to connect to the signal lines
  • Ensuring signal integrity between the target device and the Beagle USB analyzer
  • Ensuring 5V is present on the VBUS so that the Beagle USB analyzer recognizes the presence of the host

For details about connecting the Beagle USB analyzer, please refer to the knowledge base article Monitoring an embedded USB with a Beagle USB Protocol Analyzer.

For more information, please refer to the following documents:

We hope this answers your question. If you have other questions about our host adapters or other Total Phase products, feel free to email us at sales@totalphase.com or submit a request for technical support.

Support Question of the Week: How do I Control the SPI Slave Responses from an Aardvark I2C/SPI Host Adapter that is in SPI Slave Mode?

$
0
0

I am using the Aardvark I2C/SPI Host Adapter in the SPI Slave mode. How can I specify multiple responses for the Aardvark to return, such that each packet returns a different response?

To provide some background, the delay between bytes in my application is short enough that the Aardvark adapter can only echo what is reads from MOSI after the first byte. MOSI is not connected to the SPI master, so I have tied the MOSI and MISO signals together with a 1K resistor. I have no control over the timing of SCLK or the timing between packets. The timing is too fast for a typical computer to change the response in real-time.

Thanks for the question! The Aardvark adapter, along with the Control Center Software can store one response to any packet, as a slave.  The response cannot be changed on the fly, so to change the data that the Aardvark adapter slave sends, the Aardvark adapter's set response must be set to a different value each time. For example, for the Aardvark adapter to send AA in the first read, BB in the second read, and CC in the third read:

  1. Set the first slave response with AA and then execute the first master read.
  2. Set the second slave response with BB and then execute the second master read.
  3. Set the third slave response with CC and then execute the third master read.

The following is an example of how that can be done. Please note this example uses an Aardvark I2C/SPI Host Adapter, the Control Center Software and the Total Phase SPI Flash Demo Board. If necessary, the SPI Flash Demo Board can be substituted with an off-the-shelf SPI slave device.

Control Center Software can be used to control the response of an Aardvark I2C/SPI Host Adapter in SPI Slave mode Figure 1: Control Center Software - SPI Slave Mode
  1. Ensure the most current USB drivers and version of the Control Center Software are installed.
  2. Verify the setup by writing and reading to the SPI flash device (M25P32) that is on the SPI Flash Demo Board. For these instructions, please refer to the knowledge base article Writing and Reading from SPI Flash Using Aardvark Adapter and Control Center.
  3. In the following example, commands are sent to the slave device to set its response. For details about using the Control Center Software, please refer to the Control Center Software User Manual.
    1. Send A B C D from the SPI master device.
    2. Set the Aardvark SPI slave Response to 1 2 3 4.
    3. Receive from the SPI master device. Verify the SPI slave device sends 1 2 3 4 to the SPI master device.
    4. Send  E F G H from the SPI master device; the SPI master device then sends E F G H to SPI slave device.
    5. Set the Aardvark SPI slave Response to 5 6 7 8.
    6. Receive from the SPI master device. Verify the SPI slave device sends 5 6 7 8 to the SPI master device.

For additional information, please refer to the following documents:

We hope this answers your question. If you have other questions about our host adapters or other Total Phase products, feel free to email us at sales@totalphase.com or submit a request for technical support. 

Support Question of the Week: How Do I Clear the Saturated Buffer When Using the Komodo CAN Duo Interface?

$
0
0

I am using a Komodo CAN Duo Interface with the LabVIEW software and Komodo LabView Drivers (VI). I write a packet, and when I read the bus, the packet I am looking for has already been sent by the other node - I miss reading it. The loop works fine for two iterations before this fault occurs.

This behavior suggests a buffer is overloaded and needs to be cleared. How do I clear the buffer?

Thanks for the question! There is buffering within the Komodo DLL, on a per-device basis, which helps capture asynchronous messages. For example, in the case of the Komodo interface receiving CAN messages asynchronously:

  • If the application calls the function to change the state of a GPIO while unprocessed asynchronous messages are pending, the Komodo interface will modify the GPIO pin but will also save any pending CAN messages internally.
  • The messages are then held until the appropriate API function is called.

For more information please refer to section 3.8.1 of the Komodo Interface User Manual.

GUI Interface for Komodo LabVIEW Drivers Figure 1: Komodo LabVIEW Drivers

Here is an overview about buffering:
The Komodo CAN Duo Interface can be configured as an active CAN node or as a passive monitor. A CAN channel can receive messages asynchronously with respect to the host computer software. Between the calls to the Komodo API, these messages must be buffered in memory. This is accomplished by the operating system of the computer host. The size of this buffer is limited; when this buffer is full, bytes of data are dropped.

An overflow can occur when the Komodo device receives asynchronous messages faster than the rate that they are processed - the receive link is "saturated". This condition can affect other synchronous communication with the Komodo interface.

Solutions to clear a saturated receiving buffer:
There are two methods to address a saturated buffer.

  • One option is to reduce the amount of traffic that is sent by all CAN nodes between calls to the Komodo API. This requires the ability to reconfigure the offending CAN device(s).
  • The other option is to poll the CAN channel to collect pending messages more frequently. For more information, please refer to section 3.8.2 of the Komodo Interface User Manual.

Detect a filled Komodo buffer:
The Komodo has a limited buffer for buffering CAN packets and CAN events. If this buffer is filled, the Komodo interface will not report new packets or events and it will stop transmitted packets on the CAN bus. This can be detected by seeing a KM_READ_END_OF_CAPTURE in the status field of the km_can_info_t struct from the km_can_read function. Also, in this scenario the CAN write functions will return with an error code of KM_CAN_SEND_FAIL.

To decrease the possibility of buffer saturation, the following steps can be taken:

  • Ensure the CAN bus is properly terminated; otherwise the Komodo is saturated with CAN errors.
  • Use only one port on the Komodo device.
  • Use only one CAN channel on the Komodo device.
  • Use a lower CAN bitrate.

For more information about CAN API functions, please refer to section 5.6.1 of the Komodo Interface User Manual.

For additional information, please refer to the following:

Komodo Interface User Manual
Total Phase Products
Product Selector Guide

We hope this answers your question. If you have other questions about our host adapters or other Total Phase products, feel free to email us at sales@totalphase.com or submit a request for technical support.

 

 

Support Question of the Week: With a USB Protocol Analyzer, What is the Fastest and Most Accurate Way to Capture USB 2.0 Bus Data for a Sales Transaction?

$
0
0

I need to capture USB 2.0 bus data between a scanner and computer. The information is scanned from a coupon, and then OCR (optical character recognition) is applied to identify the information on that coupon - the amount to deduct from the purchase price. Currently, the process is slow and the result of the scan is not always accurate - the coupon often needs to be rescanned before the sale can be completed. In addition, the scanned information needs to be saved so that it can be printed on the purchase receipt. The file will be rewritten - that information does not need to be permanently saved after it is printed on the receipt and the sales transaction is completed.

Can you recommend which USB protocol analyzer to apply for this project? This is a large project - we will be updating 100 systems in our stores.

Also, which software applications do you recommend? I understand an “expression” can be set to start the reading., and then take the 50 next characters and save the data in a file. To make the sales transactions more efficient, I need the data in real-time.

Thanks for your questions! For your application, we recommend the Beagle USB 480 Protocol Analyzer, which is a robust non-intrusive device. It can monitor high-speed, full-speed, and low-Speed USB 2.0 (480 Mbps / 12 Mbps / 1.5 Mbps). The Beagle 480 has Real-Time USB class-level decoding with the Data Center Software, two capture modes (real-time and delayed-download), high-speed USB chirp detection, robust automatic speed detection, hardware-based packet suppression, and digital inputs and outputs for synchronizing with external logic. The Beagle 480 analyzer can also detect suspend/resume events and unexpected signals.

Using the USB 480 Protocol Analyzer to capture USB 2.0 bus data Figure 1: Beagle USB 480 Protocol Analyzer

You can capture USB 2.0 data with the Beagle 480 analyzer using the Data Center Software and the Beagle Software API.

  • The Data Center Software is a bus monitoring software application that displays captured USB bus data in true real-time through the Beagle analyzer. This eliminates the need to write custom software to control the analyzer. You can export the captured USB 2.0 Bus data to a CSV format file or to save it to a tdc file.
  • The Beagle Software API is used to control the analyzer, and to write a custom program for your defined specifications. API comes with support for multiple OS (Windows, Linux, and Mac) and multiple languages (C, Python, Visual Basic, and C#), and includes examples. We recommend using the Python bindings as it is a simple language, and a good option for scripting. For details about API functions, please refer to section 6 of the Beagle Protocol Analyzer User Manual.

For additional information, please refer to the following documents:

We hope this answers your questions. If you have other questions about our USB protocol analyzers or other Total Phase products, feel free to email us at sales@totalphase.com or submit a request for technical support.

Support Question of the Week: How Can I Use one Cheetah SPI Host Adapter to Control SPI Devices with Different Bitrates and Command Lengths?

$
0
0

I have two different SPI devices and I need to transmit two different command settings. Because of the separate SS (slave select) signal pins, it looks like the Cheetah host adapter should work with this:

  • Using the Cheetah SPI Host Adapter for the SPI Interface. The two SPI devices that I intend to control with the Cheetah adapter have different command lengths, which will be transmitted simultaneously:
    • SS1 requires a 72-bit command
    • SS2 requires a 24-bit command
  • Using the Aardvark I2C/SPI Host Adapter to control the I2C interface
  • Operate all devices from the same computer

Is the selection of adapters correct? Also, can you recommend how to configure this setup for the SPI commands?

Thanks for your questions! Both the Cheetah SPI and Aardvark I2C/SPI Host Adapters can be run from the same computer. They will require separate software connections, but there will be no issues using the same computer. Based on the setup that you described, the Cheetah and Aardvark adapters are appropriate for your application.

Regarding SPI transfer rates, you can transfer SPI data with the Cheetah adapter using the Cheetah GUI Software, the Flash Center Software or the Cheetah Software API. Following is a summary of what each software application provides:

Use Cheetah SPI Host Adapter and Software to Control SPI Devices with Different Bitrates and Command Lengths Figure 1: Cheetah SPI Host Adapter

 

  • The Cheetah GUI Software provides full access to all Cheetah adapter functionality, and eliminates the need to write custom software to control the adapter.
  • The Flash Center Software provides mechanism to quickly erase, program, and verify SPI based EEPROM and flash memory Chips. It has extensible XML parts library with built-in support for EEPROMs and serial flash chips from major manufacturers.
  • The Cheetah Software API is used to control the adapter, and to write a custom program to achieve the user goals. The API comes with support for multiple OS (Windows, Linux, and Mac) and multiple languages (C, Python, Net, and C#), and includes examples. We recommend using the Python bindings as it is a simple language, and a good option for scripting.

For your SPI data requirements, we recommend using two separate Cheetah SPI Host adapters with two Cheetah GUI Software instances, one for each Cheetah Adapter, which can be on the same computer.  One Cheetah adapter with Cheetah GUI (or Cheetah API) can send one SPI slave a packet of one specified  length and bitrate. In the same time, the second Cheetah adapter can send the second SPI slave a packet with the other specified packet length and bitrate. A summary follows:

  1. Connect each Cheetah adapter to one Cheetah GUI instance.
  2. Configure Cheetah GUI-1 to the appropriate SS signal, packet size, and bitrate (SS1, 72 bit packet size).
  3. Configure Cheetah GUI-2 to the appropriate SS signal, packet size, and bitrate (SS2, 24 bit packet).

For additional information about using the Cheetah adapter with the Cheetah GUI Software, please refer to the knowledge base article Writing and Reading from SPI Flash Using Cheetah Adapter and Cheetah GUI.

For additional information, please refer to the following documents:

We hope this answers your questions. If you have other questions about our Host Adapters or other Total Phase products, feel free to email us at sales@totalphase.com or submit a request for technical support. 

Support Question of the Week: How Do I Communicate to the Komodo CAN Duo Interface with a Graphical IDE other than LabVIEW?

$
0
0

I am trying to communicate to the Komodo CAN Duo Interface device using the Keysight VEE software - a graphical IDE that is similar to National Instrument's LabVIEW. VEE cannot import in "enum" types. There is a Komodo LabVIEW Driver for the Komodo devices and VEE is similar to LabVIEW . My question - can Komodo software be modified to work with the VEE software? How can I do that?

Thanks for your question! We do not officially support Agilent VEE because we do not have this environment in our lab. However, Keysight VEE can interface with any standard C DLL. Because of that, you can use our komodo.dll and bind to the functions within it. The guidelines are as follows:

  • You can use komodo.dll and bind to the functions within it.
  • You will need to use komodo.dll, but you will not need to use komodo.c and komodo.h.
  • You will not need to change the following files: komodo.dll, komodo.h, komodo.c.
Komodo CAN Interface can be used with many applications Figure 1: Komodo CAN Duo Interface

There is one caveat. When you follow the Keysight VEE instructions on how to interface to C DLLs and you want to call to a Komodo Software API function, you need to add the prefix “c_” to the Komodo API. For example, to call to the Komodo function km_open, you first add the prefix "c_" and then call to c_km_open. For additional information about Komodo Software API functions, please refer to section 5 of the Komodo Interface User Manual. Also, please refer to the documentation from Agilent VEE for information about how to interface to C DLLs.

For additional information, please refer to the following documents:

We hope this answers your question. If you have other questions about our protocol analyzers and other Total Phase products, feel free to email us at sales@totalphase.com or submit a request for technical support. 

Support Question of the Week: How do I Configure the Cheetah SPI Host Adapter For a Half-Duplex 3-wire SPI Slave Device?

$
0
0

I plan to use the Cheetah SPI Host Adapter for a half-duplex 3-wire SPI slave device. Can the Cheetah adapter be configured to interface with a 3-wire SPI? Is there anything special I would need to do?

Thanks for your question! The Cheetah SPI Host Adapter can be used with 3-wire SPI slave devices. Although it refers to the Aardvark I2C/SPI Host Adapter, you can follow the instructions in the knowledge base article Interfacing with 3-wire SPI. Following is the information that applies to your question.

A normal SPI interface consists of four signals: clock (SCLK), slave select (!SS or !CS), master input/slave output (MISO), and master output/slave input (MOSI). As SPI is a full-duplex device, it will have separate pins for input data and output data. A half-duplex is similar to the true SPI, but one pin is used for I/O (input and output). To configured the host adapter, insert a 10k resistor between the MOSI signal and the MISO signal, and then connect the MISO line to the data line of the SPI slave device. The example below shows connecting the Aardvark adapter to a National LM74 device - this configuration can also be used for the Cheetah host adapter and other half-duplex SPI devices.

Connecting a Full-Duplex Host SPI Adapter to a Half-Duplex SPI Device Figure 1: Connect a Full-Duplex Host SPI Adapter to a Half-Duplex Device

When the slave is driving MISO, the SPI host adapter's readings will not be disturbed by the state of the MOSI line. If the system uses 5.0V as a logical high, then a maximum current of 0.5mA will flow through the resistor.

When the slave's data line is configured as an input, the voltage levels for MOSI and MISO will be essentially the same - there will be a small voltage drop across the resistor because the high-impedance slave sinks a small amount of current.

As the Cheetah SPI Host Adapter is designed to be used with a full-duplex SPI device, you will need to set up the bytes to be transmitted correctly. An example program is available that interfaces the Aardvark host adapter to the National LM74 - read and write data to the device. You can modify the program for the specifications of your setup and the SPI device that you will be using.

For information about software API commands used in the example program, please refer to section 5 of the Aardvark Adapter User Manual. For information about the software commands to use with the Cheetah adapter, please refer to section 5 of the Cheetah Adapter User Manual.

For additional information, please refer to following documents:

We hope this answers your question. If you have other questions about our Host Adapters or other Total Phase products, feel free to email us at sales@totalphase.com or submit a request for technical support.


Support Question of the Week: How Can I Use the Cheetah SPI Host Adapters to Control SPI Devices with Different Bitrates and Command Lengths?

$
0
0

I have two different SPI devices and I need to transmit two different command settings. Because of the separate SS (slave select) signal pins, it looks like the Cheetah host adapter should work with this:

  • Using the Cheetah SPI Host Adapter for the SPI Interface. The two SPI devices that I intend to control with the Cheetah adapter have different command lengths, which will be transmitted simultaneously:
    • SS1 requires a 72-bit command
    • SS2 requires a 24-bit command
  • Using the Aardvark I2C/SPI Host Adapter to control the I2C interface
  • Operate all devices from the same computer

Is the selection of adapters correct? Also, can you recommend how to configure this setup for the SPI commands?

Thanks for your questions! Both the Cheetah SPI and Aardvark I2C/SPI Host Adapters can be run from the same computer. They will require separate software connections, but there will be no issues using the same computer. Based on the setup that you described, the Cheetah and Aardvark adapters are appropriate for your application.

Regarding SPI transfer rates, you can transfer SPI data with the Cheetah adapter using the Cheetah GUI Software, the Flash Center Software or the Cheetah Software API. Following is a summary of what each software application provides:

Use Cheetah SPI Host Adapter and Software to Control SPI Devices with Different Bitrates and Command Lengths Figure 1: Cheetah SPI Host Adapter

 

  • The Cheetah GUI Software provides full access to all Cheetah adapter functionality, and eliminates the need to write custom software to control the adapter.
  • The Flash Center Software provides mechanism to quickly erase, program, and verify SPI based EEPROM and flash memory Chips. It has extensible XML parts library with built-in support for EEPROMs and serial flash chips from major manufacturers.
  • The Cheetah Software API is used to control the adapter, and to write a custom program to achieve the user goals. The API comes with support for multiple OS (Windows, Linux, and Mac) and multiple languages (C, Python, Net, and C#), and includes examples. We recommend using the Python bindings as it is a simple language, and a good option for scripting.

For your SPI data requirements, we recommend using two separate Cheetah SPI Host adapters with two Cheetah GUI Software instances, one for each Cheetah Adapter, which can be on the same computer.  One Cheetah adapter with Cheetah GUI (or Cheetah API) can send one SPI slave a packet of one specified  length and bitrate. In the same time, the second Cheetah adapter can send the second SPI slave a packet with the other specified packet length and bitrate. A summary follows:

  1. Connect each Cheetah adapter to one Cheetah GUI instance.
  2. Configure Cheetah GUI-1 to the appropriate SS signal, packet size, and bitrate (SS1, 72 bit packet size).
  3. Configure Cheetah GUI-2 to the appropriate SS signal, packet size, and bitrate (SS2, 24 bit packet).

For additional information about using the Cheetah adapter with the Cheetah GUI Software, please refer to the knowledge base article Writing and Reading from SPI Flash Using Cheetah Adapter and Cheetah GUI.

For additional information, please refer to the following documents:

We hope this answers your questions. If you have other questions about our Host Adapters or other Total Phase products, feel free to email us at sales@totalphase.com or submit a request for technical support. 

Support Question of the Week: How Can I Use a Single SPI Host Adapter to Control SPI Devices with Different Bitrates and Command Lengths?

$
0
0

I have two different SPI devices and I need to transmit two different command settings. Because of the separate SS (slave select) signal pins, it looks like a Cheetah host adapter should work with this.
The two SPI devices that I intend to control with the Cheetah adapter have different command lengths:

  • SS1 requires a 72-bit command
  • SS2 requires a 24-bit command

The commands will be transmitted one after another, not in parallel. How can I configure this?

Thanks for your question! Having three separate SS signals, the Cheetah SPI Host Adapter can control up to three separate SPI devices Regarding SPI transfer rates, you can transfer SPI data with the Cheetah adapter using the Cheetah GUI Software, the Flash Center Software or the Cheetah Software API.

Use Cheetah SPI Host Adapter and Software to Control SPI Devices with Different Bitrates and Command Lengths Figure 1: Cheetah SPI Host Adapter

Following is a summary of the advantages of each software application:

  • The Cheetah GUI Software provides full access to all Cheetah adapter functionality, and eliminates the need to write custom software to control the adapter.
  • The Flash Center Software provides mechanism to quickly erase, program, and verify SPI based EEPROM and flash memory Chips. It has extensible XML parts library with built-in support for EEPROMs and serial flash chips from major manufacturers.
  • The Cheetah Software API is used to control the adapter, and to write a custom program to achieve the user goals. The API comes with support for multiple OS (Windows, Linux, and Mac) and multiple languages (C, Python, Net, and C#), and includes examples. We recommend using the Python bindings as it is a simple language, and a good option for scripting.

Using one Cheetah GUI, you use (one Cheetah GUI or Cheetah API) instance to connect to the one Cheetah SPI Host Adapter and to the two SPI slave devices.

  1. For the first transmission, the Cheetah adapter (with Cheetah GUI or Cheetah API) can send the first SPI slave a command using a specified packet length with bitrate.
  2. For the second transmission, the Cheetah adapter can send the second SPI slave a command using a different specified packet length and bitrate.

The guidelines are as follows:

  1. Connect the Cheetah adapter to one Cheetah GUI instance.
  2. Configure Cheetah GUI for the appropriate SS signal for the devices: packet size and bitrate
    • SS1, 72 bit packet size
    • SS2, 24 bit packet

For additional information about using the Cheetah adapter with the Cheetah GUI Software, please refer to the knowledge base article Writing and Reading from SPI Flash Using Cheetah Adapter and Cheetah GUI.

For additional information, please refer to the following documents:

Support Question of the Week: How Can I Make Third Party Open Source Software Work with the Komodo CAN Duo Interface?

$
0
0

I am developing an interface for a planter that is connected to a tractor with a display monitor via CAN bus. For the agricultural industry, I found an open source program (ISOAgLib) that could work with for this, but that program was created for a different device. We already have and use the Komodo interfaces - can I use the Komodo API to have this program connect with the Komodo CAN Duo Interface?

Thanks for your question! We provide USB drivers, Komodo Software API and a shared library, which can used to interface third party software to communicate with the Komodo interface. The Komodo Software API and the shared library for C, C#, Python, .NET, VB.NET, VB6. Drivers and the Komodo Software API can be downloaded for free.

Komodo API Software can be used to run third party software with the Komodo protocol analyzer Figure 1: Komodo CAN Duo Interface

Using our API, you should be able to have the Komodo interface communicate with your 3rd party software.

  • The Komodo Software API is used to control the Komodo interface and to write a custom program that supports your specification. The API comes with support for multiple OS (Windows, Linux, and Mac) and multiple languages (C, Python, Visual Basic, and C#), and includes example programs. We recommend using the Python bindings as it is a simple language and is a good option for scripting. For additional information about the API, please refer to section 5 of the Komodo Interface User Manual.

Other software applications are available:

  • The Komodo GUI Software provides full access to all Komodo interface functionality, and eliminates the need to write custom software to control the Komodo interface. It has 3 operation modes: General CAN, Activity board, and Batch.
  • The Data Center Software is a bus monitoring software application that displays captured I2C, SPI, USB, and CAN bus data in true real-time through the Komodo CAN interface as well as the Beagle protocol analyzer.

For more information, please refer to the following documents:

We hope this answers your question. If you have other questions about our protocol analyzers or other Total Phase products, feel free to email us at sales@totalphase.com or submit a request for technical support.

 

Support Question of the Week: Did You Know You Can Batch Program I2C Memory Devices With the Aardvark I2C/SPI Host Adapter and Total Phase Software?

$
0
0

You can batch program devices using the Aardvark I2C/SPI Host Adapter and any of the following applications: the Control Center Software, the Flash Center Software or the Aardvark Software API. Following is a summary of the example provided in our latest knowledge base article, Programming I2C EEPROM using Aardvark Adapter and Control Center Batch Mode. With some modification, this example be used for programming other devices.

This setup of this example:

  • The Aardvark adapter as the I2C master
  •  The AT24C02 I2C EEPROM as the slave device. In this setup, the EEPROM is part of the I2C/SPI Activity Board.
  • The Control Center Software installed on a computer
  • Writing data to the slave device will be followed by reading the data

Initial Configuration
The Aardvark provides the I2C pull-ups and target power to the memory device on the Activity board. The batch command for this configuration will be as follows:

<configure i2c="1" spi="1" gpio="0" tpower="1" pullups="1">

  • I2C mode: i2c="1" spi="1" gpio="0"
  • Enable target power: tpower="1"
  • Enable I2C pullups: pullups="1"

Writing and Reading to the Device
For the AT24C02 memory device, the write operation will be Page Write and the read operation will be Sequential read.

Write
The default I2C target address is 0x50. For Page Write, AT24C02 requires a 7-bit device address, one byte memory address, and two or more bytes of memory data. For information about programming a 7-bit device, please refer to the knowledge base article 7-bit, 8-bit, and 10-bit I2C Slave Addressing.

In this example, the commands for writing 256 bites will be as shown below. Note - this example represents the first and last i2c_write commands used for writing 256 bytes of data.

<i2c_write addr="0x50" count="2" radix="16">00 00</i2c_write>
<i2c_write addr="0x50" count="2" radix="16">FF FF</i2c_write>

Read
The AT240C Sequential Read operation uses two commands: i2c_write following by i2c_read. In this example, the read commands will be as follows:

<i2c_write addr="0x50" count="1" radix="16" nostop="1">00</i2c_write>
<i2c_read addr="0x50" count="256"/>

About the write command parameters:

  • Device address: addr="0x50"
  • Number of data bytes: count="1"
  • Data format: radix="16"
  • Memory address: 0x00
  • No stop: nostop="1"

About the read command parameters:

  • Device address: addr="0x50"
  • Number of data bytes: count="256"

Writing to the Device Using Batch Mode:

  1. Connect the Aardvark adapter to the computers via the USB connector.
  2. Connect the Aardvark adapter to the I2C/SPI activity board via the I2C/SPI connector.
  3. Launch the Control Center and connect to the Aardvark adapter:
    1. Click Configure Aardvark Adapter.
    2. Select the Aardvark Adapter.
    3. Click OK to connect to the adapter.
  4. Click Aardvark  and then choose Batch Mode.
  5. Write to the memory
    1. Click Load and then choose i2c-eeprom-write.
    2. Click Open and then Execute.
Aardvark Adapter Reads 256 Bytes From AT24C02 Figure 2: Aardvark Adapter Reads 256 Bytes From AT24C02

Reading from the Device Using Batch Mode:

  1. Click Load and then select i2c-eeprom-read.
  2. Click Open, and then Execute.
Aardvark Adapter Reads 256 Bytes From AT24C02 Figure 2: Aardvark Adapter Reads 256 Bytes From AT24C02

For more information, please refer to the following documents:

If you have questions about our host adapters or other Total Phase products, feel free to email us at sales@totalphase.com or submit a request for technical support.

Support Question of the Week: How Do I Configure Conditions for a USB Protocol Analyzer to Capture Data and Stop when Errors Occur?

$
0
0

I plan to run a design verification tests (DVT) for long periods. For part of the DVT, I'll need to continue running the test and capture data as errors occur. For another part of the DVT, I'll need to capture data and stop running the test when an error occurs. Which USB protocol analyzer do you recommend, and how can I run and capture the data as described?

Thanks for your question! Both the Beagle USB 5000 Protocol Analyzer and the Beagle USB 480 Power Protocol Analyzer have the ability to trigger on errors during a long-term capture. They can be set up to capture data and run continuously or to start a capture when a certain trigger event occurs, such an error. Using the Data Center Software with these protocol analyzers, you can analyze and capture all data, set up a trigger for your event of interest only, run firmware validation, bring up new USB devices, as well as other features for capturing and analyzing data.

There are two methods for trapping an error over an extended capture period:

  • Capture all data and search for the error(s) in the log - this method will require a large amount of storage.
  • Use the Complex Match feature to set up a trigger and only log the traffic around the trigger.

To use Complex Match, first set up a trigger condition and then start the capture. The Beagle USB Protocol Analyzer will then run in a “pre-trigger” mode until the trigger condition is met. During the pre-trigger mode, the protocol analyzer captures traffic in a circular buffer and retains only the most recent records. The amount of data that can be saved is determined by the on-board memory buffer you set aside for that purpose.

Once the trigger condition is met, the Data Center Software will download the data in the pre-trigger buffer. You can configure the device to continue to continue running or to stop almost immediately. There are two ways to continue running the capture:

  • Continue capturing data - it will stop when all the storage space is filled.
  • Program the analyzer to loop while filtering out most of the packets, which simulates a stop. The advantage of this approach is that you can capture indefinitely while looking for the error. Note - this method is limited to configuring one trigger condition for a capture - you can define a very detailed trigger condition.  An example of using Complex Match to configure a trigger is shown below in Figure 1.
Using Data Center Software option of Complex Match to set up a trigger Figure 1: Data Center Software showing Complex Match

 

  • The Data Center Software can display cumulative errors, which is accessed by using the Statistics Tab of the Navigator pane. In this case, the display shows both the gross and the breakdown of errors are displayed, as well as other information.
  • You can narrow the scope of the statistics by selecting the various levels in the bus tree in the Navigator screen. The statistics are live while a capture is running, as shown below in Figure 2.
Selecting data for viewing Figure 2: Data Center Software Panes

 

  • The LiveFilter feature can be used to display only the errors in the Transaction Window, as shown below in Figure 3.
 Data Center Software Errors Only Transaction Window Figure 3: Data Center Software Errors Only Transaction Window

For information about errors that could be viewed it the Transaction log error column, please refer to section 6.6, Table 7 of the Data Center Software User Manual.

For information about errors what could be viewed when using the Complex Match feature, please refer to section 6.3.10, Figure 57 of the Data Center Software User Manual.

For additional information, please refer to the following documents:

If you have other questions about our analyzers or other Total Phase products, feel free to email us at sales@totalphase.com  or submit a request for technical support.

 

 

 

Viewing all 822 articles
Browse latest View live