Automation and Scripting

The ZyVector software, Scanz, enables automation and user scripting of almost every part of the program, including imaging, surface motion and patterning.

The simplest form of automation is the queuing ofcommands in the user interface. A series of actions can bequeued up, and are shown in the Info Panel at the bottom of the Scanz window. Individual items can be cancelled with the ‘x’ button, or the whole queue is cancelled with the Cancel action button.

To extend the capabilities of ZyVector, users can write their own scripts, typically in a text editor outside Scanz, and then uploaded to the software.

Scripts for ZyVector are written in a Python-based script language and can be a simple list of commands all the way to a complex set of instructions describing all the moving, imaging, writing, and other tasks required for generating a pattern for a whole device.

Many built-in scripts are provided, to perform tasks such as calibration of the default lattice parameter, determination of lithography parameters, writing simple shapes, etc.

The Script view tab provides both a command line interface to commands and scripts, and also a Script Menu to providea GUI to easily find and run scripts. Many scripts have variousinput parameters, such as dimensions, rotation angles, etc. and the Script Menu tab provides a convenient way to edit the desired values for these parameters.

The Script tab, showing the command line interface, and the script menu panel.

A ZyVector script.

Queud actions in the Info panel 

Bitmap Input

Any arbitrary pattern can be input as a black and white bitmap. The white pixels will be written with one bitmap pixelcorresponding to the standard 0.768 nm lithography pixel.

The Multimode_VectorGen script parses the bitmap, producing a list of tip vectors organized in the order of writing. For large patterns, both AP mode and FE mode vectors are used to achieve an optimal write time. The edges are written using AP to achieve atomic precision. The larger patterns are filled in quickly with FE mode vectors. The pattern can then be written.

All of these standalone methods for writing patterns can also be incorporated into a script. Thus ZyVector is capable of very sophisticated automated patterning tasks.

Key Features

  • Distortion-free imaging for automatic pattern alignment to the atomic lattice
  • Real-time creep and hysteresis correction for precise tip positioning and motion
  • One-click writing of simple shapes; bitmap or vector input for complex patterns
  • Automation of complex tasks through scripting