Skip to main content


Tapper is a general purple STM32 + touchscreen in a box with flexible IO for quick prototyping.

The situation is this: You want a microcontroller to read and display some sensor, control some process, or provide some user interface -- the details vary -- and you just want to build one or two but you also want it to be somewhat permanent. I really hate the jumble of wires, and the unreliability of breadboarding, but don't want to go off and design a custom board and enclosure for each thing. I want something that's flexible, but more reliable. It needs to be in a case. It needs to have connectorized IO. It needs to be flexible about providing power, because I don't want to end up with a second power supply to drive the external bits, I just want to plug it in.

On Tapper:

  • All the IO is connected by soldered jumpers between through holes.
  • Each of the three six-pin connectors provides power from one of the power rails (3.3V, 5V, or VIN) based on a solder bridge
  • The touch screen is constant, wired to the same pins, so it works with the same software you used the last time
  • The nucleo-32 dev board provides an on-board ST-link for programming and debugging, as well as a USB serial port

With tapper, and a power supply like this you can get a very portable setup with whatever supply voltage you need.

My first use-case was a spincoater RPM controller. But I've also used it to wire up an I2C sensor and display the reading while allowing a user to switch modes and a few other projects.

More detailed info lives on the github page. There's an example software project, which includes a basic UI widget API for the touch screen. At some point I may expand on this and pull it out as a stand-alone library. The software uses the modm C++ peripheral library, as do most of my embedded C++ projects.