keybrd library is an open source library for creating custom-keyboard firmware.
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
Это архивный репозиторий. Вы можете его клонировать или просматривать файлы, но не вносить изменения или открывать задачи/запросы на слияние.
wolfv6 98b6060e7c initial commit keybrd version 0.3.0 8 лет назад
doc initial commit keybrd version 0.3.0 8 лет назад
examples/keybrd_mapping_bb initial commit keybrd version 0.3.0 8 лет назад
src initial commit keybrd version 0.3.0 8 лет назад
tutorials initial commit keybrd version 0.3.0 8 лет назад
LICENSE.txt initial commit keybrd version 0.3.0 8 лет назад
README.md initial commit keybrd version 0.3.0 8 лет назад
library.properties initial commit keybrd version 0.3.0 8 лет назад

README.md

keybrd library for creating custom-keyboard firmware

keybrd library is an open source library for creating custom-keyboard firmware. The resulting keyboard firmware is compatible with standard USB keyboard drivers.

keybrd library can support any keyboard configuration:

  • one-piece
  • split with I/O expander
  • single-layer
  • multiple-layer

Multiple-layer keyboards can write symbols without using the shift key:

~ ! @ # $ % ^ & * () _ {} | < > : ?

keybrd library leverages the Arduino environment to create keyboard firmware. The Arduino development environment is free, and easy for novice programmers to setup and learn.

The keybrd library has been tested on the Teensy 2.0 microcontroller, MCP23018 I/O expander, and PCA9655E I/O expander.

The public API should not be considered stable. Currently the keybrd library is limited to 8x8 matrices, which is enough for compact split keyboards.

Example minimal keybrd sketch

Here is a minimal keybrd sketch.

todo after teensy LC bb, copy and remove annotations from keybrd_single-layer_2_annotated.ino

The sketch has about 50 lines of code and runs a 4-key keyboard. It runs on a breadboard with rows, columns, and diodes just like the big keyboards. The sketch is small because the keybrd library takes care of the low-level details.

The keybrd tutorial 1 shows how to make a breadboard keyboard. The keybrd tutorials 2 and 3 show how to create custom keybrd firmware.

Example complex keybrd sketch

The DodoHand keybrd emulates the DataHand keyboard. It has 72 keys, 4 layers, 2 sub-layers, 2 matrices, and is loaded with features. The DodoHand sketch, and its instantiation files, contain about 800 lines of code.

Support

The doc folder contains guides and tutorials. Please ask a questions in issues if something is not clear.