A 4-axis stepper motor driver for creative coders

Limited items in stock

View Purchasing Options
Oct 01, 2020

Project update 3 of 14

[Video] Programming Environments and Application Demos

by Kanta

Hello everyone.

In this update I’d like to show you a few examples of STEP400 running in different programming environments and applications.

Why OSC Protocol?

Many communication-capable stepper motor drivers use industrial Ethernet. Standards such as PROFINET®, EtherNet/IP®, EtherCAT®, Sercos III and POWERLINK®, for example, are used to control them with the corresponding software.

In contrast, STEP400 communicates using the Open Sound Control (OSC) protocol, implemented with standard Ethernet. What software can this be used with? Well, because OSC is a simple specification, it can be controlled by almost any programming environment that can handle networking. Node.js and Python, for example, have libraries that handle OSC.

Below are some of the languages we’ve used in the project, as well as some actual demo videos from beta testers.

Coding Environments


Max, (or Max/MSP/Jitter), is a visual programming environment for audio and multimedia. Max has a built-in function to send and receive OSC from the beginning. I, myself, usually use Max for testing STEP400 during development.

click to expand

Here’s an in-development version of the sample, which also appears in the introductory video for STEP400.

Max is a commercial software, but there is an open source version called PureData that has the same system:


openFrameworks, aka oF, is an open source toolkit written in C++. I’m a fan of Zachary Lieberman, one of the authors. oF runs on a variety of environments including Windows, Mac and Linux. Next to Max, oF has been the most popular toolkit used in STEP400 projects so far. Here’s an example of how to run STEP400 with oF.

This very complicated demo video was created by one of our beta testers, Mitsuru Tokisato. Mitsuru does R&D at Yamaguchi Center for Arts and Media, a large new media art center, and at the same time is an artist who creates works that synchronize images and reality. (He is also a curing tape fanatic). This video shows a real object moving in synchronization with the pre-recorded video, with oF running on the Raspberry Pi, playing back the video, and sending messages to STEP400 at the same time:


Unity, which is also a well-known game engine, is another environment that is often used in real projects. It supports a huge number of operating environments and is a commonly seen environment in the field. In the campaign video, it’s featured in a scene where it sends an OSC message. You can find the project file we used in it here.


TouchDesigner seems to be opening up a new scene in visual programming with its stability and video-focused performance. I have not used it myself in a project, but one of our beta testers, Hitsuji, made a beautiful demo of it

Hitsuji is an artist who works with stoic elements, while also working on hardcore hardware projects at backspacetokyo. This is a coincidence, but for unknown reasons he also uses curing tape. Mitsuru and Hitsuji were classmates in college, so it’s possible that this may have affected them in some invisible way.


These applications were tested by Mitsuru. Both of them seem to be commonly used in performances or installations that have a solid timeline.



Next post

It seems that this update has transformed into a curing tape feature by accident…

Next time I’m going to visit a mechanism company I often work with and dig deeper into a homing sensor and structures around it. Talk to you then!

Sign up to receive future updates for STEP400.

Subscribe to the Crowd Supply newsletter, highlighting the latest creators and projects