keybrd library is an open source library for creating custom-keyboard firmware.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.

tutorial_3f_autoShift.md 2.1KB

Tutorial 3f - autoShift

Some multi-layer keyboards have a symbols layer that writes symbols without using the shift key:

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

The keybrd AutoShift class automatically sends a MODIFIERKEY_SHIFT scancode as needed. Two keybrd classes use AutoShift:

  • Code_ScS
  • Code_ScNS

The keybrd_3f_autoShift.ino sketch explains the AutoShift feature. It will run on the basic breadboard keyboard described in tutorial_1_breadboard_keyboard.md. After reading the sketch you too will be able to automatically shift characters.

basic breadboard keyboard

Exercises

1) Modify the keybrd_3f_autoShift sketch to make a 3-layer keyboard with a default layer and two Code_LayerHold objects.

Layout 0 1
0 a ! 1 b @ 2
1 sym num

2) Modify the keybrd_3f_autoShift sketch to write 1 and 2, regardless of if shift is held down or not (hint: use Code_ScNS).

Layout 0 1
0 a 1 b 2
1 fn shift


Creative Commons License
keybrd tutorial by Wolfram Volpi is licensed under a Creative Commons Attribution 4.0 International License.
Permissions beyond the scope of this license may be available at https://github.com/wolfv6/keybrd/issues/new.