# Introduction

This document provides instructions for software developers who want to create custom software solutions that communicate with DynaMAX, eDynamo, aDynamo, iDynamo, uDynamo, kDynamo, sDynamo, tDynamo, iDynamo 5 Gen II, iDynamo 5 Gen III, or iDynamo 6 connected to an iOS host via audio connector or Bluetooth LE. It is part of a larger library of documents which includes:     &#x20;

* MagneSafe V5 Programmer’s Reference (Commands)
* DynaMAX Programmer's Manual (Commands)
* eDynamo Programmer's Manual (Command)
* iDynamo 5 (Gen II) Programmer's Manual (Commands)
* iDynamo 5 (Gen III) Programmer's Manual (Commands)
* kDynamo Programmer's Manual (Commands)
* tDynamo Programmer's Manual (Commands)
* D998200324 iDynamo 6 Programmer's Manual (Command )

#### About MTSCRADemo <a href="#id-1.1_about_mtscrademo" id="id-1.1_about_mtscrademo"></a>

The MTSCRADemo software, available from MagTek, provides demonstration source code and a reusable MTSCRA library that provides developers of custom iOS software solutions with an easy-to-use interface. Developers can include the MTSCRA library in custom branded software which can be distributed to customers or distributed internally as part of an enterprise solution.

#### Nomenclature <a href="#id-1.2_nomenclature" id="id-1.2_nomenclature"></a>

The general terms “device” and “host” are used in different, often incompatible ways in a multitude of specifications and contexts. For example, “host” may have different meanings in the context of USB communication than it does in the context of networked financial transaction processing. In this document, “device” and “host” are used strictly as follows:

* Device refers to the MSR device that receives and responds to the command set specified in this document; in this case, DynaMAX, eDynamo, aDynamo, iDynamo, uDynamo, kDynamo, sDynamo, tDynamo, or iDynamo 6.
* Host refers to the piece of general-purpose electronic equipment the device is connected or paired to, which can send data to and receive data from the device. Host types include PC and Mac computers/laptops, tablets, smartphones, teletype terminals, and even test harnesses. In many cases the host may have custom software installed on it that communicates with the device. When “host” must be used differently, it is qualified as something specific, such as “USB host.”

The word “user” is also often used in different ways in different contexts. In this document, user generally refers to the cardholder.

#### SDK Contents <a href="#id-1.3_sdk_contents" id="id-1.3_sdk_contents"></a>

<table data-header-hidden><thead><tr><th valign="top"></th><th valign="top"></th></tr></thead><tbody><tr><td valign="top">File Name</td><td valign="top">Description</td></tr><tr><td valign="top">MTSCRA.h</td><td valign="top">Header file for the MTSCRA SDK</td></tr><tr><td valign="top">libMTSCRA.a</td><td valign="top">Library binary for the MTSCRA SDK</td></tr><tr><td valign="top">MTSCRADemo Folder</td><td valign="top">Sample code and projects</td></tr></tbody></table>

#### System Requirements <a href="#id-1.4_system_requirements" id="id-1.4_system_requirements"></a>

Tested devices:

* iPhone 7, 7 Plus, 8, 8 Plus, X, XS, XS Max, 11, 12, 13, 14, 15 series, iPhone 12 and 13 mini
* iPad 6<sup>th</sup> 7<sup>th</sup>, 8<sup>th</sup>, 9<sup>th</sup>, 10<sup>th</sup> gen, iPad Air, iPad Air 2/3/4/5, iPad Pro, iPad Pro 2<sup>nd,</sup> 3<sup>rd,</sup> 4<sup>th</sup>, and 5<sup>th</sup> gen
* iPad Mini 2, iPad Mini 3, iPad Mini 4, iPad Mini 5, iPad Mini 6 Tested operating systems: iOS 13 and above

Build Platforms: XCode 15.3 and above

#### Interfaces for Operating Systems <a href="#id-1.5_interfaces_for_operating_systems" id="id-1.5_interfaces_for_operating_systems"></a>

The following table matches the device interface to operating system.

<table data-header-hidden><thead><tr><th valign="top"></th><th valign="top"></th><th valign="top"></th></tr></thead><tbody><tr><td valign="top">Device</td><td valign="top">Interface</td><td valign="top">Operating System</td></tr><tr><td valign="top">eDynamo</td><td valign="top">Bluetooth LE 4.0</td><td valign="top">iOS 13 and above</td></tr><tr><td valign="top">aDynamo</td><td valign="top">Audio</td><td valign="top">iOS 13 and above</td></tr><tr><td valign="top">iDynamo</td><td valign="top">30-pin</td><td valign="top">iOS 13 and above</td></tr><tr><td valign="top">Lightning</td><td valign="top">iOS 13 and above</td><td valign="top"></td></tr><tr><td valign="top">uDynamo</td><td valign="top">Audio</td><td valign="top">iOS 13 and above</td></tr><tr><td valign="top">DynaMAX</td><td valign="top">Bluetooth LE 4.0</td><td valign="top">iOS 13 and above</td></tr><tr><td valign="top">kDynamo</td><td valign="top">Lightning</td><td valign="top">iOS 13 and above</td></tr><tr><td valign="top">sDynamo</td><td valign="top">Lightning</td><td valign="top">iOS 13 and above</td></tr><tr><td valign="top">tDynamo</td><td valign="top">Bluetooth LE 4.0</td><td valign="top">iOS 13 and above</td></tr><tr><td valign="top">iDynamo 5 Gen II</td><td valign="top">Lightning</td><td valign="top">iOS 13 and above</td></tr><tr><td valign="top">iDynamo 5 Gen III</td><td valign="top">USB-C (iAP2)</td><td valign="top">iOS 13 and above</td></tr><tr><td valign="top">iDynamo 6</td><td valign="top">Lightning</td><td valign="top">iOS 13 and above</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://developer.magtek.com/hardware/card-readers/magnetic-stripe-readers/idynamo-5-gen-iii/documentation/developers-manuals/secure-card-reader-authenticators-sdk-programmers-manual-ios/introduction.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
