Develop MULTOS applications for free

SmartDeck, the development environment for MULTOS applications can now be downloaded and used for free. Register for your copy here.

Download the SDK

Like many development environments for micro-controllers, the SDK for MULTOS Trust Anchors is built around the Eclipse (Kepler) CDT integrated development environment. A 'C' cross compiler is used to generate MULTOS Executable Language byte code.

Debugging can be done in a simulator and in the chip (depending on the type of application you are writing).

The SDK is known as SmartDeck -  use the link in the box on the right to register to download it. You will be sent an e-mail containing links to the following:

  • The SmartDeck installer only: Manually configure Eclipse and the rest of the environment following the instructions found at the beginning of the SmartDeck manual (installed in the doc folder). A useful option if you already have a working environment set up and just need the latest SmartDeck tools.
  • A "Super Installer": Automates the whole process including downloading and installing any missing components and setting the environment.
  • You also need to download the library for using the Trust Anchor features. The include file mi.h should be placed in the SmartDeck include folder and the libmi.hza file in the libs folder.


Testing your Dev Board

Check that on the Development board (with breakout board inserted) switch S1 is set to USB, switch S2 is up and jumper J5 is fitted. Connect to your Windows PC / Laptop with the USB cable provided.

Note the COM port number allocated during the driver installation process.Then, from a command prompt, type the command:


The output should look like this:




Testing the Eclipse environment

This will test that the Eclipse environment is set up correctly.


First, run Eclipse and select the demo project provided with the installation.













To start debugging the sample wallet application in the smartcard simulator select the eLoyalty debug configuration from the drop-down menu.

The debugger should launch (this may take a few seconds) and the application should break at main().





You should then be able to step through the code using F6 (or the step-over menu- bar button).


Finally stop the debugging session by pressing the red stop icon. It is very important to stop the debugging session before starting a new one.




SDK command line tools

These are the SDK command line tools that you might want to make use of directly. These are all individually documented in the SmartDeck manual. Each outputs the list of options it supports if  run without any options specified. Some examples are given on the Tools page.

  • hcl.exe Compiler driver: provides a useful way to get files compiled, assembled and linked. Usually called from the MULTOS Eclipse Toolchain but can be used stand-alone.
  • hsim.exe MULTOS Simulator: used in conjunction with mdb but can also be used stand-alone.
  • hterm.exe Loader: Used to load and delete application from MULTOS cards and send APDUs.
  • har.exe Archiver: Consolidates multiple object files into a single, object code library
  • hls.exe Object file lister: displays useful information held in unlinked files and linked executables.
  • hkeygen.exe RSA key pair generator: creates a private and public RSA key pair, suitable for use with MULTOS cryptography primitives
  • halugen.exe ALU generator: creates a standard MULTOS application load unit.
  • melcertgen.exe ALC/ADC generator: creates load and delete certificates for developer cards.
  • meldump.exe MULTOS file list: outputs contents of standard MULTOS files.