Python AMT Developer Toolkit (DTK)

Python Commander in actionThe Linux AMT DTK provides an easy way to build AMT enabled application based on the AMT SDK and provides sample applications that demonstrate how the stack can be used in real life applications. This DTK is not a port of the AMT DTK by Ylian Saint-hilaire (Intel) which is primarily for Windows and based mostly on C#, it is however inspired by the windows AMT DTK and current sample applications have the same name as in the C# windows DTK.

Although the C# based DTK by Ylian  currently does not run on Linux but might be ported to Linux at some point (C# is supported on Linux and other OSes using the Mono project) and to avoid confusion in the future we shall call this DTK “Python DTK” ( It is also possible to run this “Python DTK” on windows).

The Linux AMT DTK is a native Linux environment using python as the primary programming language and utilizes the Linux libraries in the AMT SDK.

Currently the Linux AMT DTK supports SOAP interface only and uses WSDL files from the SDK to build SOAP stubs that can communicate with any AMT enabled machine. We are working on the next generation of the DTK which will use the WS-Management interface and will be based on openwsman.

The complete stack can be downloaded from subversion on sourceforge. For example, to download the latest DTK, use the following command:

svn co https://openamt.svn.sourceforge.net/svnroot/openamt/dtk/trunk linux_dtk

Below is the list of components and how they can be used.

AMT Remote Stack

The AMT remote stack contains a set of python modules that provide an interface to access various functionalities provided by Intel AMT. Developers could build management applications based on the stack to  manage remote PC with AMT enabled.

AMT libwrapper

The AMT libwrappers are python modules that wrap the libraries in the AMT SDK: “libimrsdk.a” and “libiamt.a”, which are used to access “IDE-R/SOL”and “3PDS (Third Party Data Storage)” in AMT. AMT libwrapper is part of AMT remote stack. You need to download the latest AMT SDK and build libwrapper to enable the IDE-R/SOL and storage functionalities in AMT commander.

Currently AMT libwrapper only work with sdk libraries on 32-bit Linux, 64-bit support will be added later.

AMT libwrapper build steps:

  1. download AMT sdk at “http://softwarecommunity.intel.com/articles/eng/1023.htm”
  2. extract AMT sdk and extract the linux sdk package under sdk directory ‘Linux/IntelAMTSDK’
  3. run ‘make SDKSRC=/path/to/linux/sdk/directory’ under libwrapper directory

AMT Terminal

The AMT terminal is an application providing remote management through AMT Serial Over LAN (SOL) and IDE Redirection (IDE-R), You can use it to remotely control an AMT machine, setup a SOL connection and do remote diagnosis through IDE-R. The AMT terminal calls the IDE-R/SOL python module in the AMT libwrapper, so you need to build the AMT libwrapper first before running AMT Terminal.
You can run the AMT terminal as a standalone application or launch it using AMT Commander. Currently it only support AMT system configured in small business mode.

AMT terminal run steps:

  1. enter amt_terminal directory and add parent path as PYTHONPATH
  2. python amt_terminal.py -h <hostip> -u <username> -p <password>

Requirements and Dependencies

You need to install the following packages before running AMT DTK.

  • Intel AMT SDK
  • python 2.5
  • python ZSI 2.0
  • pygtk 2.10
  • pysnmp 2.0.9
  • python-elementtree 1.2.6
  • python-vte 0.16

Known Issues

  • AMT Terminal does not support ISO image file redirection, this is a limitation in the redirection library on Linux
  • Sometimes the AMT terminal hangs while closing. This is similar to a known issue reported in the Linux SDK README.
  • IDER failed to work with Lenovo T61. From debug log, It seemed to be a bug in the redirection library