Daktylos is a delightfully crafted QMK layout for the elegant elephant42 keyboard, inspired by the Miryoku Layout. Daktylos is paired with an optional companion app Hidrosis to enable communication between the host and the keyboard.
- 🌈 Custom QMK Layout: featuring home-row mods and multi layer thumb clusters kـ===eys
- 🎮 Joystick Mode: Transform your split keyboard into a retro gaming controller - play with friends using each half as a joystick!
- 📟 Interactive OLED Menu: Customize settings, view keyboard stats, and control features right from the keyboard's OLED display
- 🤝 Host-Keyboard Communication: Hidrosis keeps the keyboard and computer talking like best friends
- 🖱️ Mouse Keys: Move the cursor and perform clicks using your keyboard
- 🖥️ Cross-Platform:
- 🪟 Windows
- 🐧 Linux (Both X11 and Wayland!)
- 🍎 macOS
- 🏗️ Custom-built HID communication protocol
- 🔐 Cross-Platform Native USB HID interface implementation using
hidapi - 🛠️ Custom event handling system supporting X11, Wayland, and Win32 APIs
- 📦 CMake-based modular build system with cross-platform support
- 🔄 Automated CI/CD pipeline with GitHub Actions packaging the app for Windows, Linux and MacOS
- First, install QMK MSYS:
# Windows
# Download and run QMK MSYS from https://msys.qmk.fm/
# Linux/macOS
python3 -m pip install --user qmk- Set up your QMK environment:
qmk setup- Download the latest firmware from Github Releases:
qmk flash -kb elephant42 elephant42_daktylos.hex
or you can clone and build Daktylos:
git clone https://github.com/whoiscircuit/daktylos
cd daktylos
qmk flash -kb elephant42 -km daktylos# Flash your Elephant42 with our magical firmware
qmk flash elephant42_daktylos.hex- 🪟 Windows: Run
Hidrosis-Installer.exe - 🐧 Linux:
- Debian/Ubuntu:
sudo dpkg -i hidrosis-linux-aarch64.deb - Fedora:
sudo rpm -i hidrosis-linux-aarch64.rpm - Nixos:
add the repository as a a flake in your flake.nix:
then add the hidrosis module to the output section in nixosSystem:
hidrosis.url = "git+https://github.com/whoiscircuit/daktylos?submodules=1"; hidrosis.inputs.nixpkgs.follows = "nixpkgs";
then you can enable the hidrosis module in yournixosConfigurations.main = nixpkgs.lib.nixosSystem { ... modules = [ inputs.hidrosis.nixosModules.default ./configuration.nix ]; ... };
configuration.nix:services.hidrosis.enable = true;
- Debian/Ubuntu:
- 🍎 macOS: Coming soon!
- The amazing QMK community
- illness072 for creating the elephant42 keyboard
- manna-harbour for creating the miryoku layout