Seriously, thank you! The NIBBLE has been a passion project of mine over the past year. I've been using a NIBBLE in its various stages of development and think it's a great keyboard that you'll love. I've designed and assembled the kits during my free time, and I want to make sure you have a great experience. If at any point you hit a snag or have a question, feel free to let us know.
- NIBBLE case build guide
- Default Keymap
- NIBBLE Diode Key (AKA which diode connects to which switch)
- QMK Firmware
- Basic Skills: Soldering - Make sure you're prepared to solder your keyboard kit!
- Another Great Soldering Guide
- Check the quality of your soldering joints!
- How to use a DMM - Important if you need to troubleshoot your build!
- Firmware Flashing Guide
Item | Qty. | Image |
---|---|---|
Standoff, M2x3 | 13 | |
Standoff, M2x10 | 2 | |
Screw, M2x3 | 26 | |
Screw, M2x6 | 2 | |
Screw, M2x10 | 2 | |
Machined Knob | 1 |
Item | Qty. | Image |
---|---|---|
1N4148 Diode | 73 | |
0.1μF Capacitor | 2 | |
330Ω Resistor | 3 | |
IC Socket | 2 | |
IC (74HC138N) | 2 | |
Reset Switch | 1 | |
WS2812B LED | 10 | |
TRRS Jack | 1 | |
Rotary Encoder | 1 | |
Big RGB LED | 1 | |
Breakaway Header Pins | 40 |
Item | Qty. | Image |
---|---|---|
Top PCB plate | 1 | |
Bottom PCB plate | 1 | |
Middle acrylic spacer | 1 | |
Top acrylic guard | 1 |
- PCB-mount switches (Cherry MX footprint)
- PCB-mount stabilizers. Snap-in or screw in both work. Split space requires 5x 2u stabs. You’ll want 2x 2u stabs, one for each spacebar, along with 3x additional for left shift, enter, and backspace. If you’re going with the 6.25u spacebar, you’ll need 1x 6.25u and 3x 2u.
- Keycaps: (black set pictured in product photos) (white set in product photos)
- BIT-C or other Pro Micro compatible MCU
- [OPTIONAL] 0.91" 128x32 OLED Display
- [OPTIONAL] FR4 switch plate
- [OPTIONAL] Qty. 144 Mill-Max 0305, 3305, or 7305 hot-swap solder sockets
- Fine-tip soldering iron & solder
- Needle nose pliers
- Phillips #0 screwdriver
- Snips for cutting leads
- Rubbing alcohol
- [Recommended] DMM/Multimeter
- [Recommended] USB Current Meter
- [Recommended] Small file, for cleaning up acrylic interferences, rough edges, etc
Steps marked [OPTIONAL] aren't required for the base kit, but may be needed depending on what you choose to include in your build.
Recommended resource: soldering 5050 SMT LEDs
Solder the 10x WS2812B underglow LEDs. Start by tacking down one corner, and then soldering the remaining 3 leads. After soldering, clean with rubbing alcohol.
This step is only required if using the optional big LED in place of one of the macro keys. Bend and solder R1, R2, and R3.
After soldering, clean with rubbing alcohol and use the snips to clip the leads as close to the PCB as possible.
Fit and solder the reset switch as shown below.
After soldering, clean with rubbing alcohol.
Fit and solder the two IC sockets. Match the notch in the socket with the one on the PCB. After soldering, clean with rubbing alcohol. Note: if you accidentally solder one or both sockets backward, don't panic! The sockets are passive components and will work in either orientation. The notches make it easier to insert the IC in the right direction, so just make sure to insert the IC in the correct direction later on in the build.
Fit and solder the two capacitors.
After soldering, clean with rubbing alcohol and use the snips to clip the leads as close to the PCB as possible.
Bend and fit the 1N4148 diodes. In order to get uniform placement of the diodes, I recommend using a diode bending tool. You can buy one or 3D print one. Here's a link to my favorite. Bend the leads inward to hold the diodes in place when the PCB is turned upside down. Begin by soldering one side of the diodes and adjust the diode alignment to your liking before soldering the second lead.
There is one special case – the second to last diode has a top-mount pad, in order to fit the expansion jack below. Cut one lead as shown below, so that it rests evenly on the PCB fit into the mounting hole.
Solder the short end of the diode that was just trimmed on the top side of the PCB. Once all diodes are soldered, it should be virtually unnoticeable from the rest. After soldering all 72 diodes, clean with rubbing alcohol and use the snips to clip the leads as close to the PCB as possible.
If building with the optional TRRS jack, decide which side is preferred for the TRRS connection. Carefully snap out the acrylic filling the TRRS cutout from the support layer by using a sharp knife or a pair of sidecutters. Note that the acrylic is quite brittle, so take your time, and do this step slowly, with care!
The TRRS jack is soldered on the underside of the board, which is the same side as the underglow LEDs. Place the TRRS jack in the location chosen and test fit it with the acrylic support. Trim more of the acrylic support, if necessary. If building with the TRRS jack on the right side of the keyboard (circled in solid red in the image above), double check that the jack sits flush. If not, trim the very last diode so that the jack sits flush with the board.
Carefully solder each of the 4 pins of the TRRS jack.
It's highly recommended that you flash the MCU (Bit-C, Pro Micro, or Bit-C PRO) before soldering it so you can be sure it's working properly. Jump to step 21 to flash QMK firmware.
Use header pins to solder the MCU to the keyboard. Fit and solder the BIT-C or Pro Micro MCU as shown below using 0.1" male header pins. Solder both the MCU on the top and the bottom (both ends of the header pins). After soldering, clean with rubbing alcohol and use the snips to clip the pins as close to the PCB as possible.
If building with the optional rotary encoder, big LED, or OLED display, in place of the programmable macro keys, fit and solder each in the position each shown. After soldering, clean with rubbing alcohol and use the snips to clip the pins as close to the PCB as possible. Note that it is not necessary to solder the large side support pins on the rotary encoder. Do not clip the large support pins on the encoder.
After soldering, clean with rubbing alcohol and use the snips to clip the leads as close to PCB as possible.
Carefully bend the IC leads inward so that they are the width of the socket. It helps to set the IC on its side on a flat surface and use a tool to bend all leads at once.
While supporting the back of the PCB with one hand, push on the top of the IC using your thumb until it sits flush in the socket. If you feel leads bending, stop and carefully straighten them before continuing.
The NIBBLE PCB includes guide marks for the switches and stabilizers to make their placement easier. The center of each switch lines up with a letter for a particular layout. The tables below show which markings to follow based on key configuration. Familiarize yourself with the standard layout and the function row options.
It's highly recommended that you test each key at this point before continuing. If you haven't already, Jump to step 21 to flash QMK firmware. Use a keyboard tester (using via in Test Matrix mode is recommended) and short the switch pads for each switch using tweezers, a clipped lead from earlier, or something else conductive. If there is an issue, it will be much easier to debug now before everything has been soldered and assembled.
Caps lock
Guide Mark | Layout Option |
---|---|
A | Stepped 1.75U Caps Key |
B | Standard 1.75U Caps Key |
Left modifiers
Guide Mark | Layout Option |
---|---|
C | 3x 1.25U Modifiers |
D | 2x 1.5U Modifiers |
Spacebar
Guide Mark | Layout Option |
---|---|
E | 6.25U spacebar Only compatible with "C" due to size |
F | 7U spacebar Only compatible with "D" due to size |
G | 2.75U + 1.25U + 2.25 split spacebar Only compatible with "C" due to size |
Right modifiers
Guide Mark | Layout Option |
---|---|
H | 3x 1U Modifiers |
I | 2x 1.5U Modifiers Recommended when using "G" as the FN key is connected in both locations and cannot be programmed as two individual keys. |
Left Shift
Guide Mark | Layout Option |
---|---|
J | 2.25U ANSI |
K | 1.25U + 1U ISO |
Enter Key
Guide Mark | Layout Option |
---|---|
L | 2.25U ANSI |
M | 1.25U + 1U ISO |
In the locations shown, screw the M2x3 standoffs into the TOP PCB plate. Fasten using 13 M2x3 screws. Use pliers to hold the standoff steady while tightening the screw. Do not overtighten! This step is extra important if you are building with a plate, since it's more difficult to access the screws with the plate in place.
Snap in the PCB-mount stabilizers as shown below. The tab goes in the big hole, and the retaining clips go in the small holes. The stabilizers will only snap in one way. Make sure the stabilizer is fully seated, or the keycap won't move properly once it's installed. If using screw-in stabilizers, do not use the included washer between the screw and the PCB. The acrylic will not seat properly on top of the washer.
If building with hotswap sockets, drop one into each plated lead hole and affix with tape (masking or electrical tape works well Alternatively, insert them onto each lead of the PCB mount switch before proceeding.
If you are using 5-pin PCB mount switches, they may take some force to insert. This is by design. For PCB mount switches, a tight fit makes the switches more stable. Snap in by supporting the back of the PCB, and then pushing hard on the top of the switch. It helps to use a spare keycap on the switch to take some of the pressure off your thumb. After snapping the switch in, make sure it's sitting flush against the PCB.
Make sure each switch pin has enough solder to form a nice solid joint.
Make sure the acrylic spacer sits flat against the PCB plate. Check for interreferences due to leads or solder joints. Trim if needed.
If you are assembling with the nullbits stacked acrylic case, stop before the next step and follow the case build guide so that you don't have to take your board apart to install the case.
Place the bottom PCB plate on top of the acrylic spacer. In the same locations where the 13 standoffs were installed, fasten with 13 M2x3 screws. Do not overtighten!
Fasten using 2 M2x10 screws. Use pliers to hold the standoff steady while tightening the screw.
Fasten using 2 M2x6 screws. Don't overtighten these, as it can crack the top guard.
Follow the Firmware flashing guide to flash the board's firmware. Note that the firmware files and flashing process differ between Pro Micro/Bit-C (AVR) and Bit-C PRO (RP2040)!
Helpful reference pinouts:
MCU Pinouts
OLED Pinout
None of the keys are working
- Is the firmware loaded?
- Try with a different USB cable, USB port, and PC.
- If you soldered the LEDs, check that none have been soldered backward. The keyboard will not work if an LED was mistakenly soldered backward.
- Check the direction of the diodes. The back bar should be facing upwards.
- Check the direction of the ICs. The keyboard will not work if they are in the socket backward.
- Check that there are no shorts and that the keyboard is powering up properly.
A single key is not working
- Check that the switch is soldered properly at both pins.
- Bypass the switch by shorting the two pads with tweezers. If that works, the switch is to blame and should be replaced. If it does not, the diode soldering is likely the issue. You can use the diode key to match diodes with a switch!
- Check that all of the diodes are soldered properly at both pins.
- Check that the keymap you are using is defined correctly and matches your keyboard layout.
A whole row is not working
- This is usually caused by a cold solder joint at the Bit-C. Check that all pins on the MCU are soldered properly.
- Check that the proper rows and columns are set in QMK config.h
A whole column is not working
- Check that all pins on the MCU are soldered properly.
- Check that the proper rows and columns are set in QMK config.h
- Check that all pins on the ICs are soldered properly.
The rotary encoder is not working
- Check that all pins on the rotary encoder are soldered properly.
- Check that the A and B pins are set in QMK config.h and that ENCODER_ENABLE = yes in QMK rules.mk.
The OLED is not working
- The OLED is not enabled in the default firmware. Load the 'oled' firmware, available on the QMK repo.
Two or more keys are swapped
- Check that the keymap you are using is defined correctly and matches your keyboard layout.
The underglow LEDs are not working
- The LED underglow is on and set to red by default. If all of the LEDs are not on, soldering is almost always the culprit! The LEDs are in a series "chain". Symptoms can include: LEDs not turning on after a specific LED, LEDs flickering, LEDs changing themselves to random colors, or LEDs behaving differently each time you power cycle the keyboard.
- Carefully reflow (remelt) the each solder joint on the last LED that is working properly, along with the first one that isn't, and then power cycle the keyboard. It might take a few tries, and you might have multiple LEDs that need to be touched up.
- The LEDs are in clockwise order, and the very first LED is the one just below the Bit-C.
- Check that the RGB_DI_PIN pin is set in QMK config.h and that RGBLIGHT_ENABLE = yes in QMK rules.mk.
- Check that all LEDs are soldered in the proper orientation.
There's no power
- Check that all LEDs are soldered in the proper orientation.
- Check the direction of the ICs.
- Check for other shorts – solder blobs, leads that were not clipped all the way, etc.
How to I do X in firmware?
- See the QMK docs, or make a post on r/olkb for help.
- Make a post on the r/nullbits subreddit, or join the #firmware channel in the nullbits discord server.
Something else?
- Visit nullbits.co/support/
- Reach out at [email protected]
- Join our Discord!