A clone of the original DanceDanceRevolution GN845-PWB(B) Stage I/O board.

Github project Latest firmware Schematic diagrams Mechanical drawings

BD845-PWB-Front PCB Front layer


This board was designed as a drop in replacement clone board for the Konami GN845-PWB(B) Stage I/O board.

It emulates the original DDR Stage I/O communication protocol boot sequence allowing to run the game without an IO Check Bypass. Sensor masking is also supported. Other protocol features are currently unknown.

It also provides additional features such as debouncing and a Light-On-Press mode that lights up the arrow light when pressed without the need of an external lights driver board.

The board can also be re-programmed with a custom/updated firmware.

If you have a Python2 system it will not pass the I/O check at startup with original games with this board. The board currently does not support Python2 games boot I/O check.

If you have this board

  • Identify your version by looking at the version written under the logo. If you don’t have the latest version you can still get schematic diagrams from the changelog page.
  • Read the installation guide if you want to know how to install it correctly.
  • Read the FAQs which will answer to a lot of your questions.

BD845-PWB-Back PCB Back layer

Tech specs

Input voltage (recommended) 12V
Input voltage (limit) 9-15V
Power consumption (idle) 1 0.22W
Light power (max) @ +12V 15W
Light driver current (max) 1.25A
Output response time (max) 2 50uS
Width 110mm
Length 185mm
Height 15mm
Weight 90gr
Mounting hole diameter 4mm
Product code 001

Pinout diagram


DIP switches

On the bottom side of the board there are four DIP switches that allows you to configure some of the board parameters.

To turn ON an option put the corresponding toggle in the up position corresponding to the ON text. The lower position corresponds to OFF.

Check the installation guide to know the proper configuration based on your cabinet setup.


Light on press

When ON the panel light will light up when the panel is pressed. This way you don’t need an external lights driver.

When OFF the lights will be controlled by the external lights driver which can be, for example, the KSYS573 for original DDR games or a LumenAR for Stepmania setups.

Boot mode

When ON the BOOT0 pin of the STM32 MCU will be tied to +3V3. This puts the board into a forced program mode.

When OFF the BOOT0 pin of the STM32 MCU will be tied to GND. This puts the board into run mode.

In almost any case this must be set to OFF. Refer to the official STM32 documentation for more information about the BOOT0 pin.

If this option is set to ON the board will not work! For normal operation it must be set to OFF.


When ON the sensor debouncing will be enabled. When sensors are released they will still be considered pressed for an additional 4 milliseconds.

When OFF the sensor debouncing will be disabled.

What is debouncing?

Some games like Stepmania supports software debouncing. If software debouncing is performed by the game already it is recommended to set this option OFF.

Legacy mode

When ON the board will listen for original DDR boot command and reply to it. This is required to pass the IO Check on original DDR games.

When OFF the board will ignore the DDR boot command.

  1. Calculated when the board is idle with all lights and sensors off. 

  2. This is the time required for the output to react to a change of a sensor input.