Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Logo and name

English | 繁體中文 (Traditional Chinese)

An easily customizable controller for most computer rhythm games.

Suitable for multiple games, including:

osu! DJMAX RESPECT V Quaver vivid/stasis
Milthm Rhythm Doctor Sparebeat Polylylyrhythm
Estella In Falsus (theoretically) and more

The overall layout and default keymap are optimized for DJMAX RESPECT V and my own key binding, but any games similar to this are supported. You only need to edit the keymap in ZMK Studio to easily optimize the Rhythmboard for the game you're playing or your preferred key bindings.

Table of Contents

Get Started

Install Firmware
Building your own Rhythmboard from hardware
BOM

Install Firmware

If you're familiar with developing RP2040 microcontrollers or Raspberry Pi Pico, click here for a shorter explanation.
  1. Go to the Actions tab.
  2. Click the latest workflow run.
  3. Find the Artifacts section, locate firmware, and click the download icon on the right to download firmware.zip. If you can't find the Artifacts section, click here.
  4. Connect your board to your computer in BOOTSEL mode (by plugging in the RP2040-Zero while holding the BOOT button).
  5. Unzip the firmware.zip you just downloaded and find the .uf2 file inside.
  6. Drag and drop the .uf2 file into the RP2040-Zero USB drive (likely named RPI-RP2), and you're good to go.

  1. Go to the Actions tab.
  2. Click the latest workflow run.
  3. Find the Artifacts section, locate firmware, and click the download icon on the right to download firmware.zip. If you can't find the Artifacts section, click here.
  4. Press and hold the BOOT button on the RP2040-Zero. DO NOT RELEASE it before plugging the RP2040-Zero into your computer. Once plugged in, release the button. You should see a new USB device appear on your computer, likely named RPI-RP2.
  5. Unzip the firmware.zip you just downloaded, locate the .uf2 file in the extracted folder, and drag or copy it into the USB drive that appeared in the previous step.
  6. Once the copy is complete, the USB drive will automatically disconnect, and the RP2040-Zero will reboot. Your Rhythmboard is now ready to use with the latest features available.

Build from hardware

BOM

  • RP2040-Zero x 1

  • Machined Pin Header (23 pins in total: 9 pins x 2 + 5 pins)

  • Machined Female Header (23 pins in total: 9 pins x 2 + 5 pins)

  • MX profile mechanical switch hotswap socket x 17

  • 1N4148W diode (SOD-123 package) x 17

  • MX profile mechanical switch x 17

  • Keycaps

    • 1u x 12
    • 1.25u x 1
    • 1.5u x 2
    • 2.25u x 2
  • 2u PCB mount stabilizers x 2

1. Prepare and Print PCB

  1. Find the Gerber .zip file here.
  2. Find a PCB manufacturer to make your PCB. JLCPCB is what I use and have tested. PCB Assembly (PCBA) is supported with the given files, but it might not be supported by other manufacturers. If you prefer other manufacturers and wish to use a PCBA service, please configure the necessary files yourself. Not sponsored, but open to sponsorships from anyone (not limited to JLCPCB LOL).

    For the files required by JLCPCB PCBA: the BOM file is located at /PCB/RhythmGameControllerKiCad/production/bom.csv, and the placement/CPL file is located at /PCB/RhythmGameControllerKiCad/production/positions.csv.

  3. Place your order and wait for your PCB to arrive.

2. Solder Everything

Although I used a PCBA service for the SMD parts, if you are hand-soldering, it is recommended to solder the diodes first, followed by the switch sockets.

For THT parts, the workflow I chose is to solder the machined pin headers onto the RP2040-Zero first. Then, use the RP2040-Zero to confirm and adjust the angle before soldering the machined pin sockets onto the PCB.

3. Assembly

  1. Mount the stabilizers.
  2. Mount the RP2040-Zero.
  3. Place the switches.
  4. Mount the keycaps.

4. Install Firmware

Install the firmware onto your RP2040-Zero by following the steps written here.

Default keymap

Check here for better visual effect

Layer 0 (default)

ESC ZMK
Studio
Alt+F9 `
W E R T U I O P
G J
to 1 G J

Layer 1

1 ZMK
Studio
to 3 2
F10 L⇧ R⇧ F11
A
to 1
Layer 2 (Layer transportation)
to 0 to 1 to 0 to 0
to 3 to 4 to 5 to 6 to 7 to 8 to 9 to 10
none none
to 0 none none
Layer 3 (QWERTY DFJK default layout that's the default for most games)
ESC none ALT+F9 `
A S D F J K L ;
V N
to 1 V N
Layer 4 (Hotkeys pad)
ESC none ALT+F9 `
A X C V Z N HOME END
LALT LGUI
to 2 LCTRL LSHIFT
Layer 5~10 (user define)
ESC none ALT+F9 `
W E R T U I O P
G J
to 1 G J

Customize your keymap

  1. Press the "ZMK Studio" key.
  2. Go to ZMK Studio.
  3. Your browser may display a COM port connection pop-up (at least Chromium-based browsers do). Select the COM port your Rhythmboard is connected to. (It's not going to be COM1 or COM2 on Windows).
  4. Customize your key bindings, keymaps, and layers on ZMK Studio as you want.

    ⚠️ Note: Wireless-related options are not supported.

TODOs

  • Upload plate file
  • Create its case

Developed based on theArnoll/ZMK-4x3-Keyboard

About

Rhythm game optimized wired controller that can highly customize with ZMK Studio.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors