Skip to content

oberien/ergodox-ez-neo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ergodox EZ neo

This is an implementation of the German neo-layout for the QMK firmware for the Ergodox EZ Keyboard.

Features

Neo:

  • no userland neo layout required
  • supports Caps-Lock via pressing both Shift keys at the same time
  • supports lowercase ß and uppercase
  • supports Unicode (neo layers 5/6) on Linux via ibus
  • keypad on Layer 4 sends keypad keycodes
  • Num-Lock is always enabled
    • if it is disabled, it'll be enabled again by sending a Num-Lock key press
    • required by neo layer 4 keypad
  • sends Win+Shift+(1-0) instead of Win+Neo2 characters to support i3-wm move to workspace
  • on layer 5 writes capital Greek letters if CapsLock is active
  • button to switch sent keycodes to support both userland de and us keyboard layouts

QWERTZ / QWERTY:

  • qwertz for gaming such that key remapping isn't required for each game
  • qwertz / qwerty switch (via same switch to toggle de / us for neo)

Steno / Plover:

  • layer for English stenography
    • requires userland-driver Plover
    • uses GeminiPR protocol for English
  • support for both English and German (English via TX Bolt and German via GeminiPR?)
  • (onboard translation not possible due to very small flash of the keyboard)

Others:

  • F1-F12 Keys, Media Keys and Mouse Keys on extra layer
  • NKRO enabled
  • correct tri layers for neo layers 5/6 (manually implemented, not using update_tri_layer_state)
  • Applies the qmk/qmk_firmware#2710 patch to allow rolling <> and similar
  • Switch between UC_WIN and UC_LNX
  • Compose onboard

RGB Matrix / Lighting:

  • different RGB light per layer
  • for the F-Media and Steno layers only light up used keys
  • add special lighting for qwertz / qwerty

Build

  1. Install an environment for AVR or/and ARM development as described in https://docs.qmk.fm/.
  2. Clone the Ergodox EZ fork of qmk_firmware by zsa, making sure to also fetch submodules (--recurse-submodules) from https://github.com/zsa/qmk_firmware/.
  3. Copy this repository's src folder to qmk_firmware/keyboards/ergodox_ez/keymaps/neo-oberien.
  4. Change directory to qmk_firmware.
  5. Setup QMK's environment by following the instructions at https://docs.qmk.fm/#/newbs_getting_started?id=set-up-your-environment.
  6. Test that the environment is completely set up by running make ergodox_ez:default.
  7. Actually build this repository's firmware by running make ergodox_ez:neo-oberien.
  8. Install and set up the flash tool by following its guide at https://ergodox-ez.com/pages/wally.
  9. Flash the firmware

On Arch Linux:

pacman -S base-devel gcc unzip wget zip avr-gcc avr-binutils avr-libc dfu-util arm-none-eabi-gcc arm-none-eabi-binutils arm-none-eabi-newlib git dfu-programmer dfu-util
git clone https://github.com/zsa/qmk_firmware/
cp -r src qmk_firmware/keyboards/ergodox_ez/keymaps/neo-oberien
cd qmk_firmware
sh util/qmk_install.sh
make ergodox_ez:default
make ergodox_ez:neo-oberien
pikaur -S zsa-wally
zsa-wally

Related Work

QMK Links:

Keyboard Layouts:

  • coderkun_neo2: neo-layout with userland driver active; writes qwertz characters to be mapped by the userland driver (the PMN layer writes neo directly); Layers 1/(2)/4

  • neo2--tschulte: neo-layout in firmware; Layers 1/(2)/3/4

  • osx_neo2: Neo2 for OSX; All in all pretty good; Layers 1/2/3/4, QWERTY, Fn

  • not-quite-neo: Defines neo for both Planck and Ergodox Infinity with tradeoffs; A lot of macro magic; Layers 1/2/3/4, Fn

  • Discussion around Ergodox Neo2

  • Neo for the Maltron

  • German: default German keyboard layout for the Ergodox EZ

About

Modified neo2 Keyboard Layout for the Ergodox EZ

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published