ZSA Keyboards: Difference between revisions

From NixOS Wiki
imported>R-burns
Create instructions for flashing ZSA 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.
 
(4 intermediate revisions by 3 users not shown)
Line 1: Line 1:
== Flashing ==
[https://www.zsa.io/ ZSA] offers a variety of ergonomic keyboards, such as the Ergodox EZ and the Moonlander Mark I.


ZSA keyboards such as the Ergodox EZ and Moonlander Mark I 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. Your user must also be a member of the <code>plugdev</code> group.
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 [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>
users.users.yourUser = {
  extraGroups = [ "plugdev" ];
};
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 a Chromium-based web browser (Chrome, Chromium...)==
In ZSA's [https://configure.zsa.io Oryx configurator tool], you can click “Save to my keyboard” to flash the keyboard.
== Flashing via wally-cli (command line tool) ==
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:
{{file|/etc/nixos/configuration.nix|nix|<nowiki>
environment.systemPackages = with pkgs; [ wally-cli ];
</nowiki>}}
Then, you may use the following command to flash the keyboard, replacing the path with the location of the downloaded firmware:
{{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>
environment.systemPackages = with pkgs; [ keymapp ];
</nowiki>}}
[[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 ];