-
Notifications
You must be signed in to change notification settings - Fork 55
Building a binary
-
Make sure you have CRuby (MRI) because "Static type checking" by Steep will be invoked in the build process
-
Setup Raspberry Pi Pico C/C++ SDK
- Follow the instructions on https://github.com/raspberrypi/pico-sdk#quick-start-your-own-project
- Make sure you have
PICO_SDK_PATHenvironment variable
- Make sure you have
- Follow the instructions on https://github.com/raspberrypi/pico-sdk#quick-start-your-own-project
-
Clone the
prk_firmwarewherever you likegit clone --recursive https://github.com/picoruby/prk_firmware.git # Don't forget --recursive -
Setup (for the first time only)
cd prk_firmware/ ./setup.sh -
Build
cd build/ cmake .. makeNow you should have
prk_firmware-[version]-[date]-[hash].uf2file inprk_firmware/build/directory.
You may want PRK Firmware not to be a mass storage device in case that your employer doesn't allow you to bring a USB memory 🙈
If so, you can build a binary including your keymap.rb in this way:
-
Clone a keymap repository, for example, "meishi2" which is a 2x2 matrix card-shaped keyboard in
keyboardsdirectorycd prk_firmware/keyboards git clone https://github.com/picoruby/prk_meishi2.git -
(Optional) Edit
prk_meishi2/keymap.rbas you wish -
Build with
cmakeandmakecd prk_firmware/keyboards/prk_meishi2/build cmake -DPRK_NO_MSC=1 ../../.. make(Defining PRK_NO_MSC macro is going to avoid implementing the mass storage feature)
Now you should have
prk_firmware-[version]-[date]-no_msc.uf2file inprk_firmware/keyboards/prk_meishi2/build/directory which includes your keymap in code.
You can also use docker to build:
docker build -o keyboards --build-arg KEYBOARD=prk_meishi2 .
- Getting started
- Keyboard features
- Keycodes (ja)
- Mouse (ja)
- Layers and mode key (ja)
- Debounce
- Composite key
- Split-type keyboard
- Keyscan matrix
- Num Lock, Caps Lock and Scroll Lock
- Useful methods that make you free
- BIOS mode
- Other features
- Examples
- Development
- Contribute to the Wiki
- FAQ