keybrd library is an open source library for creating custom-keyboard firmware.
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
Ce dépôt est archivé. Vous pouvez voir les fichiers et le cloner, mais vous ne pouvez pas pousser ni ouvrir de ticket/demande d'ajout.
wolfv6 fbf4eda206 add PortMCP23S17::beginProtocol() il y a 7 ans
doc combined PortWrite_MCP23S17 and PortRead_MCP23S17 into Port_MCP23S17 il y a 7 ans
examples/keybrd_PCA9655E update diagrams and tutorials: 0 1 2 3a il y a 7 ans
images move Debug variables to static il y a 7 ans
src add PortMCP23S17::beginProtocol() il y a 7 ans
tutorials add layers and LEDs to keybrd_5b_LED_on_IOE.ino il y a 7 ans
unit_tests add refPortWrite.begin(strobeOn) to Scanner_IOE::begin(), update unit tests il y a 7 ans
CONTRIBUTING.md add MCP23S17 port files il y a 7 ans
LICENSE.txt initial commit keybrd version 0.3.0 il y a 8 ans
README.md update split keyboard tutorials 4a 4b 4c and sketches il y a 7 ans
library.properties document il y a 7 ans

README.md

keybrd library for creating keyboard firmware

keybrd library is an open source library for creating custom-keyboard firmware. The keybrd library allows keyboard designers to develop and publish their firmware simply as possible.

keybrd library supports any keyboard configuration:

  • one-piece
  • split with shift registers
  • split with I/O expander
  • single-layer
  • multiple-layer
  • LED indicator lights

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 Teensy LC, Teensy 2.0, 74HC165 shift registers, and PCA9655E I/O expander. The resulting keyboard firmware is compatible with standard USB keyboard drivers.

The keybrd library is in Beta testing. The public API should not be considered stable.

Example minimal keybrd sketch

A minimal keybrd sketch is 40 lines of code for a 4-key keyboard. The sketch is small because the keybrd library takes care of the low-level details. It runs the breadboard keyboard in this picture.

breadboard keyboard

Example complex keybrd sketch

keybrd_DH and its instantiation files contain about 800 lines of code. It emulates the DataHand keyboard. Its layout has 52 keys, 3 primary layers, 5 sub-layers, 2 matrices, 8 LEDs, and blinking LEDs.

keybrd_DH_library_developer_guide.md
mainSketch.ino
instantiations_scannersLEDs.h
instantiations_scancodes.h
instantiations_layercodes.h
instantiations_rows_L.h
instantiations_rows_R.h

hweller

Support

Guides and tutorials are provided.

keybrd tutorial_1 shows how to build a breadboard keyboard. The remaining keybrd tutorials show how to create custom keybrd firmware.

Please ask questions in keybrd firmware library thread if something is not clear.