64 lines
1.9 KiB
Markdown
64 lines
1.9 KiB
Markdown
|
|
# KeSp Controller
|
||
|
|
|
||
|
|
Cross-platform configurator for the KeSp split ergonomic keyboard.
|
||
|
|
|
||
|
|
Built with [Rust](https://www.rust-lang.org/) and [Slint](https://slint.dev/) UI framework.
|
||
|
|
|
||
|
|

|
||
|
|
|
||
|
|
## Features
|
||
|
|
|
||
|
|
- **Keymap editor** with visual keyboard layout (loaded from firmware)
|
||
|
|
- **Key selector** with categorized grid, Mod-Tap/Layer-Tap builders, hex input
|
||
|
|
- **Heatmap overlay** showing key press frequency (blue to red gradient)
|
||
|
|
- **Layer management** with switch, rename, and active indicator
|
||
|
|
- **Tap Dance** editing (4 actions per slot)
|
||
|
|
- **Combos** creation with visual key picker
|
||
|
|
- **Key Overrides** with modifier checkboxes (Ctrl/Shift/Alt)
|
||
|
|
- **Leader Keys** with sequence builder
|
||
|
|
- **Macros** with visual step builder (key presses + delays)
|
||
|
|
- **Statistics** (hand balance, finger load, row usage, top keys, bigrams)
|
||
|
|
- **OTA firmware update** via USB (no programming cable needed)
|
||
|
|
- **ESP32 flasher** (esptool-like, via programming port)
|
||
|
|
- **Settings** with keyboard layout selector (QWERTY, AZERTY, DVORAK, etc.)
|
||
|
|
- **Dracula theme** throughout
|
||
|
|
|
||
|
|
## Download
|
||
|
|
|
||
|
|
Pre-built binaries for Linux, Windows, and macOS are available on the [Releases](https://github.com/mornepousse/KeSp_controller/releases) page.
|
||
|
|
|
||
|
|
## Build from source
|
||
|
|
|
||
|
|
### Requirements
|
||
|
|
|
||
|
|
- Rust toolchain (1.75+)
|
||
|
|
- Linux: `libudev-dev libfontconfig1-dev`
|
||
|
|
|
||
|
|
### Build
|
||
|
|
|
||
|
|
```bash
|
||
|
|
cargo build --release
|
||
|
|
```
|
||
|
|
|
||
|
|
Binary will be at `target/release/KeSp_controller`.
|
||
|
|
|
||
|
|
## Usage
|
||
|
|
|
||
|
|
1. Plug in your KeSp keyboard via USB
|
||
|
|
2. Launch KeSp Controller
|
||
|
|
3. The app auto-connects to the keyboard
|
||
|
|
4. Use the tabs to configure: Keymap, Advanced, Macros, Stats, Settings, Flash
|
||
|
|
|
||
|
|
## Keyboard compatibility
|
||
|
|
|
||
|
|
Designed for the KeSp/KaSe split keyboard with:
|
||
|
|
- USB CDC serial (VID: 0xCAFE, PID: 0x4001)
|
||
|
|
- Binary protocol v2
|
||
|
|
- ESP32-S3 MCU
|
||
|
|
|
||
|
|
## License
|
||
|
|
|
||
|
|
GPL-3.0 - See [LICENSE](LICENSE)
|
||
|
|
|
||
|
|
Made with [Slint](https://slint.dev/)
|