Part name | Count | Remarks |
---|---|---|
KLOR PCB | 02 | You can find the files for it here |
ProMicro | 02 | Alternatively, you can use another controller with a similar pinout like the Elite-C, Puchi-C, KB2040 dda. |
MX Key switch | 42 | 40 switches for Konrad / 38 switches for Yubitsume / 36 switches for Saegewerk |
switch socket | 42 | 40 sockets for Konrad / 38 sockets for Yubitsume / 36 sockets for Saegewerk |
diodes 1N4148W | 44 | These are surface mount diodes in SOD123 package. 42 for Konrad / 40 for Yubitsume / 38 for Saegewerk |
1u MX keycaps | 42 | 40 keycaps for Konrad / 38 keycaps for Yubitsume / 36 keycaps for Saegewerk |
OLED module | 02 | SSD1306 128x64 pixel OLED Displays |
reset button | 02 | Alps SKRTLAE010 |
TRRS jack | 02 | MJ-4PP-9 or PJ320A |
TRRS cable | 01 | Alternatively, you can use a TRS cable for half-duplex |
EC11 encoder | 02 | You can use any EC11 encoder, but it will look better if you use a short one, like the EC11N1524402 |
encoder knob | 02 | The design works best with a 2,2cm encoder knob. I'd recommend kilo international knobs with a number starting with 90. You could also use the knob I designed for the KLOR, based on the kilo knob. |
USB cable | 01 | For connecting the keyboard with your PC |
Part name | Count | Remarks |
---|---|---|
MCU sockets | 04 | For socketing your MCU. Highly recommended |
MCU pins | 48 | In combinatin with the MCU sockets |
SK6812 Mini LED (not Mini-E) | 42 | 40 LEDs for Konrad / 38 LEDs for Yubitsume / 36 LEDs for Saegewerk |
Haptic Feedback Module | 01 | Pimoroni Haptic Buzz |
speaker | 01 | Mallory AST1109MLTRQ or Keliking KLJ-1102 |
trackball | 01 | Pixart PAW3204OA. Available at Yushakobo |
level converter | 01 | Needed to use the trackball. You can get it from Yushakobo |
tenting puck | 02 | SplitKB Tenting Puck |
Part name | Count | Remarks |
---|---|---|
3D printed case | 02 | Find the case files here |
acrylic parts | 02 | Three parts and one ring per side |
switch plate | 02 | 1.5mm switch plate |
M2 heat set inserts | 4-8 | 4mm height, about 3.5mm diameter |
8mm M2 screws | 4-8 | |
6mm M2 countersunk screws | 16 | The bottom only supports countersunk screws |
In this version, there are some changes that require slightly different build instructions.
-
You will need to use the KLOR KS-27 case, found here: https://github.com/sadekbaroudi/keyboard-cases/tree/master/KLOR
-
Controller: Solder it on top, with the components facing the pcb. Make sure the VCC/GND pins are in the correct spot! With the case provided: If you are using OLED, your headers should not exceed the standard height of 2.54. If you are not, then you can go much higher.
-
OLED: To place the oled at the correct height, solder the controller, then place the OLED in the through holes. Before you solder, put the pcb into the case and push the oled as far as you can towards the case so that the screen is just below the lip of the hole in the case. If you don't do this, the OLED will be recessed into the case when you assemble it.
-
Important: Given this is not using hotswap sockets, and the controller isn't socketed, you won't have access to the controller once you assemble everything. So, PLEASE confirm the controller is flashed properly before you assemble.
4.1) (optional, but recommended) If you are using the splinky ( https://github.com/plut0nium/0xB2/ ), there are two pads on the back next to pins 7 and 8. You can solder some wires to these two pads and run them under the board through one of the mounting holes or tenting puck holes. This will allow you to hard reset the controller even after you assemble. You can do this by shorting those two wires, and while they are shorted, then short reset and gnd. This will prompt the bootloader reflash.
Here is an overview of where and on which side each component needs to be soldered (click on the image to see a larger version).
To see what component needs to sit where you can take a look at the interactive HTML BOM.
Warning This interactive HTML BOM does show where each component is located, but please still refer to the solder guide above to see if a component needs to go on the top or botom of the PCB.
Be aware that for the stacked acrylic case some components need to be soldered on the opposite side.
Some people mark the top and bottom with tape to keep track of which side is which, as the PCB is reversible.
Beginn with the flat components and progress to the higher ones, ending with the OLEDs and the encoders.
If you choose a layout other than Polydactyl you should remove the unnecessary parts. Use a flush cutter to snip through the support sections. You can also use a boxcutter to carve in grooves, which makes it easier to break on the right spot.
Warning Be very careful with this step, since there is a risk to break the PCB. Probably it would be best to beginn with this step, to avoid loosing already soldered parts.
You can use a file to smooth out the edges, but you should wear a mask while doing this, since the FR4 dust is considered to be toxic.
Warning First flash the microcontroller to make sure it works, before soldering it in.
Unlike most other boards here the microcontroller needs to be mounted on the bottom, with the components facing upwards (to the PCB).
Feel free to use the included header pins, but it's highly recommended to use MillMax low profile sockets.
Place the sockets in the marked spots on the bottom side of the PCB.
You can keep them in place by using masking tape.
Then you can flip the board to solder in the sockets from the top. Flip it again and insert the pins into the sockets.
Note Use tweezers to insert them. Don't apply too much force, you will feel them snap in. After that, you can carefully apply some pressure, using a flat object to make sure they're fully seated.
Now place your microcontroller on the pins (components facing the PCB) and solder it to them.
You can use flush cutters to trim the header pins.
Warning When trimming with flush cutters wear eye protection or hold your hand close above the pins. Otherwise sharp metal pins flying around might hurt you.
Note If you use a layout with three thumbs, instead of four, you need to bridge the 'lost thumb?' jumper below the TRRS sockets on the primary and secondary PCB, since the led chain lost its beginning.
LEDs are very heat sensitive. So it's a good idea to solder the pads on the PCB bottom first and then insert the LED.
While the bottom of the PCB is facing you, insert the LEDs in the holes. The lens should face the table.
This image depicts the correct orientation.
The L shaped pad on the LED need to be connected to the square marked pad.
Note While the orientation is uniform within a half, it differs between left and right.
Warning It's recommended to solder the LEDs in at 220º, since they're pretty heat sensitive. Personally, I had a hard time keeping it below 270º. So my advice would be while soldering the first pad on every LED, try to be really quick. Then solder the second pad on every LED, starting with the first LED. This way they can cool down in the meantime.
Make sure the solder always builds a strong connection between the pad on the LED and the pad on the PCB.
The advantage of soldering in the microcontroller first is that you can occasionally check if all the LEDs work before continuing.
This graphic shows the order in which the LEDs are chained together.
The diodes needs to be soldered on the bottomm of the PCB. Pay attention to their orientation: They have a small line on one side, which should be on the side the arrow on the PCB is facing to.
Apply a small amount of solder on one pad.
Then use tweezers to place the diode on the pads and reheat the solder to secure the diode.
Now you can solder the second pad.
Here you can apply the same technique as used for the diodes: Apply some solder on one of the pads first.
Then place the switch socket in the silk screen markings and reheat the solder. Apply some pressure with a pair of tweezers to make sure the socket is fully seated.
Now solder the second pad.
The reset switches are a bit fiddly to solder. It helps to apply a really thin film of solder to the pads first and use a lof of flux. Then hold the switch in place with tweezers and solder the big pads on the left and right of the switch (they do not fulfill any electrical purpose, but serve to hold the switches in place). If the switch is seated corretly reheat the solder pads under the switch to connect it.
Install the TRRS jack on the top side of the PCB. The place where you should insert it is marked with a white line. You may want to use some masking tape to hold it in place, since you need to solder it on the bottom.
Note Currently, haptic feedback only works on the primary side of your keyboard, which is a limitation of QMK.
Apply some solder to the jumpers on the top to bridge them.
Insert the module from below with the motor facing upwards. Then insert the pin headers from below.
Now you can solder the pins and use a flush cutter to snap of the excess. Remember to hold your hand above them or wear eye protection while doing so.
You can also use a screw and a nut to stabilize the module further. But this step is optional.
Note Currently the speaker only works on the primary side of your keyboard, which is a limitation of QMK. Currently you need to use this PR to make the audio feature work with the RP2040.
Soldering the speaker is pretty simple. Apply a tiny bit solder on one of the pads, use tweezers to hold the speaker in place and reheat the solder. After that apply solder to the other pad.
Note While the hardware side should already work fine, I still need to add the code for the trackball.
TBA
Mount the rotary encoder on the top side of the PCB. It should click into place maybe requiring a firm press. If it's seated correctly solder the pins on the bottom.
Warning Make sure the keyboard is fully functional before soldering the OLEDs, since they're the only components which cover pins, you won't be able to access once they are in place.
First step should be to bridge the jumpers on the top of the PCB next to the OLED.
Note The OLED needs to be as flush to the PCB as possible to fit under the switchplate.
You need to remove the plastic part, which is usually attached to the OLED, from the headers, while keeping the pins. For me the easiest way is to use flush cutters to snap the plastic in half, which allows you to remove the parts easily. You probably need to bend the pins back in place after doing this.
You also need to cover the back of the OLED with electrical tape, to prevent shorts with the microcontroller pins. Especially the top part with the copper traces is important.
Insert the OLED on the top of the PCB. Make sure it sits as flush to the PCB as possible. Maybe hold it in place with some masking tape.
Note You could also temporarily install the switchplate over the OLED, using a few switches. This way you make sure it's exactly in the right spot and rotation.
Solder the OLED into place.
Now use flush cutters to trim the top and bottom pins. Especially the top pins should be as short as possible to avoid interference with the switch plate.
If you use a metal switch plate consider to cover them with electrical tape to prevent shorts.
Note If you need to desolder the OLED or fix its placement just apply a lot of solder to the four pins to connect them. This way you can heat all four pins at once and remove it by gently applying force to the bottom edge of the OLED module. Be really carefull not to use too much pressure, since you could rip off a pad or destroy the OLED (which happens pretty fast).
This is how your finished PCB probably will look like. You can use an old toothbrush and some isopropanol to clean it from residues.
e.g. Pro Micro / Elite-C / Puchi-C
If you have not already flashed the firmware to the microcontroller you should do it now, to make sure everything works, before inserting it into the case.
Here you can find the QMK firmware for the KLOR.
Copy the klor folder into the keyboards directory of your qmk installation.
Then use QMK MSYS (or the command line tool of your choice) to compile it with this command:
qmk compile -kb klor -km default
This will create a file called klor_default.hex in your qmk_firmware folder.
Open QMK Toolbox and locate the klor_default.hex file.
Connect the ProMicro/keyboard and press the reset button (or connect the RST and GND pins on the ProMicro). QMK toolbox should show a connected device.
Press flash in QMK toolbox to flash the firmware on your microcontroller.
e.g. Adafruit KB2040 / Sparkfun Pro Micro RP2040 / Boardsource Blok / Elite-Pi / Sea-Picro
Copy the klor folder into the keyboards directory of your qmk installation.
Then use QMK MSYS (or the command line tool of your choice) to compile it with this command:
qmk compile -kb klor/rp2040 -km default
This will create a file called klor_rp2040_default.uf2 in your qmk_firmware folder.
The first time you need to keep boot pressed, then press reset and release boot. This will open the flash memory of your MicroController as device in your OS.
Copy the klor_rp2040_default.uf2 there to flash it.
Note After flashing the firmware the first time you can access the flash memory by double pressing the reset button on your keyboard or define a software reset key by using QK_boot as keycode.
Here you can find the STL files for the case. I got them printed in PA12-HP Nylon (Multi Jet Fusion printing) by JLCPCB, which seemed pretty reasonably priced, for the level of detail.
Insert the PCB first. Starting with inserting the microcontroller in the cutout at the top.
Then lower it into the case. To make it fit, you probably need to bend a bit the part of the case containing the holes for reset switch and TRRS jack.
The TRRS jack should snap in the provided hole.
Insert the standoffs in the PCB and screw them into the bottom of the case using the countersunk screws.
Now you can insert the plate and screw it to the case using the center standoff.
Here you can find the files for the acrylic parts. Made from smokey acrylic (by a lasercutting service) it will hide the OLED, while still allowing it to shine trough the top layer. It will look best if you can get a pretty dark type, like 7C83 by PlexiGlas (used by formulor.de for example).
If you want to get rid of the shine you can carefully sand the parts with some really fine sanding paper (I used a 2000 sanding pad).
You need to glue the ring to the top right part using acrylic glue (Acrifix for example). Be careful to apply only a really thin layer using a toothpick.
If you choose a case with the KLOR logotype you can emphazise it by retracing it with some sort of white paint marker. Use turpentine or something similar to get rid of the excess paint.
Screw the acrylic parts on top of the plate.
The design works best with 23mm (0.9") diameter encoder knobs. My recomendation would be a knob from kilo internationl with a number beginning with 90 (which means a 0.9" diameter) like the OEDNI-90-4-7 shown here.
This is how the final keyboard will look like. In this picture I use RAMA Grid keycaps in NOCT.