Software/ arrow Host Software/ arrow SMIEngine


Moog Animatics’ SMIEngine™ is a source code module library created as a software tool for the Windows Operating System environment. It comes free with the installation of the SMI software.



The installation includes source code examples written in:
Borland C++, Microsoft C++, Visual C, VB and VBA (Excel).

SMIEngine is based on the Windows Component Object Model (COM) and works with:

  • Microsoft C++
  • Borland C++
  • Microsoft Visual Basic (VB)
  • VBA (Visual Basic for Applications)
  • MS.Net environment
  • Borland Delphi
  • Pascal
  • Python
  • LabView (when installed as an Active-X component)

Windows Vista

Note about Windows Vista: With the release of Microsoft Vista, the name of the dll file changes from SMIengine.dll to IntegMotorInterface.dll. Other than the name change, all internal definitions have remained the same and are fully backwards compatible to existing applications with no need to change the body of the source code.

SMIEngine Usage

Using SMIEngine, you can perform the following tasks:

  • Configure PC serial ports
  • Address Moog Animatics SmartMotors™ through selected serial ports
  • Send commands to the motors and receive motor responses that allow you to:
    • Control and change modes of operation
    • Update or change motion parameters and variables
    • Gather real-time data from motors for online diagnostics
    • Control the motors using Coordinated Motion (Contouring or Host Mode)
    • Create circular and linear path coordinates used for Coordinated Motion
  • Work with downloadable SmartMotor code to:
    • Scan user program source files (.sms) for errors
    • Create an executable SmartMotor compiled user program file (.smx)
    • Download and upload compiled user programs to and from motors
    • Create a list of errors in a user program and provide an interface for navigating through errors


Optimizing the SMIEngine for Multi-Axis coordinated Motion Control:
Multiple Instances of the SMIEngine can be run at the same time for each communications port that is open. In doing so, the application can maximize usage of communications bandwidth to each motor or each set of motors. Highly effective and efficient applications can be created to control CNC machines via a PC.

Example Application

Example Application using SMIEngine:
The Moog Animatics JenCNC software package was created in Borland C++ using the SMIEngine exclusively to handle all Motor communications. The result was a stable and proven CNC platform for controlling up to 4 axis machines via a standard RS-232 serial port.

SMIEngine is proivided as a part of SmartMotor Interface. Download SMI from below:

SMI- Download