Last active
December 18, 2015 18:59
-
-
Save DurzoO/5829182 to your computer and use it in GitHub Desktop.
a custom split keyboard
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <Keypad.h> | |
const byte ROWS = 4; //four rows | |
const byte COLS = 10; //three columns | |
char keys[ROWS][COLS] = { | |
{'q','w','e','r','t','y','u','i','o','p'},//THESE ARE FOR POSITION IN THE MATRIX ONLY | |
{'a','s','d','f','g','h','j','k','l',';'},//FOR REFERENCE | |
{'z','x','c','v','b','n','m',',','.',' '},//IF YOU ALTER THESE YOU GOING TO HAVE A BAD TIME | |
{'1','2','3','4','5','6','7','8','9','0'}, | |
}; | |
byte rowPins[ROWS] = {23, 22, 21, 20}; | |
byte colPins[COLS] = {0, 1, 2 , 3, 4, 5, 6, 7, 8, 9}; | |
Keypad kpd = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS ); | |
void setup(){ | |
pinMode(18, INPUT_PULLUP);//button Right | |
pinMode(19, INPUT_PULLUP);//button Left | |
Keyboard.begin(); | |
} | |
void loop(){ | |
while (digitalRead(19)==LOW){// HOLDING DOWN THIS BUTTON WILL CHANGE TO THIS SET OF KEYS | |
// THIS IS THE "LEFT" KEYSET | |
//BE SURE RELEASE THIS AFTER YOU PRESS A KEY IN THIS KEYSET/WHILE LOOP | |
for (int i=0; i<LIST_MAX; i++) // Scan the entire list. | |
{ | |
if(kpd.getKeys()) | |
{ | |
int keyPosition1 = kpd.findInList('q');//<---DO NOT ALTER THIS LETTER, THIS IS CHECKING THIS KEYS STATE AND IS JUST ITS POSITION IN THE MATRIX | |
switch (kpd.key[keyPosition1].kstate) {// Report active key state : IDLE, PRESSED, HOLD, or RELEASED | |
case PRESSED: | |
Keyboard.press(KEY_PAGE_UP);//<---CHANGE THIS TO KEY YOU WISH/WANT | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_PAGE_UP);//<---MAKE SURE THIS ONE MATCHES ^ | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('w'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_PAGE_DOWN); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_PAGE_DOWN); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('e'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_HOME); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_HOME); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('r'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_END); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_END); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('t'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_SPACE); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_SPACE); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('y'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_SPACE); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_SPACE); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('u'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_SPACE); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_SPACE); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('i'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_CAPS_LOCK); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_CAPS_LOCK); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('o'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_SPACE); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_SPACE); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('p'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_ESC); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_ESC); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('a'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_F1); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_F1); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('s'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_F2); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_F2); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('d'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_F3); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_F3); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('f'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_F4); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_F4); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('g'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_F5); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_F5); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('h'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_F6); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_F6); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('j'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_F7); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_F7); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('k'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_F8); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_F8); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('l'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_F9); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_F9); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList(';'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_F10); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_F10); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('z'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_F11); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_F11); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('x'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_F12); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_F12); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('c'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_SPACE); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_SPACE); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('v'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_SPACE); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_SPACE); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('b'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_SPACE); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_SPACE); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('n'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_SPACE); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_SPACE); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('m'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_SPACE); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_SPACE); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList(','); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_COMMA); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_COMMA); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('.'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_PERIOD); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_PERIOD); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList(' '); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_LEFT_GUI; | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_LEFT_GUI); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('4'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_LEFT_CTRL); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_LEFT_CTRL); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('5'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_LEFT_SHIFT); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_LEFT_SHIFT); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('6'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_LEFT_CTRL); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_LEFT_CTRL); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('7'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_SPACE); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_SPACE); | |
break; | |
} | |
} | |
} | |
} | |
while (digitalRead(18)==LOW) {// HOLDING DOWN THIS BUTTON WILL CHANGE TO THIS SET OF KEYS | |
// THIS IS THE "RIGHT" KEYSET | |
//BE SURE RELEASE THIS AFTER YOU PRESS A KEY IN THIS KEYSET/WHILE LOOP | |
for (int i=0; i<LIST_MAX; i++) | |
{ | |
if(kpd.getKeys()) // Scan the entire list. | |
{ | |
int keyPosition1 = kpd.findInList('q'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_UP); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_UP); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('w'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_DOWN); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_DOWN); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('e'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_LEFT); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_LEFT); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('r'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_RIGHT); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_RIGHT); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('t'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_TAB); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_TAB); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('y'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_DELETE); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_DELETE); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('u'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_HOME); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_HOME); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('i'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_END); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_END); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('o'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_PAGE_UP); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_PAGE_UP); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('p'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_PAGE_DOWN); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_PAGE_DOWN); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('a'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_1); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_1); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('s'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_2); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_2); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('d'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_3); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_3); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('f'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_4); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_4); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('g'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_5); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_5); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('h'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_6); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_6); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('j'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_7); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_7); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('k'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_8); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_8); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('l'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_9); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_9); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList(';'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_0); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_0); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('z'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_SLASH); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_SLASH); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('x'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_BACKSLASH); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_BACKSLASH); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('c'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_LEFT_BRACE); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_LEFT_BRACE); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('v'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_RIGHT_BRACE); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_RIGHT_BRACE); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('b'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_MINUS); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_MINUS); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('n'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_EQUAL); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_EQUAL); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('m'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_TILDE); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_TILDE); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList(','); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_COMMA); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_COMMA); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('.'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_PERIOD); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_PERIOD); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList(' '); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_BACKSPACE); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_BACKSPACE); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('4'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_LEFT_ALT); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_LEFT_ALT); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('5'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_LEFT_SHIFT); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_LEFT_SHIFT); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('6'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_LEFT_CTRL); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_LEFT_CTRL); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('7'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_SPACE); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_SPACE); | |
break; | |
} | |
} | |
} | |
} | |
if(kpd.getKeys())// HOLDING DOWN NO BUTTONS WILL CHANGE TO THIS SET OF KEYS | |
// THIS IS THE DEFAULT KEYSET | |
{ | |
for (int i=0; i<LIST_MAX; i++) // Scan the entire list. | |
{ | |
int keyPosition1 = kpd.findInList('q'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_Q); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_Q); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('w'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_W); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_W); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('e'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_E); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_E); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('r'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_R); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_R); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('t'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_T); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_T); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('y'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_Y); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_Y); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('u'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_U); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_U); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('i'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_I); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_I); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('o'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_O); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_O); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('p'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_P); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_P); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('a'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_A); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_A); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('s'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_S); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_S); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('d'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_D); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_D); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('f'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_F); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_F); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('g'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_G); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_G); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('h'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_H); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_H); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('j'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_J); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_J); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('k'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_K); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_K); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('l'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_L); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_L); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList(';'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_SEMICOLON); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_SEMICOLON); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('z'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_Z); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_Z); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('x'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_X); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_X); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('c'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_C); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_C); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('v'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_V); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_V); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('b'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_B); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_B); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('n'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_N); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_N); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('m'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_M); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_M); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList(','); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_COMMA); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_COMMA); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('.'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_PERIOD); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_PERIOD); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList(' '); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_ENTER); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_ENTER); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('4'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_LEFT_ALT); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_LEFT_ALT); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('5'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_LEFT_SHIFT); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_LEFT_SHIFT); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('6'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_LEFT_CTRL); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_LEFT_CTRL); | |
break; | |
} | |
} | |
{ | |
int keyPosition1 = kpd.findInList('7'); | |
switch (kpd.key[keyPosition1].kstate) { | |
case PRESSED: | |
Keyboard.press(KEY_SPACE); | |
break; | |
case RELEASED: | |
Keyboard.release(KEY_SPACE); | |
break; | |
} | |
} | |
} | |
else | |
{ | |
Keyboard.release(KEY_BACKSPACE); | |
Keyboard.release(KEY_1); | |
Keyboard.release(KEY_2); | |
Keyboard.release(KEY_3); | |
Keyboard.release(KEY_4); | |
Keyboard.release(KEY_5); | |
Keyboard.release(KEY_6); | |
Keyboard.release(KEY_7); | |
Keyboard.release(KEY_8); | |
Keyboard.release(KEY_9); | |
Keyboard.release(KEY_0); | |
Keyboard.release(KEY_MINUS); | |
Keyboard.release(KEY_EQUAL); | |
Keyboard.release(KEY_TILDE); | |
Keyboard.release(KEY_TAB); | |
Keyboard.release(KEY_SLASH); | |
Keyboard.release(KEY_BACKSLASH); | |
Keyboard.release(KEY_LEFT_BRACE); | |
Keyboard.release(KEY_RIGHT_BRACE); | |
Keyboard.release(KEY_ESC); | |
Keyboard.release(KEY_PAGE_UP); | |
Keyboard.release(KEY_PAGE_DOWN); | |
Keyboard.release(KEY_END); | |
Keyboard.release(KEY_HOME); | |
Keyboard.release(KEY_LEFT); | |
Keyboard.release(KEY_RIGHT); | |
Keyboard.release(KEY_UP); | |
Keyboard.release(KEY_DOWN); | |
Keyboard.release(KEY_F1); | |
Keyboard.release(KEY_F2); | |
Keyboard.release(KEY_F3); | |
Keyboard.release(KEY_F4); | |
Keyboard.release(KEY_F5); | |
Keyboard.release(KEY_F6); | |
Keyboard.release(KEY_F7); | |
Keyboard.release(KEY_F8); | |
Keyboard.release(KEY_F9); | |
Keyboard.release(KEY_F10); | |
Keyboard.release(KEY_F11); | |
Keyboard.release(KEY_F12); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment