Atmel Data Protocol

Transfer using Atmel Data Protocol

The Atmel Data Protocol (ADP) is a content independent protocol intended for transferring data from a target MCU to a host PC through an EDBG-based debugger (EDBG, Atmel-ICE, Power Debugger) using the Data Gateway Interface (DGI, see Embedded Debuggerʼs Data Gateway Interface) or directly to the host computer using a serial port. ADP is content independent and the transfer through the debugger is transparent, meaning that the content is not interpreted by the debugger.

Transferring a single value is quite simple. But to transfer more than one value, they have to be wrapped in some kind of protocol that both the sender and receiver understands. ADP is such a protocol. If the MCU wraps all its data into an ADP packet, it can be decoded in the Data Visualizer and split into separate data streams.

Figure 1. An ADP Transfer

In the figure above, the MCU packs a temperature and a pressure variable inside an ADP packet. In the Data Visualizer, the SPI endpoints in the DGI Control Panel are now connected to the Data endpoints of an ADP Control Panel. The ADP Control Panel will decode the packets into separate temperature and pressure data streams. They can then be connected to two plot lines in the Graph module.

The ADP protocol supports data transfer in both directions. In addition, the MCU can send configuration packets describing what modules should be opened in the Data Visualizer, and how to connect them. When the target board is connected to the host computer everything will be configured automatically.