Programming Interface

The MTM-USBStem is capable of many features. These features are organized into groups called entities. Through these entities we can access the vast features of the MTM-USBStem.

A complete list of all entities and functions can be found in the Module Entities page.


Software Control

A BrainStem link can be established that will give the user access to the resources available on the MTM-USBStem. The module can then be controlled via a host running BrainStem APIs or operated independently by running locally embedded, user-defined programs based on Acroname’s BrainStem Reflex language in the RTOS. A BrainStem link to the MTM-USBStem can be established via one of three (3) interfaces: the onboard USB connection, the card-edge USB connection, or through another MTM module using the BrainStemprotocol (more on this interface below). For the USB connection options, once the MTM-USBStem is attached to a host machine, a user can connect to it via software API:

stem.discoverAndConnect(linkType, serialNumber)

The MTM-USBStem can also work within a network of other Brainstem modules, such as in a test fixture, to give access to the capabilities of all networked modules. On the MTM platform, networked modules communicate using the Brainstem protocol, which is transmitted over I2C. Each MTM-USBStem is uniquely addressable via hardware or software to avoid communication conflicts on the I2C bus.

Upstream USB Connectivity Options

The MTM-USBStem supports upstream USB connections (to communicate to a host PC) via the mini-B connector, or through pins B14 and B15 of the PCIe edge connector. The module defaults to using the edge connector and will switch to the miniB connector if 5V is present on Vbus at the mini-B connector.