With the PIN2DMD project you get a full color LED DMD controller for real and virtual pinball machines. The project was started by Lucky1 and shortly after that joined by Steve45 as co-author. Version 1.X is free for DIY private NON COMMERCIAL use and released under a Creative Commons Attribution-NonCommercial- ShareAlike 4.0 International License.

Due to copyright violations through commercial sales of our software the authors were forced to change the project to allow access to the source code for contributors only with version 2.0. Also a activation key which is bound to the hardware was introduced. Sorry for the inconvenience, but is seems that the hunt for quick money eats the brain of the hunter.

It currently supports:

  • Visual Pinball / PinMame
  • Future Pinball using DMD interceptor DLL from Macro
  • Unit3d Pinball
  • Ultra DMD support (Stephen)
  • PinballX / XDMD support (Tom Speirs)
  • Pinball fx2 support using dmdext from Freezy
  • The Pinball Arcade support using dmdext from Freezy and NoEx
  • Colorized Stern ROMs using SmartDMD inframe and serial sidechannel color switching
  • Frame colorization of all pinball machines using PIN2DMD Editor (please don´t use copyrighted content )
  • WPC real pinball input
  • Stern SAM real pinball input
  • Stern Whitestar real pinball input
  • DataEast real pinball input
  • WPC95 real pinball input
  • Gottlieb real pinball input
  • Stern Spike real pinball input
  • Capcom real pinball input
  • AlvinG real pinball input
  • Spooky pinball real pinball input
  • HomePin pinball real pinball input
  • Data East 128×16 real pinball input
  • WCID automated USB driver installation
  • easy firmware upgrade through USB or microSD

The components cost approximately 100$.

1. The Hardware

A list of the components needed to build a pin2dmd device can be found here

2. The Firmware

Instructions how to install, update or activate the firmware can be found here

3. The onscreen menu

The menu can be activated by holding one of the two buttons (menu/option or Btn1/Btn2 on EVO boards) during boot.  You can also navigate through the menu with these two buttons. You should adjust the rgb sequence of your panels that the boot splash colors look like the picture on top of this page (red left, yellow right) You can also access additional parameters like devicemode, default palette, brightness, display the Unique Device ID etc. It also contains a input test for the real pinball input. You have to run it without a pinball machine connected. It displays which of the input pins 1,3,5,7,11 (and 13 for Nucleo and EVO boards) is connected to ground (2,4,6,8,10,12,14). Here is a picture of the pin layout.


Here is a video of the input test.

4. The pin2dmd.exe tool

The tool is used to configure the controller und upload needed data for the pinball used. It can either run in commandline mode or in GUI mode. More details here

5. Colorization using pin2dmd editor

The latest version of the Steve´s pin2dmd editor can always be found here
Google Drive PIN2DMD Editor
Please install 64bit Java runtime for the 64bit version of the editor.
Editor is used to do colorization and configuring the device.

Here is a short tutorial which is based on the work of CB3, a member of the community.

Introduction and Overview
Chapter 1: Getting started
Chapter 2: Coloring Non-Dynamic Content Scenes in Replace mode
Chapter 3: The draw tool Smart option in Replace mode
Chapter 4: Keyframing a Non-Dynamic Content Scene
Chapter 5: Coloring a Dynamic Content Scene in ColorMask mode
Chapter 6: Keyframing a Dynamic Content Scene
Chapter 7: Testing your project
Chapter 8: Advanced coloring using ColorMask Layered mode
Chapter 9: ColorMask or Replace Sequence mode
Chapter 10: Replace Masked mode

Appendix: Pro-Tips

6. Colorization using pinball browser

To colorize Stern SAM and Stern Spike system ROMs it is recommended to use pinballbrowser. Pinballbrowser is written and maintained by Oga83. The basic steps are described here:
Using Pinball-Browser to colorize your game
Pinball-Browser FAQ

(C) Jörg Amann / Stefan Rinke