5 Protocols

Most communication interfaces use streams of bytes to transfer data. This is enough for single data values of 8-bit precision, but when multiple values are required to be transmitted over the same interface, data must be packed in a protocol. The Data Visualizer supports two such protocols.

The Data Stream protocol is using a light-weight framing format to pack several numerical values over one interface. It is only capable of handling incoming data and it only supports synchronous streams (i.e., every data packet must contain one sample from each data stream).

The Atmel Data Protocol (ADP) enables streaming of data in both directions. ADP is, in general, more flexible than the Data Stream protocol and it also supports asynchronous streams (i.e., data samples from each data stream can be sent independently).

Both protocols can be automatically detected and used to automatically configure the Data Visualizer by defining data streams, configuring a Dashboard and connect the data streams to the Dashboard elements. The main difference is that for the Data Stream protocol, the configuration settings reside in configuration files on the host computer while for ADP the configuration settings are sent from the target application to the host computer. In addition, ADP can configure Graph and Terminal views. The Graph element in the Dashboard view is supported by both protocols.

Table 5-1. Protocol Comparison
Data Stream ProtocolAtmel Data Protocol (ADP)Comment
ComplexitySimple/LightweightComplex/Flexible
Start/Stop individual streams-X
Data input XXData transmission from target application to host computer
Data output-XData transmission from host computer to target application
Support String data type-XVarious length strings
Configuration settings stored on host computerX-Configuration of Data Visualizer GUI
Configuration settings stored in target application-XConfiguration of Data Visualizer GUI
Dashboard View configurationXX
Graph View configuration-X
Terminal View configuration-X
Data bursts-XMore than one sample of a data stream can be sent in one package
Asynchronous data streams-XSamples from different data streams can be sent independently
X = Supported

- = Not supported