Skip to main content

Python implementation for Microchip/Atmel Data Gateway Interface

Project description

pydgi

Python implementation for Microchip/Atmel Data Gateway Interface

The Atmel Embedded Debugger (EDBG) offers a Data Gateway Interface (DGI) for streaming data to a host PC. This is meant as an aid in debugging and demonstration of features in the application running on the target device. DGI consists of multiple interfaces for data streaming. The supported interfaces are SPI Interface, USART Interface, TWI Interface, GPIO Interface.

The protocol is available on Xplained Pro boards and on the Atmel Power Debugger, that also provide current sensing channels for measuring power consumption.

The only tool that shows power data is Atmel Data Visualizer: while very powerful, it unfortunately requires Windows and integrates poorly with an automated setup.

My implementation of the DGI protocol is in pure Python, with the only external requirement of PyUSB; it should work on any platform.

The generic communication protocol is fully implemented; configuration and data parsing are still WIP.

Presently there is a single working interface - the power one: pydgi can stream current data from the XAM module available on Xplained Pro boards.

Usage

Create a virtualenv, install via pip and launch the provided console power measure reader:

virtualenv -p python3 env
. env/bin/activate
pip install pydgi
dgi_power_measure.py

Refer to plot.py for a matplotlib integration example.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pydgi-0.1.5.tar.gz (229.2 kB view hashes)

Uploaded Source

Built Distribution

pydgi-0.1.5-py3-none-any.whl (240.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page