Skip to content

whoiscircuit/daktylos

 
 

Repository files navigation

🎹 Daktylos: The Keyboard Layout Designed for Efficiency! 🚀

License Build Stars

💫 What is This Magic?

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.

🌟 Key Features

  • 🌈 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

🔧 Technical Details

  • 🏗️ 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

🚀 Getting Started

💾 Installation

🎹 Keyboard Firmware

  1. First, install QMK MSYS:
# Windows
# Download and run QMK MSYS from https://msys.qmk.fm/
# Linux/macOS
python3 -m pip install --user qmk
  1. Set up your QMK environment:
qmk setup
  1. 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

🌟 Hidrosis App

  • 🪟 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:
        hidrosis.url = "git+https://github.com/whoiscircuit/daktylos?submodules=1";
        hidrosis.inputs.nixpkgs.follows = "nixpkgs";
      then add the hidrosis module to the output section in nixosSystem:
        nixosConfigurations.main = nixpkgs.lib.nixosSystem {
          ...
          modules = [
            inputs.hidrosis.nixosModules.default
            ./configuration.nix
          ];
          ...
        };
      then you can enable the hidrosis module in your configuration.nix: services.hidrosis.enable = true;
  • 🍎 macOS: Coming soon!

🙏 Acknowledgments

About

my keymap for elephant42 keyboard

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 92.4%
  • Nix 2.3%
  • CMake 2.3%
  • NSIS 1.2%
  • Other 1.8%