MarketingMax/content/blog/atreyu-keyboard.md
2024-02-25 11:10:30 -07:00

58 lines
3.3 KiB
Markdown

---
title: "Atreyu keyboard Build"
description: "Creating a working ergonomic keyboard. From files to physical."
date: "2023-10-1"
---
![atreyu complete](/keyboards/completeatreyu.jpg){.banner2}
### It started with an existing keyboard
It all began with the [lily58](https://www.littlekeyboards.com/collections/lily58-pcb-kits/products/lily58-pro-pcb-kit). An ergonomic keyboard that has 58 keys. I loved the design and layout. But it wasn't portable. It required a large amount of desk space to function comfortably with palm wrests and wires running everywhere to connect the two halves of the board and the board to the computer.
I began to browse around for other options. A portable, wireless, lily58 keyboard. Did such a thing even exist?
![lilly banner](/keyboards/lillybanner.jpg)
### Finding the right project
I found [this post](https://kbd.news/Atreyu-Rev2-MX-1911.html). Which lead me to the extremely well documented [github project](https://github.com/climent/atreyu/tree/main/pcb/v2-choc). But there was a huge problem. Where do I buy the keyboard? Where do I buy the parts?
**There are none!**
You need to fabricate and assemble this keyboard from the files on github.
### Exporting the cutter files and fabrication
Using [KiCad](https://www.kicad.org/) (An open source cad program for linux) I opened, customized and finally, after much reading and tweaking, exported the cutter files. Cutter files are used by PCB manufacturers to produce PCBs. I uploaded the files to Elecrow, a manufacturer in China. Then waited patiently for the PCBs to arrive in the mail.
### Building and programming
Once the PCBs showed up, I began soldering. In short order everything was built and ready to go. Except the firmware. There were example firmwares in the source repository but I wanted some specific layers, macros and the Dvorak layout. To get all these features I had to build them using the ZMK firmware.
Understanding the ZMK firmware was a challenge. The way you program the keyboard is by building out header files in c. The documentation is decent but understanding what its doing and how its happening is challenging. One easy part of the project is the brilliant usage of Github Actions by the ZMK developers. Every time a commit is made and pushed to github, it builds the firmware for you automatically. This saves a lot of hassle and makes building keyboard firmware a lot more accessible.
[After much trial and error](https://github.com/stimularity/zmk-config/commits/main) the keyboard was ready for action.
![zmk config example](/keyboards/zmkconfig.png)
Example of zmk header for Dvorak layout
### Blank Keycaps
At first the blank keycaps were a cost saving measure. Keycaps without legends are considerably cheaper. But after some time using them, I have come to love them. Despite being able to touch type people generally still look at the keys frequently for numbers and symbols. Without any reference, you learn to touch type them as well. Ultimately it has made me a faster typist.
# My first build with the Atreyu PCB
Used a large battery which I drew a mutant frog on the tape.
![another atreyu](/keyboards/anotheratreyu.jpg)
# First build and second build
![atreyu no caps](/keyboards/atreyunocaps.jpg)
![atreyu various switches](/keyboards/atreyuvariuswitches.jpg)
# Atreyu Compared to lily58
Same layout, different designs
![comparison](/keyboards/lilyandatreyu.jpg)