Scanbot – FLEET Translation Project

Six months ago I sat in on a talk by Dr. Michael Harvey about FLEET’s Translation Program, a scheme designed to help early career researchers turn their ideas into projects with real impact. At the time, I’d been toying with a way to simplify some of the repetitive, time-consuming parts of my work. His talk was the push I needed to take it seriously.

A big part of my PhD is working with Scanning Tunnelling Microscopes (STMs). They’re incredible tools that let us image surfaces with atomic-scale resolution, but they’re also temperamental. Data quality depends heavily on the sharpness of the probe, and keeping that probe in shape is a slow, frustrating routine. Out of that problem came an idea I called Scanbot - a Python-based robot to automate the process.

With Michael’s encouragement, I put forward a proposal. Getting it approved was a milestone in itself and gave me the motivation to start building. From there, Scanbot slowly moved from concept to working prototype.

The first hurdle was teaching it to detect a bad tip. After plenty of coding and testing, Scanbot could flag poorly shaped tips from the STM images. It wasn’t perfect, but good enough for a proof of concept.

Next came navigation. Using a camera feed, I programmed Scanbot to track the probe and control the STM motors, moving between the sample and a nearby clean reference metal for tip shaping.

Scanbot tracking the STM tip through a camera feed
a) Schematic of the STM tip over a dual sample holder setup, with a reference metal beside the sample for tip shaping. b) Image from the camera feed used by Scanbot to track and move the probe automatically. See the documentation for a video demo.

The final piece was automating the refining process. Scanbot carefully pokes the apex of the probe into the clean surface, checks the crater it leaves, and repeats until the geometry shows the tip is sharp and symmetric.

Scanbot automated tip shaping procedure
Successive images of craters left after dipping the probe into the clean surface. The process is repeated until the craters show the apex is sharp and symmetric.

Watching Scanbot complete its first full cycle - autonomously preparing the scanning probe and then acquiring meaningful data - was epic. An idea turned into a tool that could genuinely make STM research easier. The project is now open source on GitHub and ready for others to use and build on. From that first Translation Program talk to this point, the journey has been a huge learning experience and made me appreciate how powerful automation can be in research. I’m excited to see where Scanbot goes from here.

Before finishing, I want to acknowledge the contributions of Jack Hellerstedt, Benjamin Lowe, and my supervisor, Agustin Schiffrin. Below is an example of an overnight survey Scanbot acquired autonomously in our lab - a two-dimensional metal-organic freamework.

Scanbot autonomous sample surveying
An autonomous overnight survey taken by Scanbot of a real sample in our lab.