Thanks to some great questions by reader Chloros, I thought I’d compile a post on some of the things that might not be readily apparent about the Ergodox EZ (at least as far as I’m able) and to point out a couple of cons I’ve noticed. I think my posts so far may have been too glowing in their praise. So I’ll try to be a bit clearer here. Sorry this took so long to get ready.

Does the programming stay with the board? If it gets unplugged or power goes out or I switch computers does anything happen? Can I use it with someone else’s computer?

The programming is part of the keyboard, not a application running on the computer.

It’s fully within the firmware – flashing a new layout means reflashing directly to the board. Power goes out or board gets unplugged? No issue, everything is there still there, nothing erased. All the layers and key assignments stay put and I can switch from my work computer to my home unit with no down time at all. Plug and play. New computer I’ve never used the keyboard with? So long as the standard USB keyboard drivers are up-to-date, I don’t think there’s anything that would affect it. Swapping units has no effect at all on the Dox – unless I specifically flash using the tool, nothing affects the layouts I have and nothing from the keyboard changes the computer I’m using.

Gaming with a programmable keyboard, will layers or stuff screw up my game?

I don’t think so, and to be honest, I’m not the best source to ask. The only PC game I play with any regularity is Stardew Valley using WASD/mouse.

But, from what I’ve read, gaming might be one of the big reasons people go with a programmable kb. Since all the key assignments sit in the firmware, you can just program a layer to have all your shortcuts and key assignments right at your fingertips. So long as you don’t accidentally switch to another layer in the midst of play (and that requires you to hit a key that you have specifically set to be a layer changing key), there’s nothing the board would do to mess your game up.

Similar example – in writing, basic formatting and copy/paste functions get used all the time, so I set the interior column of both halves to have those shortcuts. To invoke bold I don’t have to hold the Ctrl key and hit “b”, I just tap the left-half inner column bottom key and the board sends “Ctrl-b” for me. I use one key stroke to send two.

That said, using the web-based configuration tool, things like macros aren’t possible.

The subreddits for the Ergodox and the Ergordox EZ are a good community resource. They’ve been very helpful to me.

Online EZ Configuration Tool – what happens if it goes away or the company closes shop? Are there other ways to program the board and change key assignments?

The online configuration tool is just a web-based compile tool for QMK, the firmware used on the original Ergodox, Ergodox Infinity, and a ton of other boards. It’s just far easier to use a web-based tool than setting up the compiler on your own computer.

For a new user and for someone not a developer (for example, me) its great. But it’s not as powerful and there are some quirks. So if the EZ company decides to pull the plug, there is always the QMK firmware, which is open source and has a decidedly enthusiastic community supporting it.

One quirk which I was not aware of (and this goes to one of the cons) – when you make a new layer using the configurator, the new layer is essentially transparent back down to the base layer.

For example, if I make a new layer, say layer 4, and don’t assign anything to it, when I switch to layer 4, it behaves just as though I’m on layer 0, the base layer.

If you want a new layer to be truly blank, turns out in keyboard-speak, you have to assign the keys the “blank” character. In the configurator that’s the “None” assignment. I think the reason this happens is because when you press a key on the keyboard, that completes a circuit and sends a signal. The computer HAS to know what the signal is, or you risk crashing something. So, the default approach is to just send what is already in that position on the base layer.

I think I understand the reasons for this and I’ve started to use this to my benefit, but the visual presentation of the configurator makes you think these blank keys send “nothing” or the blank character. I was annoyed by that and would like some better documentation to that effect on the configurator page.

If there more questions, feel free to post them below, and I’ll update here as time permits.