Setting Up the Brook Zero Pi for a Custom Fight Stick

The Brook Zero Pi is a microcontroller board designed to turn a Raspberry Pi into a fighting game input device. It sits between your buttons and the Pi, handling the input matrix so the Pi just sees standard gamepad reports via USB. You install it inside a DIY fight stick enclosure, wire up your buttons and joystick, flash the firmware, and then configure it through a web interface. That is the basic flow. The manual covers this, but it is not particularly detailed about the things that actually go wrong during setup. I bought three of these boards over the last year for various projects. The first one I wired up took me about forty minutes because I was reading the documentation backwards — I had already soldered the wires to the GPIO header before realizing I needed to check the pinout against the specific revision of the board. The second one went smoothly. The third one revealed that the micro-USB port is a bit flimsy if you are constantly plugging and unplugging for firmware updates. I switched to using a mini-USB bridge adapter after that. The manual tells you which pins correspond to which functions. It lists the default GPIO assignments for the standard 8-button plus start/select layout, plus the analog inputs for a 6-axis joystick if your Pi model supports it. What the manual does not emphasize enough is that the firmware configuration file lives on a small FAT32 partition that appears on your computer when you connect the board. You do not need an SD card reader or any special tools to edit button mappings. You just open the config file in a text editor, change the pin assignments, save it, and disconnect the USB. The board picks up the new config on the next boot. This alone saves a lot of back-and-forth compared to older Brook boards that required you to upload configurations through a desktop application.

One thing I ran into that is not obvious from the manual: if you are using a 6-axis Hall effect joystick module, the Zero Pi only reads the X and Y axes natively. The Z-axis and twist axis require additional wiring to specific GPIO pins that the default firmware does not map by default. I spent about twenty minutes troubleshooting why Tekken 8 would not register any gyro input before I realized the board simply was not exposing those axes in the HID descriptor. The workaround was to enable the extended mapping mode through the web configuration interface, which is accessible at 192.168.4.1 when the board is in AP mode. Once I turned on the extended mapping option and reassigned the Z and twist pins, everything worked. The manual mentions this option in passing but does not walk you through it step by step. Another detail worth noting is the power situation. The Zero Pi draws power from the Pi's USB port, but when you have a full setup with backbox buttons, a screen, and a Hall stick all connected, the 5V rail can sag enough to cause random button ghosts or the board dropping off USB mid-session. I solved this by feeding power directly to the board's VIN pin from a separate 5V 2A supply instead of relying on the Pi's USB power delivery. It is not something the manual warns about explicitly, but it is a common issue if you are building anything more than a basic four-button layout. The firmware itself is updated through the same web interface. You download the latest .bin file from the Brook website, copy it to the board's partition, and trigger the update from the settings page. The process takes about ninety seconds and the board reboots automatically. I have found that using the web updater is more reliable than trying to flash it through the command line, especially on older Raspberry Pi models where the serial connection can be finicky.

If you are building a simple two-button or four-button stick for casual play, the Zero Pi is straightforward enough that you will barely need the manual beyond the initial pinout chart. For anything more complex — six-button layouts with turbo functions, a ball tracker, or gyro aiming — you will find yourself going back to the configuration page repeatedly to tweak mappings. The web interface is functional but not polished. Some of the dropdown menus are slow to load, and the button test page sometimes lags by a second or two when you are rapidly pressing inputs. This is a minor inconvenience rather than a dealbreaker, but it is worth knowing about before you spend an evening calibrating everything.

Get the Full Details

Brook ZERO-PI Easy Fighting Board User Guide - Manuals+
Brook ZERO-PI Easy Fighting Board User Guide - Manuals+