⌨️ Basketweave-S

Assembling a cheap DIY Alice-like keyboard

9 min read

Keyboards

DIY

QMK

Basketweave-S

Hello! In this blog post, we’ll be going through the build process of the Basketweave-S mechanical keyboard.

DIY kit on 42keebs.eu
Build guide
QMK fork

About the board

The Basketweave-S is a 75% mechanical keyboard with Alice-like layout.

Below I’ve listed everything you will need to turn it from a board into a working mechanical keyboard

As for this build, the parts we will be using are the following:
Switches: Durock Lavender, 65g
Lube: Krytox 205g0 and 105 for springs
Films: Deskeys films
Keycaps: ePBT Shadow Version A

The kit comes with:
  • Main PCB
  • Bottom plate (FR4 material)
  • Switch plate (FR4)
  • All electronic components
  • Controller flashed with USBaspLoader
  • 1x EC11 rotary encoder
  • Brass standoffs and screws
  • Acrylic cover

In addition to that, you will need
  • 5x 2u PCB mount stabilizers
  • Keycaps (check for compatibility)
  • 69-71 Compatible switches (5pin)
  • Soldering iron and solder
  • Phillips head screwdriver
  • Flush side cutters
  • No-clean flux for soldering USB-C port
  • USB Type C cable

Color descriptions:

Required
Optional
Tool
Depends

As for my tools, I’m using a TS100 soldering iron.

TS100 soldering iron

Introduction

I’ve always wanted to try out an Alice-style board. I think they look cool. I don’t believe they are any better than a standard keyboard layout from an ergonomical viewpoint, but they have this very nice aesthetic to them. Especially since you can see the components through the acrylic panel, gives it a very nice retro vibe. Also worth noting that the revision of my board is 1.9, and I used the USB-C soldering service that piit79 offered.

As you might have noticed, in some pictures the board is white whereas in others it’s black. This is because I didn’t take enough pictures of the assembly process when I was building it, so I’m using images I took when my friend was assembling his own Basketweave-S at my place.


Soldering the area around the MCU

This part is straightforward, just follow the build guide and make sure to pay attention to the orientation of the components as stated in the build guide.

For inserting the ATmega32a, the pins might be a bit too “wide” around the socket. This is easily remedied by pushing the flat side of the pins against the table so they turn slightly inwards.

MCU

Once you’re done soldering this, we’re ready to move on to installing QMK


QMK

For my QMK setup, I’m using WSL2 with Ubuntu. I mainly develop using Linux/MacOS, WSL2 allows me to run Linux tooling on my main gaming PC.

You might also be wondering, what the hell is QMK?

Prerequisites

This part will cover installing QMK on WSL2 with Ubuntu. Shamelessly copied from QMK’s newbs guide so this may be subject to change.

sudo apt install -y git python3-pip
python3 -m pip install --user qmk
qmk setup

QMK should now be set up.

Building for QMK

In this part we will clone piit’s build of QMK with the firmware for the Basketweave-S and build it.

qmk clone piit79/qmk_firmware
qmk compile -kb 42keebs/basketweave_s -km default

This will output a 42keebs_basketweave_s_default.hex file into ~/qmk_firmware if you installed QMK into the default location.

For Vial

There is a pull request on piit’s fork of QMK for adding Vial support.
QMK fork of piit’s fork, for Vial support

These instructions will help you install Vial support, in case it’s not merged by the time this post is published.

qmk clone IvoPo/qmk_firmware
cd ~/qmk_firmware
git checkout basketweave-s-vial
# -km can either be default or vial
qmk compile -kb 42keebs/basketweave_s -km vial

Flashing firmware

If you’re using QMK Toolbox, you can simply point the Local file to the compiled .hex file. Remember to select ATmega32a for the MCU.

If your Basketweave-S is not showing up as a connected device, try holding the boot button on the top of the PCB to put it into bootloader mode when plugging in the USB-C cable.

QMK Toolbox flashing

A successful flash.

Flashing on Linux using QMK

I haven’t tried this myself, but you should be able to flash it onto the MCU from the command line by running:

cd ~/qmk_firmware
# For QMK
make -kb 42keebs/basketweave_s:default:flash
# For Vial
make -kb 42keebs/basketweave_s:vial:flash

Diodes

My friend's Basketweave-S' diodes

So the MCU works. That means it’s time to put on some diodes!

This part might take a while. There’s a diode for every switch, so there’s 71 diodes (+ a few additional for the encoders). I just put in around 20 at a time and then soldered. Depending on your speed this might take an hour / a few hours. I was very lazy so it took me around 2.5 hours to do.

Stabilizers

Stabs

For the acoustics of the board (yes, keyboard nerds care about that) I wanted to get some premium stabilizers. I opted to use some Durock V2 screw in stabilizers.

To prepare the stabs, there’s a few steps. Let’s start with the “holee mod”.

To summarize - you just put some bandaid in there.

Now to anyone who is not into mechanical keyboards, this might sound pretty stupid. Now that I’ve tested it, I can assure you that it works! The stabilized keys sound so much nicer after. I guess it’s because the balancing wire inside the stabilizer is now neatly cushioned between lubricated plastic and the bandaid.

I also wanted to pamper myself so I got myself some stab foam. You put this between the PCB and the stabilizer to dampen the sound of the stabilizer hitting the PCB when you press the key.

Now after all of that is done, time to screw on the stabs.

Mounting the screw in stabs

Switches

This is the part that most mechanical keyboard enthusiasts hate. It’s called lubing the switches.

Believe me, the first time I heard people do this I thought they were some kind of nutjobs. But I did it for my second mechanical keyboard I modified and noticed a significant difference in smoothness! If you have the time to do it, it’s definitely worth it. I wanted to splurge on this board so I spent a lot of time doing this.

Lubing the stem

Lubing the stem

To lubricate a mechanical keyboard switch, you first take it apart using something called a switch opener. You’ll be able to pop out the individual parts. Here’s what a single switch consists of:

  • Top housing
  • Stem
  • Spring
  • Bottom housing

To save some time lubing the switches, I used a method called bag lubing. That means you open up all the switches and put them in a plastic bag or some kind of a closed container, put in some lube and vigorously shake for around 10 minutes.

Then you do a pass around on the bottom housing, put in the spring, take the stem and put a tiny even coat around it. There’s a saying in the keyboard community that goes “less is more”, simply because it’s annoying to fix an overlubed switch.

Ready for filming

A switch ready to be filmed.

Filming is done to make the top housing sit snug on the bottom housing. I don’t know if this actually makes any difference for acoustics but I decided to do it anyways.

Putting it all together

You may have noticed that the white PCB looks a bit different than mine. That’s because I’m using hotswap sockets. For my friend’s build, at this point we put on the encoders and soldered in the switches.

In my case, since I already soldered in the sockets, I only have to solder in the encoders.

EC11 rotary encoder

After that, it’s time to pop in the switches. I was really lazy with the lubing process. I was basically doing 10 switches at once and then putting them in the keyboard just to see the progress.

Messy desk

The table got pretty messy during the build process.

End result

Here’s some pretty images of the finished build:

Keycaps and encoder

Keycaps

Finished board

Experiences with Alice layout

Footnote

I released this post on the same day I finished the build. I'll update this section (or maybe make a new blog post) once I have used the layout for a bit and have a feel for how I like it.