Skip to main content

Python Interface Package for Nanonis

Official python package for the Nanonis SPM Controller software.

Usage

This package allows users of the Nanonis SPM Controller software to use and control said software through python commands.

How to use

Importing

import nanonis_spm

Initializing Connection through the socket module

import socket

connection = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

connection.connect((IP_ADRESS_HERE, PORT_HERE))

nanonisInstance = nanonis_spm.Nanonis(connection)

NOTE : THE PORT HAS TO BE AN INTEGER AND THE IP ADRESS A STRING

Enabling Debug Console Output

The function "returnDebugInfo()" takes an integer as an argument. This integer should be either 1 = on, or 0 = off. This option is off by default.

Enable by running: nanonisInstance.returnDebugInfo(1)

Examples

There is a collection of examples installed with the package.

The description of all the available functions can be found in the TCP Protocol Document, and hovering on the function depending on the used IDE.

IMPORTANT: The TCP Interface requires every argument to be of certain size (see documentation). This is why the Numpy dependency is required, since it enables the specification of variable sizes.

Example:

nanonisInstance.BiasSwp_LimitsSet(np.float32(1), np.float32(2))

We hereby ensure that the arguments are of the correct size.

Change Log

1.0.9

Added missing argument to TCPLog_ChsSet. Fixed data types from f to d in Osci1T_TrigSet function.

1.0.8

Added missing argument to Motor_StartClosedLoop function.

1.0.7

Fixed the programmatic control of the Oscilloscope High Resolution graph, where some functions now include an input for channel selection to support the 4-channel version of this graph.

1.0.6

Added functions to control the hysteresis compensation in the Piezo Configuration module. Added a function to return the limits of a Bias Sweep. Added a new setting in the functions Scan_PropsGet and Scan_PropsSet to get-set the auto-paste feature in the Scan Control module.

1.0.5

Fixed some missing variable names in the function declaration of some MCVA and MProbe functions. Fixed missing input arguments for Motor_FreqAmpGet and Motor_PosGet functions. Added all functions for the Function Generators 1Ch and 2Chs. Fixed the SpectrumAnlzr_DataGet function.

1.0.4

Fixed the indentation of two Script functions (Script.Open and Script.LUTOpen) which triggered an error when trying to use the class. Changed the behavior of the returnDebugInfo function so that nothing is printed out if there is no error.

1.0.3

Added the function Util.VersionGet to get the software version, the MCVA5 preamplifier functions, the V5e Generic PI Controller functions, and all the MultiProbe functions (Bias, Current, Z-Controller, and scanner control) needed in a MultiProbe system.

Removed a check in the ParseError function which set a different error string offset for functions returning exactly 8 bytes. Changed the data types of the returning arguments for the BiasSpectr_ChsGet and ZSpectr_ChsGet functions.

Metadata

Release files for nanonis-spm 1.0.9

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nanonis-spm 1.0.9
File Size Uploaded Provenance Actions
nanonis_spm-1.0.9.tar.gz 5.7 MB Without provenance Details for nanonis_spm-1.0.9.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for nanonis-spm 1.0.9
File Interpreter ABI Platform Actions
nanonis_spm-1.0.9-py3-none-any.whl Python 3 none any Details for nanonis_spm-1.0.9-py3-none-any.whl

Total release size: 5.8 MB

Release files / nanonis_spm-1.0.9.tar.gz

Download URL nanonis_spm-1.0.9.tar.gz
Size 5.7 MB
Tags Source
SHA-256 checksum
How to use checksums
1e473dab7e79a25b4eab5a22808181590661baf686f055ca0837f1bdabe74c8d
BLAKE2b-256 checksum
How to use checksums
99b37b901e061737ce0d392258948cea5dd2679aa986771069a51c73c2b242c0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.8.1

Release files / nanonis_spm-1.0.9-py3-none-any.whl

Download URL nanonis_spm-1.0.9-py3-none-any.whl
Size 88.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f4c1b405b7f4b3628aec6a7c538b740fe7acf8571d7366da7e3a327715d29782
BLAKE2b-256 checksum
How to use checksums
3c6fa1c5575fb22c7d06723493a18142b856df1586b73cb8e9e13dec46a5f932
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.8.1

Security for nanonis-spm 1.0.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page