summaryrefslogtreecommitdiff
path: root/kvmd/hid
diff options
context:
space:
mode:
authorDevaev Maxim <[email protected]>2018-09-26 02:57:24 +0300
committerDevaev Maxim <[email protected]>2018-09-26 02:57:24 +0300
commit81a5311349564a1016c4af2bf18ae872b650e85b (patch)
treed01fd027948494e22ae2c14334b98c1515e5e8a4 /kvmd/hid
parentf3946f102fc167efdc53c73412b2c0d6ac6c72c5 (diff)
moved kvmd to the root
Diffstat (limited to 'kvmd/hid')
-rw-r--r--kvmd/hid/.gitignore2
-rw-r--r--kvmd/hid/Makefile18
-rw-r--r--kvmd/hid/platformio.ini19
-rw-r--r--kvmd/hid/src/inline.h3
-rw-r--r--kvmd/hid/src/keymap.h98
-rw-r--r--kvmd/hid/src/main.cpp98
6 files changed, 0 insertions, 238 deletions
diff --git a/kvmd/hid/.gitignore b/kvmd/hid/.gitignore
deleted file mode 100644
index c6d216a4..00000000
--- a/kvmd/hid/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/.pioenvs/
-/.piolibdeps/
diff --git a/kvmd/hid/Makefile b/kvmd/hid/Makefile
deleted file mode 100644
index 0d94b010..00000000
--- a/kvmd/hid/Makefile
+++ /dev/null
@@ -1,18 +0,0 @@
-all:
- @ cat Makefile
-
-build:
- platformio run
-
-update:
- platformio platform update
-
-install: upload
-upload:
- platformio run --target upload
-
-serial:
- platformio serialports monitor
-
-clean:
- rm -rf .pioenvs .piolibdeps
diff --git a/kvmd/hid/platformio.ini b/kvmd/hid/platformio.ini
deleted file mode 100644
index 13036b9d..00000000
--- a/kvmd/hid/platformio.ini
+++ /dev/null
@@ -1,19 +0,0 @@
-; PlatformIO Project Configuration File
-;
-; Build options: build flags, source filter
-; Upload options: custom upload port, speed and extra flags
-; Library options: dependencies, extra library storages
-; Advanced options: extra scripting
-;
-; Please visit documentation for the other options and examples
-; http://docs.platformio.org/page/projectconf.html
-
-[env:micro]
-platform = atmelavr
-board = micro
-framework = arduino
-upload_port = /dev/ttyACM0
-monitor_speed = 115200
-
-lib_deps =
diff --git a/kvmd/hid/src/inline.h b/kvmd/hid/src/inline.h
deleted file mode 100644
index 5b642a83..00000000
--- a/kvmd/hid/src/inline.h
+++ /dev/null
@@ -1,3 +0,0 @@
-#pragma once
-
-#define INLINE inline __attribute__((always_inline))
diff --git a/kvmd/hid/src/keymap.h b/kvmd/hid/src/keymap.h
deleted file mode 100644
index c2302601..00000000
--- a/kvmd/hid/src/keymap.h
+++ /dev/null
@@ -1,98 +0,0 @@
-#pragma once
-
-#include <HID-Project.h>
-
-#include "inline.h"
-
-
-INLINE KeyboardKeycode keymap(uint8_t code) {
- switch(code) {
- case 36: return KEY_0;
- case 27: return KEY_1;
- case 28: return KEY_2;
- case 29: return KEY_3;
- case 30: return KEY_4;
- case 31: return KEY_5;
- case 32: return KEY_6;
- case 33: return KEY_7;
- case 34: return KEY_8;
- case 35: return KEY_9;
- case 1: return KEY_A;
- case 2: return KEY_B;
- case 46: return KEY_BACKSLASH;
- case 39: return KEY_BACKSPACE;
- case 3: return KEY_C;
- case 53: return KEY_CAPS_LOCK;
- case 50: return KEY_COMMA;
- case 4: return KEY_D;
- case 70: return KEY_DELETE;
- case 75: return KEY_DOWN_ARROW;
- case 5: return KEY_E;
- case 71: return KEY_END;
- case 37: return KEY_ENTER;
- case 43: return KEY_EQUAL;
- case 38: return KEY_ESC;
- case 6: return KEY_F;
- case 54: return KEY_F1;
- case 63: return KEY_F10;
- case 64: return KEY_F11;
- case 65: return KEY_F12;
- case 55: return KEY_F2;
- case 56: return KEY_F3;
- case 57: return KEY_F4;
- case 58: return KEY_F5;
- case 59: return KEY_F6;
- case 60: return KEY_F7;
- case 61: return KEY_F8;
- case 62: return KEY_F9;
- case 7: return KEY_G;
- case 8: return KEY_H;
- case 68: return KEY_HOME;
- case 9: return KEY_I;
- case 67: return KEY_INSERT;
- case 10: return KEY_J;
- case 11: return KEY_K;
- case 12: return KEY_L;
- case 79: return KEY_LEFT_ALT;
- case 74: return KEY_LEFT_ARROW;
- case 44: return KEY_LEFT_BRACE;
- case 77: return KEY_LEFT_CTRL;
- case 80: return KEY_LEFT_GUI;
- case 78: return KEY_LEFT_SHIFT;
- case 13: return KEY_M;
- case 42: return KEY_MINUS;
- case 14: return KEY_N;
- case 15: return KEY_O;
- case 16: return KEY_P;
- case 72: return KEY_PAGE_DOWN;
- case 69: return KEY_PAGE_UP;
- case 85: return KEY_PAUSE;
- case 51: return KEY_PERIOD;
- case 66: return KEY_PRINT;
- case 17: return KEY_Q;
- case 48: return KEY_QUOTE;
- case 18: return KEY_R;
- case 83: return KEY_RIGHT_ALT;
- case 73: return KEY_RIGHT_ARROW;
- case 45: return KEY_RIGHT_BRACE;
- case 81: return KEY_RIGHT_CTRL;
- case 84: return KEY_RIGHT_GUI;
- case 82: return KEY_RIGHT_SHIFT;
- case 19: return KEY_S;
- case 86: return KEY_SCROLL_LOCK;
- case 47: return KEY_SEMICOLON;
- case 52: return KEY_SLASH;
- case 41: return KEY_SPACE;
- case 20: return KEY_T;
- case 40: return KEY_TAB;
- case 49: return KEY_TILDE;
- case 21: return KEY_U;
- case 76: return KEY_UP_ARROW;
- case 22: return KEY_V;
- case 23: return KEY_W;
- case 24: return KEY_X;
- case 25: return KEY_Y;
- case 26: return KEY_Z;
- default: return KEY_ERROR_UNDEFINED;
- }
-}
diff --git a/kvmd/hid/src/main.cpp b/kvmd/hid/src/main.cpp
deleted file mode 100644
index 7bfced13..00000000
--- a/kvmd/hid/src/main.cpp
+++ /dev/null
@@ -1,98 +0,0 @@
-#include <Arduino.h>
-#include <HID-Project.h>
-
-#include "inline.h"
-#include "keymap.h"
-
-#define CMD_SERIAL Serial1
-#define CMD_SERIAL_SPEED 115200
-
-#define CMD_MOUSE_LEFT 0b10000000
-#define CMD_MOUSE_LEFT_STATE 0b00001000
-#define CMD_MOUSE_RIGHT 0b01000000
-#define CMD_MOUSE_RIGHT_STATE 0b00000100
-
-
-// -----------------------------------------------------------------------------
-INLINE void cmdResetHid() { // 0 bytes
- CMD_SERIAL.read(); // unused
- CMD_SERIAL.read(); // unused
- CMD_SERIAL.read(); // unused
- CMD_SERIAL.read(); // unused
- BootKeyboard.releaseAll();
- SingleAbsoluteMouse.releaseAll();
-}
-
-INLINE void cmdKeyEvent() { // 2 bytes
- KeyboardKeycode code = keymap((uint8_t)CMD_SERIAL.read());
- uint8_t state = CMD_SERIAL.read();
- CMD_SERIAL.read(); // unused
- CMD_SERIAL.read(); // unused
- if (code != KEY_ERROR_UNDEFINED) {
- if (state) {
- BootKeyboard.press(code);
- } else {
- BootKeyboard.release(code);
- }
- }
-}
-
-INLINE void cmdMouseMoveEvent() { // 4 bytes
- int x = (int)CMD_SERIAL.read() << 8;
- x |= (int)CMD_SERIAL.read();
- int y = (int)CMD_SERIAL.read() << 8;
- y |= (int)CMD_SERIAL.read();
- SingleAbsoluteMouse.moveTo(x, y);
-}
-
-INLINE void cmdMouseButtonEvent() { // 1 byte
- uint8_t state = CMD_SERIAL.read();
- CMD_SERIAL.read(); // unused
- CMD_SERIAL.read(); // unused
- CMD_SERIAL.read(); // unused
- if (state & CMD_MOUSE_LEFT) {
- if (state & CMD_MOUSE_LEFT_STATE) {
- SingleAbsoluteMouse.press(MOUSE_LEFT);
- } else {
- SingleAbsoluteMouse.release(MOUSE_LEFT);
- }
- }
- if (state & CMD_MOUSE_RIGHT) {
- if (state & CMD_MOUSE_RIGHT_STATE) {
- SingleAbsoluteMouse.press(MOUSE_RIGHT);
- } else {
- SingleAbsoluteMouse.release(MOUSE_RIGHT);
- }
- }
-}
-
-INLINE void cmdMouseWheelEvent() { // 2 bytes
- CMD_SERIAL.read(); // delta_x is not supported by hid-project now
- signed char delta_y = CMD_SERIAL.read();
- CMD_SERIAL.read(); // unused
- CMD_SERIAL.read(); // unused
- SingleAbsoluteMouse.move(0, 0, delta_y);
-}
-
-
-// -----------------------------------------------------------------------------
-void setup() {
- CMD_SERIAL.begin(CMD_SERIAL_SPEED);
- BootKeyboard.begin();
- SingleAbsoluteMouse.begin();
- CMD_SERIAL.write(0);
-}
-
-void loop() {
- if (CMD_SERIAL.available() >= 5) {
- switch ((uint8_t)CMD_SERIAL.read()) {
- case 0: cmdResetHid(); break;
- case 1: cmdKeyEvent(); break;
- case 2: cmdMouseMoveEvent(); break;
- case 3: cmdMouseButtonEvent(); break;
- case 4: cmdMouseWheelEvent(); break;
- default: break;
- }
- CMD_SERIAL.write(0);
- }
-}