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

Which SPI Host Adapter Works Best to Interface with an MCU Device for High Speed Framing with DMA Enabled?

$
0
0

Question from the Customer:

I am interfacing a TI MCU (TM4C129x series) with the Aardvark SPI/I2C Host Adapter configured to slave mode. The MCU is sending 10 bytes consecutively out its SPI port in a single frame forming a single message (slave select signal is asserted for the entire 10 byte frame). The clock rate is 2 MHz.

I have observed that the Aardvark adapter is dropping some of these bytes. Looking at the Aardvark User Manual, I see there is a 4 us delay between each byte in a frame. Is there any way around this?

Also, I don't see a way to insert a delay in the output stream from the MCU without disabling DMA, which I need for this setup, as well as the high speed framing.

Can the Cheetah SPI Host Adapter meet these timing requirements - receive 8-byte messages without any delays between bytes?

Response from Technical Support:

Thanks for your questions!  For your application, we recommend the Promira Serial Platform with the SPI Active -Level 1 Application.  In SPI slave mode, the Promira platform can send multiple SPI bytes without delay in one transaction when SS is asserted for the entire transaction.  The Aardvark adapter’s slave speed will not meet your requirement and the Cheetah adapter functions as a SPI master only.

The SPI signaling diagram and bullet points below compares the setup timing of the Promira platform and the Aardvark adapter and may help shed some light on the subject:

SPI Byte Waveform for SS, MOSI and MISO signals Figure 1: SPI Byte Timing (td is setup time)

 

  • For the Promira platform, the SPI slave setup time is 0 μs.
  • For the Aardvark adapter, the SPI slave setup time is 7-9 μs.

Since the Promira platform has 0 set up time, it will be able to receive all the bytes in the entire SPI frame. For more information about the Promira platform SPI signal characteristics, please refer to section 6.2.1 of the Promira Serial Platform User Manual. For more information about the Aardvark adapter SPI signal characteristics, please refer to section 2.4 of the Aardvark I2C/SPI Host Adapter User Manual.

The Promira platform is an advanced serial device. In addition to meeting your timing specifications, the Promira platform supports:

  • High speed master/slave programming, up to 1 MHz I2C and 12.5 MHz SPI
  • Level shifting 0.9 V – 3.3 V
  • USB 2.0/Ethernet connectivity

The features of the Promira platform are expandable - applications can be downloaded. Today, both I2C Active - Level 1 and SPI Active – Level 1 applications are available.  Additional applications for the Promira platform are scheduled to be released within the next quarter. New features will include higher I2C and SPI speeds, quad and dual I/O, and additional protocols.

Additional resources that you may find helpful include the following:

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 if you already own one of our devices and have a technical question, please submit a request for technical support.


Easily Program SPI Flash Devices Using the Promira Serial Platform with Flash Center Software

$
0
0

The Promira™ Serial Platform with the SPI Active - Level 1 Application is the perfect tool to program SPI memory devices. Together, with the Flash Center Software, makes programming EEPROM and SPI flash devices as easy as  one click, allowing you to erase, program, and verify an entire device.

Flash Center Software can be used with the Aardvark I2C/SPI Host Adapter Figure 1: Flash Center Software

Before programming a memory device with the Promira platform ,it’s helpful to understand the different operations provided by Flash Center Software. There are three programming modes: Program + Verify, Program; Program; and Program (No Erase). Additionally, Flash Center offers Read Device, Verify, and Erase operations. Following is a summary of these modes:

  • Program + Verify - Writes data to one or more attached memory devices and then reads back the data to verify it for correctness. If the device is an SPI Flash, an erase cycle will be performed first. The erase will cover only those sectors, which will be written.
  • Program - Writes data to the device, but does not perform the verification step. If the device is an SPI Flash, an erase cycle will be performed first, with the same caveats as Program + Verify.
  • Program (No Erase) - A special mode for SPI Flash devices. It writes data to the device, but does not perform an erase cycle. This is useful if multiple memory images are to be programmed to the device. verification step.
  • Read Device - Reads the contents of the selected device and replaces it in the current contents in the data buffer.
  • Verify - Verifies the contents of the selected devices against the contents of the data buffer.
  • Erase - Allows the user to erase the entire memory device or allows the erasure of portion of it. For partial erasure, users can specify the start addresses and length in the erase parameters dialog as either a decimal value or as a hexadecimal value.

In addition to easy-to-use commands with an extensive XML-based library, the Flash Center Software directly supports programming a large number of I2C and SPI devices. This built-in support is regularly updated, and the files can be customized for special I2C or SPI devices that are not directly supported.

Want to learn more? This knowledge base article, Programming an SPI Flash Using the Promira Serial Platform and the Flash Center Software, provides examples of how easy it is to program an SPI flash and view the results through the Flash Center Software panel.

Use Flash Center Software GUI Panel and Promira Serial Platform to program write/read SPI flash memory devices. Figure 2: Flash Center Software GUI Panel

Additional resources that you may find helpful include the following:

If you have questions about our Promira Serial Platform or other Total Phase products, feel free to email us at sales@totalphase.com, or if you already own one of our devices and have a technical question, please submit a request for technical support.

 

Can I use the Aardvark I2C/SPI Host Adapter with a Linux Kernel Driver-based System for I2C Operations?

$
0
0

Question from the Customer:

We need to develop a Linux kernel driver (.ko) for an Intel-based system and want to be able to read/write I2C messages. Is this possible, and if so, what devices and software do you have that can support this project?

Response from Technical Support:

Thanks for your question! There are two devices available for use with your system. You can use the Aardvark I2C/SPI Host Adapter or the Promira Serial Platform and both come with Linux-compatible software APIs. The Aardvark adapter supports I2C up to 800 kHz and SPI up to 8 MHz, while the Promira platform is faster, and supports I2C up to 1 MHz and SPI up to 12.5 MHz.  The Promira platform also has integrated level shifting from 0/9 – 3.3V, Ethernet connectivity, and the ability to scale with upcoming software features.  The APIs support a variety of languages (C, Python, Visual Basic, C#) and allow you the flexibility to create a customized program to interface with your system. You can also read/write I2C data with both devices using our GUIs: the Control Center Serial software and Flash Center software.

Aardvark I2C/SPI Host Adapter Figure 1: Aardvark I2C/SPI Host Adapter
Promira Serial Platform Figure 2: Promira Serial Platform

The following is a summary of the our software applications that you can use with the Aardvark adapter and the Promira platform.

  • The Aardvark and Promira Software APIs are used to control the Aardvark adapter and the Promira platform respectively, as well as to write custom programs specific for your system and test requirements.  The APIs come with support for multiple OS including Linux, Windows and Mac and multiple languages like C, Python, Visual Basic, and C#. The software API package includes example programs, which you can used as is or modify to meet your specifications.
  • The Control Center Serial Software provides full access to all Aardvark adapter and Promira platform functionality, and eliminates the need to write custom software to control the Aardvark adapter. It has also a batch scripting capability with the Aardvark XML Batch Script Language.
  • The Flash Center Software provides a mechanism to quickly erase, program, and verify I2C and SPI based EEPROM and flash memory chips. This package includes an extensible XML parts library with built-in support for EEPROMs and serial flash chips from major chip manufacturers.

Here are some additional resources that you may find helpful include the following:

 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 if you already own one of our devices and have a technical question, please submit a request for technical support.

Easily Program I2C Memory Devices and Provide Low Voltage Level Power to the Target Device with the Promira Serial Platform and Control Center Serial Software

$
0
0

With the Promira Serial Platform and the I2C Active - Level 1 Application, you can easily program I2C memory devices as well as provide signal voltage and power at the desired low voltage level to the target device: the Promira platform has integrated level shifting and does not require a separate Level Shifter Board.

Promira Serial Platform for I2C and SPI devices Figure 1: Promira Serial Platform

There are several ways to to program memory devices with the Promira Platform. The Control Center Serial Software, Flash Center Software, or Promira API Software make this task easy. Following are guidelines for using the Promira platform with Control Center Serial Software to supply low voltage level power to an I2C EEPROM and read and write data to a memory chip. For a more detailed example with complete instructions, please refer to the knowledge base article, Programming an I2C EEPROM Using the Promira Serial Platform and the Control Center Serial Software. This example uses an EEPROM Socket Board - 10/34; you can modify the instructions for other setups.

Note: For the read and write commands, refer to the datasheet of the selected I2C memory device.

  1. Connect the Promira platform over USB to the computer. For the pin-out of the Promira platform, please refer to section 2.1 of the Promira Serial Platform User Manual.
  2. Configure the Ethernet over the USB interface. For details, please refer to section 3.2 of the Promira Serial Platform User Manual.
  3. Connect the Promira platform I2C/SPI connector to the EEPROM device.
  4. Launch the Control Center Serial Software.
  5. Connect the Control Center Serial Software to the Promira platform.
  6. Click Adapter, and choose I2C+SPI.
  7. Click Adapter, enable I2C Pulls-Ups, disable Target Power, enable IO Power, and configure Level Shift to 1.8V.
  8. Configure the adapter as an I2C Master using the I2C Control panel, and then use the write/read commands.
  9. In the Message area (see the figure below), write the data 0A 0B 0C to the memory address 00 08 of the device.
  10. Read 0A 0B 0C from the device in memory address 00 08. You can view the read results in the Transaction area as shown in the figure below.
Read/Write I2C Memory Devices with the Promira Serial Platform and Control Center Serial Software Figure 2: Read/Write I2C Memory Devices with the Promira Serial Platform and Control Center Serial Software

Additional resources that you may find helpful include the following:

If you have questions about our Promira Serial Platform or other Total Phase products, feel free to email us at sales@totalphase.com, or if you already own one of our devices and have a technical question, please submit a request for technical support.

Which Host Adapter and Software Can I Use to Program SPI Flash Dual Die Parts?

$
0
0

Question from the Customer:

I am designing a system that uses a 1Gbit SPI-Flash (Spansion S70FL01GS). This is a dual-die part. We have used the Aardvark I2C/SPI Host Adapter and Flash Center Software program SPI flash devices and have been happy with the results. How can we handle a dual die part? Does Total Phase have an adapter and a software package that supports the additional slave select (SS) pin?

Response from Technical Support:

Thanks for your question! For your project, we recommend using the Cheetah SPI Host Adapter, which has three SS pins (the Aardvark adapter has one SS pin) and can operate at 40+ MHz on the SPI bus.

Cheetah SPI Host Adapter Figure 1: Cheetah SPI Host Adapter

Because the Flash Center Software supports one SS signal and programming dual die requires two SSs, we recommend using the Cheetah API Software. The Cheetah API will allow you to create a custom program for your exact specifications. The Cheetah API is provided with support for multiple operating systems, (Windows, Linux, and Mac) and programming languages (C, Python, Net, and C#), and includes program samples that can be used as is or modified for your setup.

For information about API software, please refer to section 5 of the Cheetah Host Adapter User Manual.

 

Figure 1: Figure 2: Cheetah SPI Host Adapter Supports Multiple SPI Slave Devices

Additional resources that you may find helpful include the following:

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 if you already own one of our devices and have a technical question, please submit a request for technical support.

How to Use the Promira Serial Platform and Queuing to Read, Write and Evaluate I2C Peripherals at Faster Speeds

$
0
0

Question from the Customer:

We have been using the Aardvark I2C/SPI Host Adapter to evaluate and test I2C peripherals.  We write data to the slaves, read it back, and then evaluate the data to determine the next operation. We are currently running these write and reads at 800 kHz but would like to go to 1 MHz.  We would also like to utilize transaction queuing so that we can run our tests at faster speeds. Can this be done and what are your recommendations?

Response from Technical Support:

Thanks for your question! You can certainly run these commands and manage data at higher speeds We recommend using the Promira Serial Platform with the I2C Active – Level 1 Application. You can achieve I2C speeds up to 1 MHz and use the Promira Software API to queue commands. Example API programs are available and include one for sending queued I2C data.

Promira Serial Platform for I2C and SPI devices Figure 1: Promira Serial Platform

Here is a summary of queuing commands and collecting data using the Promira platform with API:
The maximum of the num_bytes parameter is 65,535 bytes per Promira API I2C read/write function: ps_i2C_write, ps_queue_i2c_write, ps_i2c_read, ps_queue_i2c_read.

  • ps_i2c_write
    writes a stream of bytes to the I2C slave device.
  • ps_i2c_read function is read a stream of bytes from the I2C slave device.

You can create up to 127 different queues containing up to 255 commands / functions each. Queues can be submitted multiple times, asynchronously. This is an important feature for your setup, as separate queues will be needed to 1) write and read the data, and 2) evaluate the captured data.

  • ps_queue_i2c_write is a queue that writes a stream of bytes to the I2C slave device.
  • ps_queue_i2c_read is a queue command that reads a stream of bytes from the I2C slave device.

The internal Promira buffer can collect up to 2 Mbytes of data.

For more information about the Promira I2C queue mechanism, please refer to section 5.5.3 of the Promira Serial Platform User Manual and please reference section 5.6. for information about the I2C interface.

More information about our new Promira Serial Platform is available in the following documentation:

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

How Can I Accelerate Sending SPI Data with the High Speed Cheetah SPI Host Adapter?

$
0
0

Question from the Customer:

I am sending 5 bytes of SPI data using  the Cheetah SPI Host Adapter, and Cheetah Python API. It takes  about 210 ms to send this data, how do I reduce the programming time?

Response from Technical Support:

Thanks for your question!  To reduce the programming time, we recommend using the Cheetah adapter and utilizing the async functions in the API, which can be queued.

Cheetah SPI Host Adapter Figure 1: Cheetah SPI Host Adapter

Here is a summary of the features of the Cheetah adapter:

  • Operates at up to 50 MHz, can provide gapless shifting, and provides control over the timing of the data that is shifted out
  • Can send multiple transactions of 8-bit data without delay
  • Uses a high-speed USB to link between to the computer
  • Provides an asynchronous interface, which increases the operational speed for your application

Total Phase offers Cheetah API Software, which includes examples that can be used as-,is or customized for your system specification. The API supports multiple operating systems (32-bit and 64-bit Windows, MAC and Linux) and provides a shared library for multiple programming languages (C, C#, Python, .NET, VB.NET, and VB6).

One of the ways to increase the speed of your Cheetah adapter is to use the async functions and queuing available through the API. Refer to section 5.5 of the Cheetah SPI Host Adapter User Manual for instructions on how to use these features.

For details about the Cheetah SPI signaling characteristics, please refer to section 2.5 of the Cheetah adapter User Manual.

A timing diagram of the SPI Host Adapter SPI Signaling Characteristics. Figure 2: Cheetah SPI Host Adapter Parameters

Alternatively, the Promira Serial Platform with the SPI Active – Level 1 application offers the speeds and functionality you desire. The Promira platform is an advanced serial device with multiple applications available to support active communication on the bus, high speed programming up to 1 MHz for I2C and 12.5 MHz for SPI, level shifting from 0.9 V – 3.3 V, and USB 2.0/Ethernet connectivity.

 

 

How to Choose Which Beagle USB Protocol Analyzer is Best for Your USB 2.0 and USB 3.0 Projects

$
0
0

The product, test and validations have been defined, the budget approved and the project is scheduled. The next question - which hardware and software tools will best support your project to monitor, capture and analyze the data on the USB 2.0 and/or USB 3.0 bus?

To make a well informed decision, we suggest you ask and answer the following:

  • What kind of measurements do you need?
  • Which software applications save you time and capture the data that you need? Do they operate in real-time? Is the setup fast and easy?
  • What is the long-term value?

You can find answers to these questions in our USB Protocol Analyzer Product Guide , but we are going to make it easier for you.

What kind of measurements do you need?
Overall, Total Phase Beagle analyzers support USB 2.0 downlinks and provide real-time data display, analysis and statistics.

  • For analyzing USB 2.0 and 3.0 (up to 5 Gbps), look into the Beagle 5000 series of protocol analyzers.

 

Beagle USB 5000 v2 SuperSpeed Protocol Analyzer - Ultimate Edition Beagle USB 5000 v2 SuperSpeed Protocol Analyzer - Standard Edition Beagle USB 5000 v2 Protocol Analyzer - USB 2.0 Edition 
 Beagle5000_200  Beagle5000_200 Beagle5000_200
Monitor USB 2.0 and 3.0 simultaneously, up to 5000 Mbs Monitor USB 2.0 and 3.0 up to 5000 Mbs Monitor USB 2.0 up to 5000 Mbs, upgradeable to USB 3.0

 

  • For USB 2.0 only, we suggest the Beagle USB 480 series of analyzers.
  • For the addition of voltage and current measurements, look into the Beagle USB 480 Power Protocol Analyzer.
  • For a lower-cost and low- and full-speed USB analysis, consider the Beagle USB 12 analyzer.

 

Beagle USB 480 Power Protocol Analyzer - Standard Edition Beagle USB 480 Protocol Analyzer Beagle USB 12 Protocol Analyzer
 beagle-480-power-std  beagle480std_200  Beagle USB 12
Monitor USB 2.0 up to 480 Mbs plus voltage and current measurements Monitor USB 2.0 at sustained 480 Mbps bursts with 17 ns resolution and a 64 MB internal buffer Low-cost, monitor USB 2.0 up to 12 Mbps with 21 ns resolution

 

Which software applications save you time and capture the data that you need? Do they operate in real-time? Is the setup fast and easy?

  • The Data Center Software is an easy-to-use free application to trigger, capture, filter and display real-time measurements. Examples of how to use this tool are provided in the software, as well as informative videos and knowledge base articles .

Detailed examples for debugging are also provided in an testimonial by Colin O’Flynn, Quit wasting time debugging USB: Using Total Phase Triggers.

 

Data Center Software Interface with Beagle Protocol Analyzer Figure 1: Data Center Software Interface

 

  • For customized software, you can use the royalty-free Beagle Software API, which supports multiple platforms (Windows, Linux and Mac) and software languages, and comes with program examples that you can use “out of the box” or customize as needed.

What is the long-term value? In addition to the value of fulfilling current requirements, Total Phase provides continuous customer support, and software upgrades.

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 if you already own one of our devices and have a technical question, please submit a request for technical support.


What are the Options to Batch and Store CAN Messages with the Komodo CAN Solo/Duo Interface?

$
0
0

Question from the Customer:

I am using a Komodo CAN interface. Is there a way to access data from CAN messages from the batch script, not just sending messages? Also, how can I store the received CAN messages in a file?

Response from Technical Support:

Thanks for the questions! Total Phase offers two options for sending and receiving CAN data with a Komodo CAN Solo/Duo Interface -  the Komodo GUI Software or the Komodo Software API, both of which are Windows, Linux, and Mac OS X compatible and available as free downloads.

Komodo CAN Solo Interface  Komodo CAN Duo Interface
Fig 1: Komodo CAN Solo Interface Fig 2: Komodo CAN Duo Interface

When using the Komodo GUI in batch mode, you can send and receive CAN data and then export the transaction log to a csv file. The Komodo GUI supports many other features, including periodic messaging and configuring the GPIO interface. For more information about the available features, please refer to section 3 of the Komodo GUI Software User Manual.  

Export Data from Komodo GUI Figure 3: Export Data from Komodo GUI

The Komodo Software API is a more flexible option for an engineers who wants create their own custom applications.  The API provides example programs that can be used as is or customized to meet your requirements. In your case, to save the data in a separate file, you will need to customize the API. The Komodo API supports multiple operating systems (Windows, Linux, and Mac) as well as multiple languages (C, Python, Net, and C#). It also includes program examples, following is a list of those provided with the Komodo API:

  • detect: Detect Komodo devices attached to the system.
  • async: Uses the asynchronous interface to send packets on CAN channel A.
  • gpio: Performs simple GPIO operations with a Komodo interface, including monitoring the pins for voltage changes.
  • monitor: Monitors CAN bus and GPIO activity. This program prints out timestamps, status messages, errors messages, and data.
  • request: Requests data from specified CAN ID and prints the received data.
  • loopback: Demonstrates how to open ports, acquire features, write and read data. This example connects CAN channels A and B together with a properly-terminated cable. Please note, this example applies only to CAN Duo interfaces.

For additional information about the Komodo API, please refer to section 5 of the Komodo CAN Interface User Manual.

Additional resources that you may find helpful include:

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

 

 

 

 

What are the Best Tools for talking to 4 MHz SPI Devices with Shorter Timing Setups?

$
0
0

Question from the Customer:

I am attempting to monitor my 4 MHz SPI application with 16-bit transfers with a slave device. I have been using the Aardvark I2C/SPI Host Adapter with the Control Center Software. When using the slave mode, data will begin to slow and then the tool "locks up" after short periods of time. In taking a close look at the timing of the SPI devices under test, there appears to be a timing conflict with the Aardvark adapter. The timing (td) between the start of the bytes is 2-5 us. However, the setup time for the Aardvark is 4 us.

Looking at the Total Phase products, I seem to have some options - which device or devices do you recommend for this project?

Response from Technical Support:

Thanks for the question! As a slave in SPI mode, the timing setup of the Aardvark I2C/SPI Host Adapter does require 4 us between bytes, which is not compatible with the 2-5 us delay.  Our latest device, the Promira Serial Platform, will meet your SPI timing requirements.

Promira Serial Platform for I2C and SPI devices Figure 1: Promira Serial Platform

With the current SPI Active - Level 1 Application, the Promira platform supports active communication on the bus, in addition it offers:

  • Built-in level shifting 0.9 V – 3.3 V
  • A total of 200 mA of power to the target devices
  • USB 2.0, USB 2.0 over Ethernet and Ethernet connectivity.
  • Slave programming up to 8 MHz
  • Master programming up to 12.5 MHz

For more information about the Promira's timing parameters, please refer to section 6.2 of the Promira Serial Platform User Manual. For more aggressive requirements, new, more powerful applications will become available Q2 this year - which will be easy to access, as the Promira platform is field upgradeable.

Aside from active devices like the Aardvark adapter and Promira platform, you might find our protocol analyzers helpful.

Beagle I2C/SPI Protocol Analyzer Figure 2: Beagle I2C/SPI Protocol Analyzer

The Beagle I2C/SPI analyzer is a low-cost non-intrusive bus monitor, which can monitor SPI up to 24 MHz burst, I2C up to 5 MHz, and MDIO up to 2.5 MHz. With the Data Center Software, the Beagle analyzer displays and filters your bus data in real time, giving you much more visibility into what’s going on in your application.

Additional resources that you may find helpful include the following:

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

 

How do Beagle USB Protocol Analyzers Control the VBUS to the Target Device?

$
0
0

Question from the Customer:

I have the Total Phase Beagle USB 480 Protocol Analyzer and am testing some bus-powered devices. Is it possible to use the Beagle Software API to disconnect and connect the VBUS (and thereby disable the  USB signals from the target device) to simulate manually unplugging and then plugging in the cable? If not, do you have more advanced protocol analyzers that can support this simulation?

Response from Technical Support:

Thanks for your question! The Beagle 480 analyzer does not support the simulation of disconnecting and reconnecting the VBUS. However, we do have USB analyzers that can do that job for you. The Beagle USB 480 Power Protocol Analyzer series (Standard Edition and Ultimate Edition) and the Beagle USB 5000 v2 Protocol Analyzer series (USB 2.0 Edition, SuperSpeed - Standard Edition and SuperSpeed -Ultimate Edition) provide the options of connecting and disconnecting the VBUS.

beagle480power_200  Beagle5000_200
Fig 1: Beagle USB 480 Power Protocol Analyzer - Standard Edition Fig 2: Beagle USB 5000 v2 Protocol Analyzer - USB 2.0 Edition

Controlling VBUS via API:

For both the Beagle USB 480 Power analyzers and the Beagle USB 5000 analyzers, a Beagle API function, bg_usb_target_power, can be used to control the VBUS that is provided to the target device, or to disconnect the target VBUS to/from the host VBUS. For more information about the Beagle Software API, please refer to section 6 of the Beagle Protocol Analyzer User Manual.

Controlling VBUS via Manual Control:
In addition to controlling the VBUS via API, the Beagle USB 5000 analyzers have a Target Power indicator that controls VBUS and shows if the VBUS is connected or disconnected, with:

  • A large white circular button, which can be pressed to disconnect and pressed again to reconnect the VBUS between the target host and the target device.
  • An LED (located in the upper right corner of the button) that is illuminated when the VBUS is present. Alternatively, the LED turns off when the button is pressed to disconnect the VBUS.

For additional information about this feature, please refer to section 2.1 of the Beagle Protocol Analyzer User Manual.

Additional resources that you may find helpful include the following:

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 if you already own one of our devices and have a technical question, please submit a request for technical support.

What is the Most Streamlined, Flexible, and Low Signal Voltage Solution that Total Phase Offers for SPI?

$
0
0

Question from the Customer:

We have the Cheetah SPI Host Adapter, and are starting to work with SPI target devices with various logic voltage levels. However, we would like emulate a slave and work at voltage levels less than 3.3 V.  We think that using a Level Shifter Board will help us, but we would really like to minimize the number of boards in our test setup.  What do you recommend?

Response from Technical Support:

Thanks for your question! The Level Shifter Board can definitely help you to work at various low signal voltage levels; it supports 1.2V, 1.5V, 1.8V, 2.5V, 3.0V and 3.3V.

Level Shifter Board Figure 1: Level Shifter Board

However, since you would prefer to not have extra accessory boards and need slave capability, we recommend the Promira Serial Platform with the SPI applications. The Promira platform has integrated, built-in level-shifting and specifically, the SPI Active Level 2 Application offers the clock speeds that you are looking for.

Promira Serial Platform for I2C and SPI devices Figure 2: Promira Serial Platform

The table below provides a quick glance of the applications’ capabilities.  Please note that the SPI write and read performance will vary as the you go to lower voltages, due to physical limitations, but the Promira platform will maximize the speeds you get at any voltage.

Compare the features of the Promira and the I2C/SPI Active Applications, and the Cheetah and Aardvark host adapters. Figure 3: Comparison Chart

Additional resources that you may find helpful include the following:

We hope this answers your questions. If you have other questions about our serial platforms, board accessories or other Total Phase products, feel free to email us at sales@totalphase.com, or if you already own one of our devices and have a technical question, please submit a request for technical support.

 

Which Host Adapter or Serial Platform Supports Both Master and Slave Modes for SPI Development, Test, Programming, and Validation?

$
0
0

Question from the Customer:

The Aardvark I2C/SPI Host Adapter has been an excellent all-purpose tool for us; we use it for SPI, as a master and a slave. We are working on new design projects that require faster SPI speeds for developing, testing, and validating our devices. We looked at the Cheetah SPI Host Adapter, and while the speed looks good (40+ MHz), it seems to operate strictly as an SPI Master. Do you have a host adapter or other device that supports our new requirements?

Response from Technical Support:

Thanks for your question! Yes, we do have a device that will support your new requirements: the Total Phase Promira Serial Platform supports master and slave modes for both SPI and I2C. The unique flexibility of the Promira platform allows you to install a number of applications, supporting various protocols.

Promira Serial Platform for I2C and SPI devices
Figure 1: Promira Serial Platform

All levels of the I2C and SPI Active applications support the following:

  • USB and Ethernet connectivity,
  • Up to 200 mA of power to the target device(s)
  • An integrated level shifter that operates from 0.9 - 3.45 V

Here is what each individual application level provides:

SPI Active - Level 1 Application

  • Use up to 6 GPIOs (2 while using SPI)
  • In Master mode:
    • Speeds up to 12.5 MHz
    • Up to 3 Slave Select (configurable, shared with GPIO)
    • Software configurable Slave Select polarity
  • In Slave mode:
    • Slave at speeds up to 8 MHz;
    • Single slave response of up to 32 bytes

SPI Active - Level 2 Application (scheduled for release mid-year 2015)

Note: The SPI Active – Level 1 Application is a pre-requisite for using this application.

      • Use up to 12 GPIOs
      • In Master mode:
        • Speeds up to 40 MHz
        • 1 default response plus 8 unique slave responses of up to 256 bytes/response
        • Single slave response of up to 256 bytes
        • Up to 3 Slave Selects (configurable, shared with GPIO)
        • Software configurable Slave Select (SS) polarity
      • In Slave mode:
        • Speeds up to 20 MHz

The SPI Active - Level 3 Application, scheduled for release early 2016, which will support 80 MHz SPI Master and Slave, Single Dual or Quad I/O, and other advanced features.

For I2C devices, the I2C Active - Level 1 Application is currently available.

  • Use up to 6 GPIOs (4 while using I2C)
  • Master at speeds up to 1 MHz
  • Single slave response of up to 32 bytes
  • Slave at speeds up to 1 MHz

Additional resources that you may find helpful include:

If you have questions about our Promira Serial Platform or other Total Phase products, feel free to email us at sales@totalphase.com, or if you already own one of our devices and have a technical question, please submit a request for technical support.

Which Software Tool Should I Use with the Aardvark I2C/SPI Host Adapter to Read the Status Register Information?

$
0
0

Question from the Customer:

I have the Aardvark I2C/SPI Host Adapter and the Flash Center GUI Software which makes it really easy to use - but I do have a question. For my current lab project, I use Flash Center to read the contents of my memory chip and it works great, but I need to see the status register information as well. Is there a way I can use the GUI software to do that, or is there another software tool that I should use to see that data?

Response from Technical Support:

Thanks for your question! The Flash Center software does read the memory data, as you observed. However, for reading the status register, we recommend using the Control Center Serial Software.

Use Control Center Serial Software with your Aardvark Host Adapter or Promira Serial Platform Figure 1: Control Center Serial Software

One of the knowledge base articles in our library addresses your question and may provide some additional useful tips, Writing and Reading from SPI Flash Using Aardvark Adapter and Control Center.  The example in the article uses the SPI Flash Demo Board, but you can modify the steps for the target device that you are using. Following is a summary of the steps outlined in the article as they are related to the status register:

  1. Install and Start the Control Center Serial Software on your computer.
  2. Connect the Aardvark adapter to the Control Center Serial Software.
  3. Configure the Aardvark Adapter and enable Target power, if needed.
  4. Enter 06 in the MOSI Message > Click Send. (This Write Enable instruction sets the Write Enable Latch bit)
  5. Enter 01 00 in the MOSI Message > Click Send. (This Write Status Instruction writes 00 to the memory Status register.)
  6. Enter 05 00 in the MOSI Message > Click Send. (This Read Status Instruction reads 00 from the memory Status register.)
  7. View the results in the Transaction Log of the Control Center Serial Software.
    Control Center Serial Software can be easily used to view, log and analyze data Figure 2: Control Center Serial Software Transaction Log

    Additional resources that you may find helpful include the following:

    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 if you already own one of our devices and have a technical question, please submit a request for technical support.

How Do the Software Tools Work with the Komodo CAN Duo Interface and How Do They Help Me Capture and Analyze Real-Time Data?

$
0
0

Question from the Customer:

I’m new to CAN and am trying to understand a certain command on my truck’s CAN bus.  I’d like to record the data, break it down, and then resend it. Could the Komodo CAN Interfaces help me?

Response from Technical Support:

Thanks for your question! The Komodo CAN Duo Interface, as well as the Komodo CAN Solo Interface, can definitely help you record, analyze/break down, and send CAN data.  The main difference between the two units is that Komodo Duo interface has 2 CAN channels where you simultaneously monitor two different buses or record and send data at the same time.  The Komodo Solo interface has one CAN channel and can monitor or send data.

There are many ways to connect to the Komodo interfaces: you can use the Komodo GUI software, Data Center Software, and the Komodo Software API.

komodo_duo-225 Komodo CAN Solo Interface
Fig 1: Komodo CAN Duo Interface Fig 2: Komodo CAN Solo Interface

Here is a summary of the software tools and how they can be used with the Komodo CAN interface:

  • The Komodo GUI Software provides full access to all Komodo interface functionality - you can do the work without writing custom software to control the Komodo interface: you can send data, do some basic monitoring, and batch commands. You can easily interface with accessory boards such as the CAN/I2C Activity Board Pro, configure GPIO settings, use the Batch Mode to deliver specific CAN data packets and more.
  • The Data Center Software is purely a bus monitoring software application that displays real-time captured CAN bus data, which can then be filtered. This also simplifies your work by eliminating the need to write custom software to control the Komodo interface. To help you analyze the data, multiple views, such as Block, Hierarchical and more are available.
  • The Komodo Software API is used to control the Komodo interface, and to customize a program for specific setup requirements. You will need to write your software applications, but the API gives you the most control over the Komodo interface.  The API supports multiple OSs (Windows, Linux, and Mac) and multiple languages (C, Python, Visual Basic, and C#), it also includes examples that can be used as-is or customized for your specific needs. For more information about Komodo API, please refer to the section 5 of the Komodo CAN Interface User Manual.

We provide other tools that can help you advance your understanding and usage of the Komodo CAN interface.

  • The CAN/I2C Activity Board Prois an excellent development tool for the embedded systems developers, which can be used with the GUI Software as well as API.
 

 

 

CAN/I2C Activity Board Pro

Komodo GUI Interface with the Activity Board
Fig 3: CAN/I2C Activity Board Pro Fig 4: Komodo GUI Interface with the Activity Board

Here are other resources that you may find useful:

We hope this answers your questions. If you have other questions about our CAN interfaces or other Total Phase products, feel free to email us at sales@totalphase.com, or if you already own one of our devices and have a technical question, please submit a request for technical support.


What is the Maximum Speed We Can Achieve Between the Cheetah SPI Host Adapter and the Target SPI Device?

$
0
0

Question from the Customer:

We plan to use the Cheetah SPI Host Adapter in an automated testing application. Here are the setup details:

  • The distance between the Cheetah and the target SPI slaves is approximately 6 feet.
  • We will be using isolators and LVDS to TTL (and the reverse) line drivers.
  • The estimated delay from the MOSI to the MISO, relative to the same clock rate, will be approximately 60 ns.

Can you help us determine the maximum speed that we could achieve in this application?

Response from Technical Support:

Thanks for your question!  There is a formula that you can use for rough estimates.  Please note that the actual SPI speed can vary due to many factors, including the delays caused by the materials used and the environment of the setup.

The formula that you can use to estimate the maximum SPI bitrate:

F max = 1/ (2 x target cable round trip delay + 2 x Cheetah cable round trip delay + target device clock to output)

Applying values based on your setup:

F max = 1/ (2 x 60 ns + 2 x 0.6 ns + 2)

The calculated value:

F max = 1/123.2 ns = 8.12 M Hz

 

To preserve the signal integrity condition for high frequency applications, we recommend using as short a cable as possible, no more than 3-5 feet between the Cheetah and the target device.  However, as your setup uses LVDS (low-voltage differential signaling) between the Cheetah adapter and the target SPI device, a longer cable should be possible, as long as the total round trip delay is small.

For example, if your system has a 60 ns round trip delay, and 2 ns target device clock to output, then the theoretical maximum frequency is 8.12 MHz. However, as previously stated, the actual frequency can be lower due to other system delays, such as delays caused by the target board and the target connector.

The figures below show a sample block diagram and a timing diagram that is based on the system that you described.

 154139_diagram
Figure 1: Diagram of the Signal Routing
 Block Diagram of setup with long cables.
 Figure 2: Estimated Delays Used in the Calculation

Additional resources that you may find helpful include the following:

We hope this answers your question. If you have other questions about our serial platforms, board accessories or other Total Phase products, feel free to email us at sales@totalphase.com, or if you already own one of our devices and have a technical question, please submit a request for technical support.

Which Beagle USB Protocol Analyzer is Best to Monitor Full-Speed USB Traffic Between Embedded Devices?

$
0
0

Question from the Customer:

We are looking for a way to look at the full-speed USB traffic that will be exchanged between two embedded devices. These devices go into standby mode when they are not used. We have found a problem - sometimes the resume command is lost and the device does not wake up again.

We are considering the Beagle USB 12 Protocol Analyzer as well as the Beagle USB 480 Protocol Analyzer.

Our questions:

  • Are both of these analyzers able to show us all traffic that is sent between our devices, including the suspend/resume frames?
  • Will we be able to see the corrupted and erroneous frames?
  • We only have full-speed, and we do not need class-level decoding (the class is vendor specific). Would the Beagle USB 12 analyzer support our system requirements? Would it also see unexpected signals on the data lines?
Response from Technical Support:

 

 Beagle USB 12 High Speed Beagle USB 480 Protocol Analyzer
Figure 1: Beagle USB 12 Protocol Analyzer
Low cost. Monitors low-speed and full-speed data.
Figure 2: Beagle USB 480 Protocol Analyzer
Cost effective. Monitors  low-speed , full-speed and high-speed data between devices and offers class-level decoding.

Listed below is a summary of the capabilities of these protocol analyzers.

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

The Beagle USB 480 Protocol Analyzer is a non-intrusive monitor for high-speed and full-speed USB 2.0 traffic (480 Mbps / 12 Mbps / 1.5 Mbps). The Beagle 480 analyzer supports real-time USB class-level decoding. Also supported: 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.

For more comparative information, please refer to our USB Analyzer Product Guide, as well as Table 20 and Table 21 in the Beagle Protocol Analyzer User Manual. These tables show the events that the Beagle USB 12 and Beagle USB 480 analyzers provide. For more information about returns, which is related to software API, please refer to section 6 of the Beagle Protocol Analyzer User Manual.

Additional resources that you may find helpful include the following:

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 if you already own one of our devices and have a technical question, please submit a request for technical support.

Which Host Adapter and Interface Can I Use to Create a CAN to I2C Translator?

$
0
0

Question from the Customer:

I am working on a new design and of part of the requirement is to interface a CAN device to an I2C device. It would be really helpful to emulate that environment - do you have something that is a CAN to I2C translator, or any suggestions on how to do that?

Response from Technical Support:

Thanks for your question! To set up an environment with CAN to I2C translator, we recommend using three of our products: the Komodo CAN Duo Interface, the Aardvark/I2C Host Adapter, and the CAN/I2C Activity Board Pro.

 Komodo CAN Duo Interface Aardvark I2C/SPI Host Adapter CAN I2C Activity Board
Figure 1: Komodo CAN Duo Interface Figure 2: Aardvark I2C/SPI Host Adapter Figure 3: CAN/I2C Activity Board Pro

Here is how each of the above products will be used:

  • The Komodo interface will act as an active CAN node to send and receive commands to the CAN/I2C Activity Board Pro.
  • The CAN/I2C Activity Board Pro is a demo board with a variety of sensors and peripherals but in this setup, the main component we’ll utilize is its CAN to I2C bridge.
  • The Aardvark adapter acts as the I2C slave, receiving data that originates from the Komodo interface and is translated by the CAN/I2C activity board.
 CAN-I2C Diagram using Aardvark Adapter, Komodo Interface and CAN-I2C Activity Board Pro
Figure 4: How the CAN to I2C Translation Works

In this setup, you use the Komodo GUI Software to have the Komodo interface communicate to the I2C slave devices (the Aardvark adapter), and the Control Center Serial Software to set up the Aardvark adapter in I2C slave mode. For detailed instructions, please refer to our application brief, Using the Total Phase CAN/I2C Activity Board Pro as an I2C-to-CAN Translator.

Additional resources that you may find helpful include the following:

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 if you already own one of our devices and have a technical question, please submit a request for technical support. 

See How and Why Beagle USB Protocol Analyzers are the Best Tools for Monitoring and Debugging Your USB Application

$
0
0

Question from the Customer:

I just got backed up with a lot of projects and I need to monitor and debug USB data sent by various USB devices. I'll be working with low and full-speed USB 2.0, about 1.5Mbps to 12Mbps. I'm looking into your USB protocol analyzers - which one do you recommend? I have a lot of experience, but I'm fairly new to working with USB.

Response from Technical Support:

For your range of USB bus speeds, we have two analyzers to recommend for you – the Beagle USB 12 and Beagle USB 480 Protocol Analyzers. The Beagle USB protocol analyzers and software applications are easy to set up and intuitively use. Unlike other bus monitors, instead of setting up triggers and waiting for data to download, real-time USB traffic is visible immediately. In addition to the analyzers, we provide easy-to-use software, online application notes, and tutorials at no additional cost.

 Beagle USB 12 High Speed Beagle USB 480 Protocol Analyzer
Figure 1: Beagle USB 12 Protocol Analyzer
Full/Low speed USB 2.0 data
descriptor parsing
Figure 2: Beagle USB 480 Protocol Analyzer
High/Mid/Low speed USB data
descriptor parsing and class-level decoding

The Beagle USB 12 analyzer is a cost-effective way to monitor your low- and full-speed USB application. It parses the enumeration (initial handshake between your device and the host), and allows you to view, filter and search all the USB traffic in real-time.

For monitoring high-speed devices and where you need class-level decoding, we recommend the Beagle USB 480 analyzer. We support most of the popular classes such as HID (human interface device), mass storage, hub, audio and many other USB devices, the benefit of high-level USB class that is data decoded as it occurs on the bus saving you hours of time, debugging and analyzing. For example, when decoding a keyboard, you can see all the decoded key strokes, in the transaction window, in real-time.

The screens below show the advantage of viewing organized class-level data, human-readable format provided in real-time, versus raw data packet data that can be very difficult to understand.

 Data Center USB data Class Level View (decoded data)  Data Center - Protocol Level View (raw data)
Figure 3: Class-Level View
Organized hierarchical data
Figure 4: Protocol-Level View
Raw data format

For more details about class-level decoding, please see our application note Debug USB Faster with USB Class-Level Decoding.

For both analyzers, the setup is easy:

  1. Install the Data Center Software on your laptop or computer. The Data Center Software provides the real-time filter and search functionality for advanced data analysis while the capture is still being recorded.
  2. Connect the Beagle protocol analyzer to the Data Center Software.
  3. Connect the USB host and the target USB device, start the capture, and immediately capture and view the bus traffic in real time.

To see an example of how to do this, watch our video Capture USB in 90 Seconds.

Additional resources that you may find helpful include the following:

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

How Can I Configure the SPI Timing Parameters for Both SPI Master and SPI Slave Modes?

$
0
0

Question from the Customer:

I have been using the Aardvark I2C/SPI Host Adapter as an SPI Master for several projects. It's worked very well for me, but I'm having some challenges with my current project. I basically need to work at faster SPI speeds to work with the current SPI timing parameters. Is there a way to set the timing parameters on the Aardvark adapter, or is there another SPI adapter that would work better? The table below lists the timing parameters I will be working with:

Custom SPI Timing Parameters
Response from Technical Support:

Thanks for your question! For higher speeds and to configure the SPI timing parameters in both master and slave modes, we recommend the Promira Serial Platform, which is supported with the SPI Active - Level 1 and Level 2 Applications. The Cheetah SPI Host Adapter would meet your SPI master speed requirements as well, as its timing parameters can be configured.  However, the Cheetah adapter only supports the SPI master mode.

The figures below include the SPI timing diagrams for the Promira platform.

 

Promira Serial Platform supports SPI slave/master  Promira SPI Master/Slave WaveformFigure 2: Promira SPI Master/Slave Waveform
Figure 1: Promira Serial Platform Promira Master/Slave Byte TimingFigure 3: SPI Master/Slave Byte Timing

The tables below show the SPI master and SPI slave timing parameters, and indicate which parameters can be configured. For information about configuring the parameters, please refer to section 7.2.1 of the Promira Serial Platform User Manual.

 

Table 2: SPI Master Timing ParametersPromira SPI Master Timing Parameters

 

Table 3: SPI Slave Timing ParametersPromira SPI Slave Timing Parameters

 

The Promira platform provides a number of advantages over the Aardvark and Cheetah adapters, including:

  • Integrated level shifting from 0.9-3.3V (5V tolerant)
  • High-speed USB connectivity - provides high performance and convenience for benchtop programming, testing, and emulation
  • Ethernet connectivity - convenient for benchtop work, and enables remote control for your automation needs over long distances
  • More target power - provides a total of 200 mA to target devices
  • Scalability - SPI and I2C Active applications allow you to upgrade your Promira platform as needed; new applications will be released on a ongoing basis

A summary of the SPI Active application features are listed below, which can be quickly and easily downloaded to the Promira platform.

The SPI Active - Level 1 Application supports:

  • Master at speeds up to 12.5 MHz
  • Slave at speeds up to 8 MHz
  • Single slave response of up to 32 bytes
  • Program EEPROM, Flash, or other SPI memory
  • Use up to 2 GPIOs
  • Up to 3 Slave Selects: configurable, shared with GPIO
  • Software configurable Slave Select (SS) polarity in master mode

The SPI Active - Level 2 Application  supports:

  • Master at speeds up to 40 MHz
  • Slave at speeds up to 20 MHz
  • 1 default response plus 8 unique slave responses of up to 256 bytes/response
  • Single slave response of up to 256 bytes
  • Program EEPROM, Flash, or other SPI memory - including Dual I/O programming
  • Use up to 12 GPIOs
  • Up to 3 Slave Selects, configurable, shared with GPIO
  • Software configurable Slave Select (SS) polarity in master mode

Note - the Level 1 application must be installed before installing the Level 2 application.

Additional resources that you may find helpful include the following:

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 if you already own one of our devices and have a technical question, please submit a request for technical support.

Viewing all 822 articles
Browse latest View live