86. Expansion Boards Overview
The Pinscape expansion boards are a set of printed circuit boards that
you can build yourself to add capabilities to the basic Pinscape
system that runs on the KL25Z. The main functions of the expansion
- An almost unlimited number of high-power outputs for feedback
devices (lights, solenoids, motors, etc) with full PWM brightness/speed/intensity control
- Circuitry for switching on a TV at system startup, for TVs that
don't automatically turn on when the power is connected
- Neater wiring connections for buttons and plunger inputs
Expansion boards vs. Standalone KL25Z
The expansion boards are one way to run the Pinscape software. The
other way is to run it directly on the KL25Z, without the expansion
boards, which we refer to as the "standalone" KL25Z.
All by itself, the KL25Z can handle accelerometer-based nudging and
button input, without any additional circuitry required. The only
wiring involved is the wiring between the KL25Z and any buttons you
want to connect. You can also connect any of our plunger sensors
directly to the KL25Z. The plunger sensor wiring is a little neater
and more self-contained with the expansion boards, but there's no
difference in how you build the sensors.
What the KL25Z can't do well on its own is controlling feedback
devices. There are three big limitations on the bare KL25Z's
capabilities in this area:
- It has a limited number of GPIO pins (that is, electrical
connections to the outside world). These pins have be shared among
all of the Pinscape functions (button inputs, plunger inputs, IR
remote control devices, and feedback outputs). Every button you
attach takes away a pin you could have used for a feedback device, and
vice versa. In total, you have about 40-odd pins that you can assign
as either buttons or feedback devices, so if you have a typical
complement of about 20 buttons, you can have at most about 20 feedback
devices. That's a very tight budget for even a fairly modest pin cab:
remember that a set of RGB flashers alone requires 15 of those
- Separately from the limited number of GPIO pins, the device provides
only 10 PWM channels. PWM ("pulse width modulation") is the ability
to control brightness, motor speed, or intensity on an output. PWM
control is a must for lamps and LEDs, and it's also useful for motors.
10 PWM channels isn't even enough to cover a standard set of five RGB
flashers (which require 15 channels: one per red/green/blue color
channel per flasher).
- The GPIO pins can only control a tiny amount of voltage and current
(no more than 3.3V and 4mA, which is barely enough for the smallest
LEDs). External circuitry is required to boost this to a level that's
sufficient to control a flasher LED, motor, or solenoid.
So the biggest difference the expansion boards make is their extensive
feedback device control capabilities. The expansion boards overcome
the KL25Z's limitations on the number of available pins and PWM
channels by adding an external set of PWM controller chips that
provide nearly unlimited additional output ports, all with full PWM
control. The expansion boards also overcome the KL25Z's power
limitations by adding MOSFET boosters on the outputs. A MOSFET is a
type of transistor that can control very high-power loads, so the
MOSFET boosters make it possible to connect all of the standard pin
cab feedback devices directly.
The expansion boards also add circuitry for powering up one or more
TVs at system startup. That's another bit of circuitry that you can
build on your own (the circuit diagrams are included in this guide),
but the expansion boards make it a little easier by integrating it
into the board design.
Pre-built or DIY expansion boards
In the past, there were two options for the expansion boards:
pre-built or Do-It-Yourself. Unfortunately, I don't know of any
pre-built options currently available. The DIY option will always be
available, since the plans are completely open-source and free for
anyone to use.
With the DIY option, you start with a set of circuit board plans that
we provide. The plans are open-source, so you're free to either send
them directly to a circuit board maker for manufacturing, or to modify
them to suit your needs and then have them manufactured. You then
have to buy the electronic components that make up the board (we
provide a complete shopping list, with exact part numbers), and
assemble everything (mostly a matter of soldering the components to
Pre-built: the Pinscape All-in-One board
Oak Micros formerly sold fully-built versions of the expansion boards,
but they announced in June 2021 that they're no longer offering these.
It sounds like this is permanent, but if you want to see if there are
any updates, check the original announcement on vpforums:
Since the pre-built All-In-One board is no longer an option, the rest
of this section will cover the Do-It-Yourself process. If you
previously bought an All-In-One board, you should refer to the
instructions that came with it instead of this section, since it has
some differences from the DIY design.
DIY: the three-board set
For do-it-yourselfers, the expansion boards are a system made up of
three separate circuit board designs: the main board, the power board,
and the chime board. The boards work together, and each board serves
a different function. You don't have to build the full set; you can
use the boards in different combinations to suit your needs. The main
board is the only one that's required in all systems. The other two
are optional, and you can add one or more of each according to the
number and mix of feedback devices you want to connect.
Which boards do I need?
For most people, I recommend one main board and one power board. That
covers all of the specialized functions like the TV control circuits,
and gives you a total of 65 feedback device outputs: the main board's
dedicated outputs for the RGB flashers, strobe, replay knocker, and
flipper button LEDs, and the power board's 32 general-purpose outputs
for everything else (button lights, contactors/solenoids, shaker
motors, gear motors, fans, beacons, undercab LED strips). This is
enough for a system that includes every feedback device described in
, and still leaves four or five spare power
board outputs in case you can think of anything else (and find room
for it in your cab!).
You might also consider adding one or more chime boards if
you're using any pinball coils or other solenoids that are vulnerable
to rapid overheating. For pinball parts, this applies to almost any
coil-based assemblies designed for the real machines:
, bells, slingshot assemblies, or
bumper assemblies. Flipper assemblies are sometimes safe, but not
always; see Coil Timers
for details. If you do decide
to add chime boards, each board will handle eight coils.
Any chime boards will simply add more ports to your system, so
you'll still have all of the ports on your main board and power board(s).
The chime board isn't strictly necessary even for coil devices, since
the Pinscape firmware can emulate the timer protection via its
"Flipper Logic" feature (also described in
). The main reason to use the
chime board instead of software is that I consider a hardware timer to
be inherently more reliable than a software version. That's not to
say that the firmware isn't also reliable; it's just that software is
inherently more complex, and can fail for reasons unrelated to the
task at hand. The hardware timer is immune to software faults, so
it's almost certain to do its job no matter what else goes wrong in
The interface to the KL25Z. The
KL25Z plugs into sockets on this board. This board is required for
all expansion board systems, since it's where the KL25Z connects,
and you can only use of these (unlike the other boards, where you
can you two or more if you need more ports).
This board provides:
- A pin header for up to 24 button inputs. This is just a convenience
compared to the standalone KL25Z, where the GPIO pins for buttons are
scattered around the headers. This groups all of the buttons into one
- A pin header for connecting a plunger sensor. All of the Pinscape
plunger designs in this guide use a common connector plug layout that
fits this header. As with the buttons, this is just a convenience; on
the standalone KL25Z, the pins for plunger connections are scattered
around, but here they're neatly grouped into one connector that works
with all of the plunger types.
- Outputs (grouped onto a single pin header) for a set of 5 RGB
flashers, with high-resolution, high refresh rate PWM control, for
connecting a flasher panel (a feedback device
consisting of five high-intensity RGB LEDs, usually placed at the
back of the playfield TV). These outputs have sufficient power
to supply two flasher panels in parallel, in case you want to
install one both in the main cabinet and on the backbox.
- A dedicated output for a bright white strobe lamp, which is
another popular feedback device typically deployed along with
the flasher panel.
- Outputs (grouped onto a single pin header) for an additional 16
channels of low-power (20-50 mA) LEDs. This is aimed primarily at
powering four small RGB LEDs for your flipper buttons (one for each
flipper button and one for each MagnaSave button), which leaves four
additional channels that can be used for other small LEDs, such as
front panel button lamps.
- A dedicated output for a replay knocker. This has enough power
handling for a pinball knocker coil, so you can wire it directly
without any other circuitry (unlike, say, an LedWiz, where you'd need
a relay or MOSFET booster for such a high-power device). This output
also has a special timer protection circuit that protects the knocker
from software faults that could leave it stuck on, which is an
occasional problem with PC pinball software that can destroy the coil
by overheating it. The timer protection ensures this can never happen
by shutting off the coil after a couple of seconds even if the
software crashes. See Coil Timers for more about
the timer protection circuit.
- A "TV ON" relay that you can hard-wire to the soft on/off button on
your TV, so that the software can turn on the TV at system startup.
See TV ON Switch.
- An IR transmitter, which can be used to transmit the remote control
codes for your TV to turn them on when you power up the system. This
is a less invasive alternative to the hard-wired on/off button
connection. The IR transmitter can also be controlled from Windows,
so you can make it send whatever IR codes you want at any time.
- Circuitry that detects when the system is powering up, so that the
software can tell when it's time to send the remote control codes or
switch signals to turn on your TVs.
- An IR receiver, which can be used to teach the Pinscape software the
IR codes for your TV's remote control, so that the software can send
the codes via the IR transmitter when it's time to turn the TV on.
The IR receiver can also be programmed to send key presses to the PC
when it receives certain codes, so you can use it as a way to access
more control signals without adding physical buttons to your cabinet.
Adds 32 general-purpose high-power feedback
device control ports, which can be used to control almost any sort
of feedback toy. Each port can directly handle about 5 Amps and up
to about 50V, which is enough for shaker motors, gear motors,
fans, beacons, contactors, and solenoids. They'll also work
just fine with LEDs and lamps, including fairly long lengths of
LED strips (the non-addressable kind, anyway; you need a
separate, dedicated controller for the addressable kind).
Every on the power board port has high-resolution, high refresh rate
PWM control, so these ports provide brightness control for lighting
devices, full color mixing for RGB devices, speed control for motors,
and intensity control for solenoids.
The power board is an add-on to the main board. It's not required,
but most people use one main board and one power board, since
the main board doesn't have any general-purpose feedback outputs
of its own (all of its outputs are for more specific purposes).
Multiple power boards can be daisy-chained. The Pinscape software can
handle up to 128 feedback ports in total, which is enough for three of
these boards if you're not using all of the main board ports. In
practice, one power board is enough for a very decked-out system.
This is another optional add-on to the main board, adding
eight high-power outputs with timer protection circuits, for controlling
chime units and pinball solenoids. These outputs have the same power
handling capacity as the power board outputs, but add cut-off timers to
prevent attached devices from being activated for more than a couple of
seconds at a time. These outputs are exactly like the dedicated replay
knocker output on the main board.
See Coil Timers
for more about why timer protection is helpful
for chime units and some other types of original pinball equipment.
Like the power board, the chime board can be daisy-chained, so you can
add as many of these as you need, as long as your overall system doesn't
exceed the 128-port limit of the Pinscape software. You can use any
combination of chime boards and power boards that suits your system.
Schematics and board layouts
The boards were designed using a CAD program called
. EAGLE works in
terms of schematics and board layouts. A schematic is a symbolic,
visual representation of the components in a circuit and how they're
connected to one another. A board layout is the physical design of
the circuit board, showing the locations of drill holes, solder pads,
copper traces, and so on. The schematic and board layout are really
two views of the same information.
You can download the EAGLE files for all of the expansion boards here:
The downloads are ZIP files containing the following main file types:
- .sch files are the schematics for the boards
- .brd files are the physical circuit board layouts
The files also contain JPEG snapshots of the board layouts and PDF
printouts of the schematics, in case you want to peruse the circuit
plans without going to the trouble of installing EAGLE.
A free version of EAGLE (with some feature limits, naturally) is
available if you want to view the plans interactively. See the
Autodesk site linked above for downloads. Monthly subscription plans
to the premium versions are also available. I recommend installing at
least the free version if you're going to build the boards, so that
you can explore the schematic and board layout files in detail -
that's especially useful if you need to do any troubleshooting or
debugging after building them. Installing EAGLE also gives you the
ability to edit the plans if you want to customize them.
EAGLE is, unfortunately, rather difficult to learn. It has a peculiar
user interface that deviates from many of the Windows conventions.
It's reminiscent in that respect of the Windows ports of some of the
big open-source Linux programs, such as Blender. Eagle makes up to
some extent for its bizarre UI by being powerful and competent, once
you get past the steep learning curve. Fortunately, Eagle is popular
enough that there's lots and lots of help available for it on the Web,
so you're not on your own learning it. Search for "EAGLE tutorial"
for numerous getting-started guides and videos.