I/O Expander for LED Arcade Buttons

By PaulStoffregen

2 layer board of 1.70 x 1.70 inches (43.2 x 43.2 mm).
Shared on May 24th, 2017 18:22

I/O Expander

The Monolith Synth Project needed to use a large number of these LED lit arcade buttons.

Dimming of the LEDs was required. Initially I considered using this Adafruit 16 Channel PWM board. But the LEDs in these buttons have integrated resistors which require 12 volts, so 16 transistor circuits and another board for reading the switches would have also been needed.

Instead I designed this board with everything required on a single small size board.

It uses the same PCA9685 chip for 12 bit PWM control on every LED, with mosfet drivers to handle 12V outputs, and also a MCP23017 chip to read the buttons. Every button has a discrete 1K pullup resistor (rather than using the higher impedance on-chip pullups) to help with use in the same cable bundles cross coupling to 12V PWM signals.

Parts Placement

Bill Of Materials

 1   MCP23017 16 bit GPIO                   MCP23017-E/SS-ND
 1   PCA9685 16 channel PWM                 568-11925-1-ND
 1   LP2950-5V LDO Voltage Regulator        296-20933-1-ND
 1   CAT811T Reset Chip                     CAT811TTBI-GT3OSTR-ND
16   FDV303N N-Ch Mosfet                    FDV303NCT-ND
 4   Header, 16x1                           609-3256-ND
 1   Header, 3x2                            67996-206HLF
 2   Connector, Molex 3 pin                 WM4201-ND
 1   Connector, Terminal Block 2 pin        277-1150-ND
 2   Capacitor, 0.1uF, 805                  478-1395-1-ND
 1   Capacitor, 4.7uF, 805                  490-6479-1-ND
 1   Capacitor, 100uF (10-47uF is ok)       399-6648-1-ND
16   Resistor, 1K, 603                      311-1.00KHRCT-ND
 3   Resistor, 10K, 603                     311-10.0KHRCT-ND

Mating Connectors

16   Housing, 4 position                    952-2229-ND
64   Crimp contact                          952-2158-ND
 1   Terminal Block, 2 position             277-1011-ND
 2   Housing, Molex 3 position              WM2001-ND
 6   Cript contact                          WM1114-ND

Monolith Synth

Four of these boards where used in the Monolith Synth project, shown at Tested and Bay Area Maker Faire 2017.


I/O Expander for LED Arcade Buttons

By PaulStoffregen

2 layer board of 1.70 x 1.70 inches (43.2 x 43.2 mm).
Shared on May 24th, 2017 18:22

I/O Expander

The Monolith Synth Project needed to use a large number of these LED lit arcade buttons.

Dimming of the LEDs was required. Initially I considered using this Adafruit 16 Channel PWM board. But the LEDs in these buttons have integrated resistors which require 12 volts, so 16 transistor circuits and another board for reading the switches would have also been needed.

Instead I designed this board with everything required on a single small size board.

It uses the same PCA9685 chip for 12 bit PWM control on every LED, with mosfet drivers to handle 12V outputs, and also a MCP23017 chip to read the buttons. Every button has a discrete 1K pullup resistor (rather than using the higher impedance on-chip pullups) to help with use in the same cable bundles cross coupling to 12V PWM signals.

Parts Placement

Bill Of Materials

 1   MCP23017 16 bit GPIO                   MCP23017-E/SS-ND
 1   PCA9685 16 channel PWM                 568-11925-1-ND
 1   LP2950-5V LDO Voltage Regulator        296-20933-1-ND
 1   CAT811T Reset Chip                     CAT811TTBI-GT3OSTR-ND
16   FDV303N N-Ch Mosfet                    FDV303NCT-ND
 4   Header, 16x1                           609-3256-ND
 1   Header, 3x2                            67996-206HLF
 2   Connector, Molex 3 pin                 WM4201-ND
 1   Connector, Terminal Block 2 pin        277-1150-ND
 2   Capacitor, 0.1uF, 805                  478-1395-1-ND
 1   Capacitor, 4.7uF, 805                  490-6479-1-ND
 1   Capacitor, 100uF (10-47uF is ok)       399-6648-1-ND
16   Resistor, 1K, 603                      311-1.00KHRCT-ND
 3   Resistor, 10K, 603                     311-10.0KHRCT-ND

Mating Connectors

16   Housing, 4 position                    952-2229-ND
64   Crimp contact                          952-2158-ND
 1   Terminal Block, 2 position             277-1011-ND
 2   Housing, Molex 3 position              WM2001-ND
 6   Cript contact                          WM1114-ND

Monolith Synth

Four of these boards where used in the Monolith Synth project, shown at Tested and Bay Area Maker Faire 2017.