ILIA SIDOROVMASKLESS LITHOGRAPHY Get in touch
Portfolio

Engineering work

Mechanics, optics, electronics and software, usually for one machine at a time. The maskless lithograph is the main project; the rest grew around it — resist process, CAD and layout tooling, a scanning microscope.

MAIN PROJECT

Desktop maskless lithography

Photolithography straight from a GDSII file, no photomasks. Prototype 1.0 is built and exposes real wafers with software written in-house; Prototype 2.0 is a modular sub-micron motion platform with lithography as its first instrument.

  • DMD projection
  • Servo motion, CANopen
  • Optical scales
  • PySide6
  • Fusion 360
See the project →
A die array across a whole wafer, exposed on Prototype 1.0A whole wafer, stitched by step-and-repeat
Photograph of the exposed test chip, corrected for perspective onto the layout The GDSII layout of the test chip
GDSII layoutIn resist
5 mm
Layout → resist

Design against result

Drag the divider. On the left is the GDSII file that went to the machine; on the right, a photograph of what came out, corrected for perspective so the two line up.

The silicon chip is 25 × 25 mm; the layout on it, a logo with captions and four dithered pictures, takes 20 × 20 mm. One exposure job.

The machine exposes one DMD frame at a time: this chip is 1 869 fields of 0.25 × 0.38 mm, placed side by side by the stage. Switch the grid on, then off, and look for the seams.

What ends up in resist depends on development as much as on exposure: developer, time and temperature all change the result. These are samples from process tuning. Works by Magritte and Escher are blurred on both sides: they are still under copyright.

Four developed arrays of round wells in resist, each labelled with its step and exposure timeDeveloped in resist · microscope
Process development

Micro-well arrays in resist

Bringing up the resist process for wafers of micro-well arrays: spin-coating curves at 3000–7000 rpm, exposure-time sweeps, development. Each array carries its own settings, exposed next to it — here pitch 75–78 and about 3.4–3.5 s per field. The work began on a pre-alpha of Prototype 1.0 with a different projector and continues on Prototype 1.0 itself.

  • Spin coating
  • Dose matrix
  • Development
  • Microscopy
Ongoing
The Prototype 2.0 assembly in the Fusion 360 viewportCaptured through the bridge itself
Open source · MIT

FusionMCP

A Fusion 360 add-in that lets an AI agent drive CAD: a local HTTP server that runs Fusion API calls on the main thread. 170 commands — sketches, features, assemblies and joints, CAM, sheet metal, export, screenshots.

  • Python
  • Fusion 360 API
  • MCP
GitHub →
FreeCAD with the HybridDesign command ribbon: Create, Modify, Assemble, Construct, InspectFreeCAD logo
FreeCAD workbench

HybridDesign — a workbench for FreeCAD

Fusion 360-style modelling inside FreeCAD 1.1: a command ribbon and Fusion shortcuts, extrude and revolve by sketch region, Press Pull, Shell, Joints. References between bodies are kept automatically, and failed kernel operations are retried. Around 100 test files.

  • Python
  • FreeCAD
  • Qt
v0.1Development log →
Three microfluidic cells generated as GDS: flow focusing cross, meander, T-divider
Microfluidic EDA

mfeda

Microfluidic chips designed as code: a parametric cell library, a hydraulic solver for pressures and flows (modified nodal analysis) and GDS output that goes straight to the lithograph. Browser UI on FastAPI and Vite.

  • Python
  • GDSII
  • FastAPI
In development
Layout tooling · MIT

KLayout MCP

An AI agent draws GDS / OASIS layout in a live KLayout window, one step at a time, while you watch and edit alongside.

  1. AI agent — MCP over local HTTP
  2. Server inside KLayout — Qt main thread, token and origin checks
  3. Visible layout view — about 16 tools plus scripting
  • Python
  • KLayout
  • JSON-RPC
Instrument

Goose — motorized microscope and slide scanner

A scanning microscope for histology slides: mechanics in FreeCAD, Arduino Mega firmware, a PySide6 control app. The same problems as in the lithograph — focus, flatness, stitching — on a different instrument.

  • Snake scan over the whole slide
  • Height map for slides that are not flat
  • Two-phase contrast autofocus
  • Stage calibration by FFT phase correlation: steps/mm, backlash
  • Multi-Z capture and focus stacking
  • Stitching: SIFT matches, global least-squares placement
  • PySide6
  • OpenCV
  • Arduino
  • FreeCAD
AI tooling · MIT

Swarm Suite

MCP servers that work as a review team for software that talks to hardware. 53 specialised experts start from the datasheet — registers, pins, protocols, timing — and review and fix code against those facts. When they disagree, the outcome is recorded as an architecture decision.

  • Python
  • MCP
  • Embedded
In development
Two bench runs, silent
Experiment

Tubular linear motor

An attempt at a direct-drive linear axis with no ball screw: a wound coil carriage travelling along a cylindrical rod, driven from an Arduino through a driver board on a lab supply. The second run shows smooth travel.

  • Coil winding
  • Arduino
  • Motor driver
Prototype
Partnership

Looking for a manufacturing partner and investor

On the table: a working Prototype 1.0, the Prototype 2.0 design, full documentation and in-house software. A partner brings production, supply chain and market access; deal structure and investment size are open. Demonstrations and sample exposures by arrangement.