TokiLabs Note

A tiny controller for the rhythm game kShootmania made using PCBmodE.

Similar projects worth following
kShootmania is a PC clone of the popular game Sound Voltex. I wanted a controller to play it, but all the existing ones are bulky, expensive, and ship from China. So, I'm creating my own tiny USB controller to use instead. (It's also an excuse to use the awesome PCBmodE software by Boldport.)The Note measures 16 x 9.2 cm, and uses an ATmega32U4, Adafruit Neopixels, rotary encoders, and Sanwa arcade buttons.


  • Part selection - DONE
  • Board design and verification - DONE
  • Firmware - WIP
    • USB CDC serial - working
    • Rotary encoders - working
    • Debounce service - working
    • Neopixel library - working
    • USB HID mouse - working
    • USB HID keyboard - working
    • Button service - working
    • EEPROM configuration
    • configuration via serial
  • Laser cut enclosure
    • Rubber feet and barrel screw part selection - DONE
    • Laser cut order from Pololu - DONE

  • 1 × ATmega32U4 Microprocessors, Microcontrollers, DSPs / ARM, RISC-Based Microcontrollers
  • 12 × Adafruit Neopixels RGB button backlighting
  • 7 × Sanwa OBSC-24KK Arcade buttons
  • 2 × Bourns PEC16-4020F Rotary Encoder

  • It works!

    Hylian01/02/2018 at 07:04 0 comments

    Finally got around to finishing the firmware for this and it works!

    Still need to get USB DFU working and tweak the encoder sampling.

  • Initial Laser Cuts are Here!

    Hylian06/03/2017 at 17:55 0 comments

    The 3mm thick acrylic cuts for the enclosure have arrived from Pololu, and it seems everything's fitting together nicely. Just waiting for the 6mm cuts now.

  • Encoder and Neopixel Test

    Hylian04/24/2017 at 16:25 0 comments

    My PCBs are finally back from the DirtyPCBs fab and the quality is surprisingly excellent! I soldered one up, and the USB, encoders, and Neopixels all seem to be working nicely. The encoder inputs still had a little bounce despite the analog debounce filter I put in, which was a little disappointing. I wrote up a quick and flexible debounce service for the encoders and buttons here, instead.

View all 3 project logs

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates