Before writing your own code, we recommend to use our Windows application MirrorcleDraw and the provided C++ examples to get experience with the system’s features and MEMS mirror control.

Mirrorcle’s Application Programming Interface (“API”) provides access to all of the hardware features and easy-to-use ways to control the MEMS micromirror by providing functions for data generation and device control.

MEMS mirrors are sophisticated components with many static and dynamic considerations for optimal driving. Various documentation is available online at to assist users in a richer understanding of the devices and to optimal preparation for designing content and hardware configurations.


Wrong controller settings can harm the device! MEMS mirrors should not be driven beyond their maximum voltage ratings, nor beyond the maximum allowed angles stated in the specific device’s datasheet. Therefore, the maximum voltage value as well as the filter cut-off frequency should not exceed the maximum values published in the datasheet.

System Overview#

The Mirrorcle USB MEMS Controller is powered and controlled via USB, or as optionally offered via Bluetooth (by a PC, a microcontroller platform or an Android-running device).

A Windows application can be developed using Mirrorcle’s API to generate content with MTIDataGenerator class functions, and control the device with the MTIDevice class functions.

Mirrorcle’s API and additional user created functions communicate to the USB MEMS controller via Serial Comm. to drive the MEMS device, and any other additional peripherals.


Communication Structure#

The API Functions send commands and/or data to the MEMS Controller. In each case, the controller responds with an acknowledgement on the command, requests for additional data, and confirms successful data/command transfers. Thus connection losses will create a serial connection timeout.


Separately terminal commands can be sent directly via serial connection to the “COM” port. The USB MEMS controller will in return acknowledge each command or return an error message.


MEMS Mirror Introduction#


Steering actuators arrangement and mirror in deflection#

Mirrorcle’s MEMS mirrors are designed gimbal-less with a unique multilevel beam fabrication methodology. A complete actuator is created out of one monolithic piece of single crystal silicon. A major advantage of the gimbal-less design is the capability to steer optical beams or images at equally high speeds in both axes. A typical device with a 0.8 mm diameter-sized mirror achieves tilt angles from -6° to +6°. (Refer to

The actuators of the mirror are driven by specially designed low power bias-differential driving amplifiers. They are steered electrostatically by applying appropriate voltage difference, and not with current. They consume practically zero power to stay at any position.

Please note that the MEMS Mirror with its actuators and their own driver stages are a highly complex nonlinear system. Mirrorcle’s API functions and MEMS driver compensate the system providing nearly linear output behavior.