ZSA Keyboards: Difference between revisions

From NixOS Wiki
Klinger (talk | contribs)
description of ZSA keyboards, added 2 different ways to flash keyboards
Atemo C (talk | contribs)
Formatting tweaks, information fixes, typo fixes, deletion of duplicate information, and updated information related to the Keymapp program with the release of NixOS 24.05.
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
ZSA.io offers a variety of ergonomic keyboards such as the Ergodox EZ and Moonlander Mark I. Its possible to configure the keyboard layout via https://configure.zsa.io/ and then flash it to the keyboard. Flashing is done via Browser (Chrome, Chromium) or via a desktop application.
[https://www.zsa.io/ ZSA] offers a variety of ergonomic keyboards, such as the Ergodox EZ and the Moonlander Mark I.


To just use a ZSA keyboard its not necessary to change the NixOS configuration.
The use of ZSA's keyboards does not require any change to the NixOS configuration, but flashing firmware onto them does.
= Flashing =
== Flashing via Chrome/Chromium Browser ==
In Oryx ( https://configure.zsa.io/ ) you can just click „Safe to my keyboard“ to flash the keyboard.


There are some udev rules necessary for the connection. You have to activate them in NixOS configuration first:
= Configuring a keyboard =
ZSA's keyboards can be configured using their online [https://configure.zsa.io Oryx configurator tool]. You will then need to flash the firmware onto the keyboard, which can be done in three ways, all necessitating a common change in the NixOS configuration, as seen in the following section.


= Flashing firmware =
== Pre-requirement ==
Some udev rules are necessary for the connection before flashing any firmware onto the keyboard. You have to activate them in your NixOS configuration first:
{{file|/etc/nixos/configuration.nix|nix|<nowiki>
{{file|/etc/nixos/configuration.nix|nix|<nowiki>
hardware.keyboard.zsa.enable = true;
hardware.keyboard.zsa.enable = true;
</nowiki>}}
</nowiki>}}
Once the new configuration is applied, you may flash ZSA's keyboards with one of the three following methods.


== Flashing via wally-cli (command line tool, deprecated) ==
== Flashing via a Chromium-based web browser (Chrome, Chromium...)==
ZSA keyboards can be flashed using the <code>wally-cli</code> command-line tool. The ZSA udev rules can be set up automatically with the <code>hardware.keyboard.zsa</code> config option.  
In ZSA's [https://configure.zsa.io Oryx configurator tool], you can click “Save to my keyboard” to flash the keyboard.


{{file|/etc/nixos/configuration.nix|nix|<nowiki>
== Flashing via wally-cli (command line tool) ==
hardware.keyboard.zsa.enable = true;
ZSA's <code>[https://github.com/zsa/wally-cli wally-cli]</code> command-line tool can be used to flash the keyboard. You will need to install it:
</nowiki>}}
 
In addition, you need to install wally-cli[https://github.com/zsa/wally-cli]:


{{file|/etc/nixos/configuration.nix|nix|<nowiki>
{{file|/etc/nixos/configuration.nix|nix|<nowiki>
Line 25: Line 24:
</nowiki>}}
</nowiki>}}


== Flashing via keymapp (command line tool) ==
Then, you may use the following command to flash the keyboard, replacing the path with the location of the downloaded firmware:
ZSA keyboards can be flashed using the <code>keymapp</code> command-line tool. The ZSA udev rules can be set up automatically with the <code>hardware.keyboard.zsa</code> config option.  
{{bc|wally-cli /path/to/firmware.bin}}
 
== Flashing via Keymapp (graphical tool) ==
ZSA's <code>[https://blog.zsa.io/keymapp/ keymapp]</code> graphical tool can be used to flash the keyboard. It is user-friendly, and has other features, such as live layout viewing, key presses heatmap, and links to various tools offered by ZSA's online Oryx configurator. You will need to install it:


{{file|/etc/nixos/configuration.nix|nix|<nowiki>
{{file|/etc/nixos/configuration.nix|nix|<nowiki>
hardware.keyboard.zsa.enable = true;
environment.systemPackages = with pkgs; [ keymapp ];
</nowiki>}}
</nowiki>}}
Unfortunately keymapp is not yet available as package for NixOS.


[[Category: Hardware]]
[[Category: Hardware]]

Latest revision as of 13:59, 11 June 2024

ZSA offers a variety of ergonomic keyboards, such as the Ergodox EZ and the Moonlander Mark I.

The use of ZSA's keyboards does not require any change to the NixOS configuration, but flashing firmware onto them does.

Configuring a keyboard

ZSA's keyboards can be configured using their online Oryx configurator tool. You will then need to flash the firmware onto the keyboard, which can be done in three ways, all necessitating a common change in the NixOS configuration, as seen in the following section.

Flashing firmware

Pre-requirement

Some udev rules are necessary for the connection before flashing any firmware onto the keyboard. You have to activate them in your NixOS configuration first:

/etc/nixos/configuration.nix
hardware.keyboard.zsa.enable = true;

Once the new configuration is applied, you may flash ZSA's keyboards with one of the three following methods.

Flashing via a Chromium-based web browser (Chrome, Chromium...)

In ZSA's Oryx configurator tool, you can click “Save to my keyboard” to flash the keyboard.

Flashing via wally-cli (command line tool)

ZSA's wally-cli command-line tool can be used to flash the keyboard. You will need to install it:

/etc/nixos/configuration.nix
environment.systemPackages = with pkgs; [ wally-cli ];

Then, you may use the following command to flash the keyboard, replacing the path with the location of the downloaded firmware:

wally-cli /path/to/firmware.bin

Flashing via Keymapp (graphical tool)

ZSA's keymapp graphical tool can be used to flash the keyboard. It is user-friendly, and has other features, such as live layout viewing, key presses heatmap, and links to various tools offered by ZSA's online Oryx configurator. You will need to install it:

/etc/nixos/configuration.nix
environment.systemPackages = with pkgs; [ keymapp ];