PRK Firmware is a framework for DIY-keyboards written and configured in PicoRuby which is an alternative mruby implementation targeting on one-chip microcontrollers.
- A "keymap" can be configured in Ruby which is a concise, readable and happy language
- RP2040 is the target platform microcontroller
- You can write your own "action" which will be invoked when you tap or hold a key.
See Wiki pages: https://github.com/picoruby/prk_firmware/wiki
The author gave a talk about PRK Firmware in RubyConf 2021.
See the video on YouTube.
Japanese talk is available at RubyKaigi Takeout 2021.
- Non-split-type keyboard
- Split-type keyboard
- Symmetrical type. eg) Crkbd
- Asymmetrical type. eg) ???
- UART communication between left and right
- I2C communication between left and right
- Macros
- Media keys
- RGBLED. An example on picoruby/prk_crkbd
- OLED display
- Rotary encoders. An example on prk_helix_rev3/keymap.rb
- Mouse / Trackball
- Debugging over a serial port
- Duplex matrix
Fork, patch and send a pull request.
- It's possible that your Ruby code can't be compiled as you wish
- Remember that "Ruby" in PRK is neither CRuby nor even mruby
- PicoRuby doesn't support some Ruby syntax and may have bugs. It would be great if you send a patch, too!
- Unlike QMK Firmware, prk_firmware repository doesn't include individual keymaps
Copyright © 2021-2022 HASUMI Hitoshi. See MIT-LICENSE for further details.