An interactive 5×5 kinetic surface that translates manual inputs, images, and natural-language prompts into static physical topographies through 25 motors, distributed control, and a dual-channel local LLM interface. Scroll through six shapes, inspect the research evidence, and download the complete master’s thesis.
Can language become a surface?
A 25-motor experiment in translating images, data, and words into physical topography.
Most objects are designed to hold one shape. MKMS asks what happens when form becomes an output—something a person can describe, compute, and physically reconfigure.
Form usually arrives too late.
Fixed tools resist change
Molds, dies, and jigs are efficient at repetition, but every new geometry can demand new tooling, time, and cost.
Digital ideas stay flat
Generative systems produce abundant digital form. A morphing surface gives those computations a tangible endpoint.
Control can be more direct
Manual sliders, images, and language offer three ways into the same machine—from exact values to qualitative intent.
AI should explain, not improvise
Separating action from explanation keeps machine commands bounded while making interpretation visible to the user.
One surface.
Four coordinated layers.
The research question was not simply “can a pin move?” It was whether mechanics, distributed electronics, software, and a local language model could behave as one understandable system.
Human intention
- 25 manual sliders
- Raster images
- Natural-language prompts
Python application
- Tkinter interface
- PIL preprocessing
- Matplotlib preview
- PySerial dispatch
Distributed firmware
- 5 Arduino Mega boards
- 5 actuators per board
- SET parsing and homing
Physical topography
- 25 NEMA-17 motors
- Lead-screw displacement
- 0–200 mm target range
- Pin becomes one physical pixel in the height field.
- 3D-printed carriage travels along dual guide rods.
- Lead screw converts stepper rotation into vertical displacement.
- NEMA-17 motor provides repeatable incremental motion.
- Bottom limit switch establishes the shared zero reference during homing.
From question
to public prototype.
Frame the gap
Locate a hybrid space between industrial pin tooling, kinetic media, tangible interfaces, and AI design tools.
Build one actuator
Iterate motor mounts, pin guides, carriage tolerances, lead screws, and homing geometry.
Scale to 5×5
Arrange modules on a 70 mm grid inside a rigid 20×20 mm aluminum-extrusion frame.
Unify control
Translate three input modes into the same 25-value command contract.
Constrain the LLM
Validate count and range before any command crosses the hardware boundary.
Evaluate in use
Run image, prompt-category, reasoning, transformation, and exhibition trials.
Begin with a plane.
Every pin is homed against a bottom limit switch. This shared zero makes the surface repeatable enough for stable, open-loop demonstrations.
Give it a gradient.
A left-to-right ramp is a simple test of ordering: the same five heights repeat across every row, producing one coherent incline.
Ask for a hill.
The center rises to 200 mm and falls away in stepped rings. Twenty-five values become a coarse but readable landscape.
Turn the hill inside out.
A low center, a high surrounding ring, and lower edges create crater topology without a CAD model or drawn toolpath.
Make contrast physical.
Two levels alternate across the grid. The stepping is not a rendering error—it is the native visual language of a low-resolution pin surface.
Write with height.
Two vertical strokes and one crossbar form an “H.” Single symbols survive the 5×5 constraint; longer words quickly expose its limits.
From direct instruction
to interpretation.
Move a pin
Twenty-five sliders expose every height directly—useful for calibration, testing, and intentional shaping.
Map an image
Grayscale pixels are downsampled to 5×5 and mapped linearly from 0–255 intensity to 0–200 mm.
Describe a form
A local LLM interprets intent, then produces one validated command containing exactly twenty-five bounded values.
Digital input.
Physical relief.
Image tests preserved coarse gradients, edges, and radial structures. Language tests covered basic geometry, constraints, tooling-like surfaces, symbols, and edits to an existing state.





A small grid.
A complete stack.
37 prompt cases shown across the evaluation figures.
These bars count documented examples; they are not accuracy scores. The thesis deliberately avoids claiming a success percentage without a perceptual user study.
Four findings
worth carrying forward.
Global structure survives
Gradients, ramps, peaks, rings, bowls, and other large spatial relationships remained readable after compression to 25 heights.
Fine detail does not
Thin strokes, diagonals, long words, and complex imagery degrade quickly. The grid rewards bold, compressible structure.
Language can edit state
The model performed plausible stateful transformations: mirroring, smoothing neighbour differences, lowering peaks, uniform offsets, and 10 mm quantization.
Reliability comes from boundaries
A strict 25-value format, range validation, fixed controller ownership, and homing made an exploratory AI interface operationally tractable.
One model.
Two separate channels.
Machine-readable
Generates only a strictly formatted, range-checked command. The host rejects malformed or out-of-bounds output before dispatching five values to each controller.
SET [25 values, each 0–200]
Human-readable
Explains the already generated form—peak, ring, slope, alternation, or strokes—but cannot move the machine. Explanation is interface transparency, not proof of semantic correctness.
“The center is highest, with stepped falloff toward the perimeter…”
Tested in public.
The complete system ran at the graduation exhibition for approximately three days, around six hours per day. No major failures were observed during routine repeated use. This was an integration demonstration—not a formal user study.


