From d75c598a6205d098d1a3b699eb704c50041f1ec5 Mon Sep 17 00:00:00 2001 From: Nico Date: Sat, 11 Apr 2015 09:31:23 +0200 Subject: [PATCH] Moved and improved examples --- .../Consumer/Consumer.ino} | 14 +-- .../Gamepad/Gamepad.ino} | 32 +------ .../Gamepad_Advanced/Gamepad_Advanced.ino} | 0 examples/HID/Keyboard/Keyboard.ino | 39 ++++++++ .../Keyboard_Advanced/Keyboard_Advanced.ino} | 0 .../Keyboard_Led/Keyboard_Led.ino} | 0 .../HID_Mouse.ino => HID/Mouse/Mouse.ino} | 0 .../RawHID_Advanced/RawHID_Advanced.ino} | 4 +- .../HID_System.ino => HID/System/System.ino} | 4 +- .../HID_Basic/HID_Keyboard/HID_Keyboard.ino | 90 ------------------- examples/HelloWorld/HelloWorld.ino | 1 + 11 files changed, 49 insertions(+), 135 deletions(-) rename examples/{HID_Basic/HID_Consumer/HID_Consumer.ino => HID/Consumer/Consumer.ino} (64%) rename examples/{HID_Basic/HID_Gamepad/HID_Gamepad.ino => HID/Gamepad/Gamepad.ino} (65%) rename examples/{HID_Advanced/AdvancedGamepad/AdvancedGamepad.ino => HID/Gamepad_Advanced/Gamepad_Advanced.ino} (100%) create mode 100644 examples/HID/Keyboard/Keyboard.ino rename examples/{HID_Advanced/AdvancedKeyboard/AdvancedKeyboard.ino => HID/Keyboard_Advanced/Keyboard_Advanced.ino} (100%) rename examples/{HID_Basic/HID_Keyboard_Led/HID_Keyboard_Led.ino => HID/Keyboard_Led/Keyboard_Led.ino} (100%) rename examples/{HID_Basic/HID_Mouse/HID_Mouse.ino => HID/Mouse/Mouse.ino} (100%) rename examples/{HID_Advanced/AdvancedRawHID/AdvancedRawHID.ino => HID/RawHID_Advanced/RawHID_Advanced.ino} (97%) rename examples/{HID_Basic/HID_System/HID_System.ino => HID/System/System.ino} (91%) delete mode 100644 examples/HID_Basic/HID_Keyboard/HID_Keyboard.ino diff --git a/examples/HID_Basic/HID_Consumer/HID_Consumer.ino b/examples/HID/Consumer/Consumer.ino similarity index 64% rename from examples/HID_Basic/HID_Consumer/HID_Consumer.ino rename to examples/HID/Consumer/Consumer.ino index f74192f..12bc937 100644 --- a/examples/HID_Basic/HID_Consumer/HID_Consumer.ino +++ b/examples/HID/Consumer/Consumer.ino @@ -6,19 +6,7 @@ Press a button to play/pause music player See HID Project documentation for more Consumer keys. - https://github.com/NicoHood/HID/wiki/Consumer-API#key-definitions - -// basic Media key definitions, see HID Project and official USB docs for more -#define MEDIA_FAST_FORWARD 0xB3 -#define MEDIA_REWIND 0xB4 -#define MEDIA_NEXT 0xB5 -#define MEDIA_PREVIOUS 0xB6 -#define MEDIA_STOP 0xB7 -#define MEDIA_PLAY_PAUSE 0xCD - -#define MEDIA_VOLUME_MUTE 0xE2 -#define MEDIA_VOLUME_UP 0xE9 -#define MEDIA_VOLUME_DOWN 0xEA + https://github.com/NicoHood/HID/wiki/Consumer-API */ const int pinLed = LED_BUILTIN; diff --git a/examples/HID_Basic/HID_Gamepad/HID_Gamepad.ino b/examples/HID/Gamepad/Gamepad.ino similarity index 65% rename from examples/HID_Basic/HID_Gamepad/HID_Gamepad.ino rename to examples/HID/Gamepad/Gamepad.ino index 89007ae..54c4bc4 100644 --- a/examples/HID_Basic/HID_Gamepad/HID_Gamepad.ino +++ b/examples/HID/Gamepad/Gamepad.ino @@ -5,34 +5,8 @@ Gamepad example Press a button and demonstrate Gamepad actions - - Function prototypes: - void begin(void); - void end(void); - void write(void); - void press(uint8_t b); - void release(uint8_t b); - void releaseAll(void); - void buttons(uint32_t b); - void xAxis(int16_t a); - void yAxis(int16_t a); - void rxAxis(int16_t a); - void ryAxis(int16_t a); - void zAxis(int8_t a); - void rzAxis(int8_t a); - void dPad1(int8_t d); - void dPad2(int8_t d); - - Definitions: - GAMEPAD_DPAD_CENTERED 0 - GAMEPAD_DPAD_UP 1 - GAMEPAD_DPAD_UP_RIGHT 2 - GAMEPAD_DPAD_RIGHT 3 - GAMEPAD_DPAD_DOWN_RIGHT 4 - GAMEPAD_DPAD_DOWN 5 - GAMEPAD_DPAD_DOWN_LEFT 6 - GAMEPAD_DPAD_LEFT 7 - GAMEPAD_DPAD_UP_LEFT 8 + See HID Project documentation for more infos + https://github.com/NicoHood/HID/wiki/Gamepad-API */ const int pinLed = LED_BUILTIN; @@ -50,7 +24,7 @@ void loop() { if (!digitalRead(pinButton)) { digitalWrite(pinLed, HIGH); - // press button 1-32 and reset (34 becaue its written later) + // press button 1-32 and reset (34 because its written later) static uint8_t count = 1; Gamepad.press(count++); if (count == 34) { diff --git a/examples/HID_Advanced/AdvancedGamepad/AdvancedGamepad.ino b/examples/HID/Gamepad_Advanced/Gamepad_Advanced.ino similarity index 100% rename from examples/HID_Advanced/AdvancedGamepad/AdvancedGamepad.ino rename to examples/HID/Gamepad_Advanced/Gamepad_Advanced.ino diff --git a/examples/HID/Keyboard/Keyboard.ino b/examples/HID/Keyboard/Keyboard.ino new file mode 100644 index 0000000..ee076b2 --- /dev/null +++ b/examples/HID/Keyboard/Keyboard.ino @@ -0,0 +1,39 @@ +/* + Copyright (c) 2014 NicoHood + See the readme for credit to other people. + + Keyboard example + + Press a button to write some text to your pc. + See official and HID Project documentation for more infos + https://github.com/NicoHood/HID/wiki/Keyboard-API +*/ + +const int pinLed = LED_BUILTIN; +const int pinButton = 2; + +void setup() { + pinMode(pinLed, OUTPUT); + pinMode(pinButton, INPUT_PULLUP); + + // Starts Serial debug output + Serial.begin(115200); + + // Sends a clean report to the host. This is important on any Arduino type. + Keyboard.begin(); +} + + +void loop() { + if (!digitalRead(pinButton)) { + digitalWrite(pinLed, HIGH); + + // Same use as the official library, pretty much self explaining + Keyboard.println(F("This message was sent with my Arduino.")); + Serial.println(F("Serial port is still working and not glitching out")); + + // simple debounce + delay(300); + digitalWrite(pinLed, LOW); + } +} diff --git a/examples/HID_Advanced/AdvancedKeyboard/AdvancedKeyboard.ino b/examples/HID/Keyboard_Advanced/Keyboard_Advanced.ino similarity index 100% rename from examples/HID_Advanced/AdvancedKeyboard/AdvancedKeyboard.ino rename to examples/HID/Keyboard_Advanced/Keyboard_Advanced.ino diff --git a/examples/HID_Basic/HID_Keyboard_Led/HID_Keyboard_Led.ino b/examples/HID/Keyboard_Led/Keyboard_Led.ino similarity index 100% rename from examples/HID_Basic/HID_Keyboard_Led/HID_Keyboard_Led.ino rename to examples/HID/Keyboard_Led/Keyboard_Led.ino diff --git a/examples/HID_Basic/HID_Mouse/HID_Mouse.ino b/examples/HID/Mouse/Mouse.ino similarity index 100% rename from examples/HID_Basic/HID_Mouse/HID_Mouse.ino rename to examples/HID/Mouse/Mouse.ino diff --git a/examples/HID_Advanced/AdvancedRawHID/AdvancedRawHID.ino b/examples/HID/RawHID_Advanced/RawHID_Advanced.ino similarity index 97% rename from examples/HID_Advanced/AdvancedRawHID/AdvancedRawHID.ino rename to examples/HID/RawHID_Advanced/RawHID_Advanced.ino index ffadce7..4940947 100644 --- a/examples/HID_Advanced/AdvancedRawHID/AdvancedRawHID.ino +++ b/examples/HID/RawHID_Advanced/RawHID_Advanced.ino @@ -2,7 +2,7 @@ Copyright (c) 2014 NicoHood See the readme for credit to other people. - Advanced RawHID example (currently not available) + Advanced RawHID example (currently not available/broken) Shows how to send bytes via raw HID Press a button to send some example values. @@ -105,4 +105,4 @@ recv 15 bytes: recv 15 bytes: 48 65 6C 6C 6F 20 57 6F 72 6C 64 0D 0A 00 00 -*/ \ No newline at end of file +*/ diff --git a/examples/HID_Basic/HID_System/HID_System.ino b/examples/HID/System/System.ino similarity index 91% rename from examples/HID_Basic/HID_System/HID_System.ino rename to examples/HID/System/System.ino index 0531cb2..f4faf23 100644 --- a/examples/HID_Basic/HID_System/HID_System.ino +++ b/examples/HID/System/System.ino @@ -5,6 +5,8 @@ System example Press a button to put pc into sleep/shut it down or wake it up again. + See HID Project documentation for more infos + https://github.com/NicoHood/HID/wiki/System-API */ const int pinLed = LED_BUILTIN; @@ -45,4 +47,4 @@ void loop() { delay(300); digitalWrite(pinLed, LOW); } -} \ No newline at end of file +} diff --git a/examples/HID_Basic/HID_Keyboard/HID_Keyboard.ino b/examples/HID_Basic/HID_Keyboard/HID_Keyboard.ino deleted file mode 100644 index 83566d8..0000000 --- a/examples/HID_Basic/HID_Keyboard/HID_Keyboard.ino +++ /dev/null @@ -1,90 +0,0 @@ -/* - Copyright (c) 2014 NicoHood - See the readme for credit to other people. - - Keyboard example - - Press a button to write some text to your pc. - See official and HID Project documentation for more infos -*/ - -const int pinLed = LED_BUILTIN; -const int pinButton = 2; - -void setup() { - pinMode(pinLed, OUTPUT); - pinMode(pinButton, INPUT_PULLUP); - - // Starts Serial debug output - Serial.begin(115200); - - // Sends a clean report to the host. This is important on any Arduino type. - Keyboard.begin(); -} - - -void loop() { - if (!digitalRead(pinButton)) { - digitalWrite(pinLed, HIGH); - - // Same use as the official library, pretty much self explaining - Keyboard.println(F("This message was sent with my Arduino.")); - Serial.println(F("Serial port is still working and not glitching out")); - - // simple debounce - delay(300); - digitalWrite(pinLed, LOW); - } -} - -/* -Definitions: - -#define KEY_PRINT 0xCE -#define KEY_NUM_LOCK 0xDB -#define KEY_SCROLL_LOCK 0xCF -#define KEY_PAUSE 0xD0 - -#define KEY_LEFT_CTRL 0x80 -#define KEY_LEFT_SHIFT 0x81 -#define KEY_LEFT_ALT 0x82 -#define KEY_LEFT_GUI 0x83 -#define KEY_LEFT_WINDOWS KEY_LEFT_GUI -#define KEY_RIGHT_CTRL 0x84 -#define KEY_RIGHT_SHIFT 0x85 -#define KEY_RIGHT_ALT 0x86 -#define KEY_RIGHT_GUI 0x87 -#define KEY_RIGHT_WINDOWS KEY_RIGHT_GUI - -#define KEY_UP_ARROW 0xDA -#define KEY_DOWN_ARROW 0xD9 -#define KEY_LEFT_ARROW 0xD8 -#define KEY_RIGHT_ARROW 0xD7 -#define KEY_BACKSPACE 0xB2 -#define KEY_TAB 0xB3 -#define KEY_RETURN 0xB0 -#define KEY_ESC 0xB1 -#define KEY_INSERT 0xD1 -#define KEY_DELETE 0xD4 -#define KEY_PAGE_UP 0xD3 -#define KEY_PAGE_DOWN 0xD6 -#define KEY_HOME 0xD2 -#define KEY_END 0xD5 -#define KEY_CAPS_LOCK 0xC1 -#define KEY_F1 0xC2 -#define KEY_F2 0xC3 -#define KEY_F3 0xC4 -#define KEY_F4 0xC5 -#define KEY_F5 0xC6 -#define KEY_F6 0xC7 -#define KEY_F7 0xC8 -#define KEY_F8 0xC9 -#define KEY_F9 0xCA -#define KEY_F10 0xCB -#define KEY_F11 0xCC -#define KEY_F12 0xCD - -#define LED_NUM_LOCK 0x01 -#define LED_CAPS_LOCK 0x02 -#define LED_SCROLL_LOCK 0x04 - */ diff --git a/examples/HelloWorld/HelloWorld.ino b/examples/HelloWorld/HelloWorld.ino index eaa964b..187908d 100644 --- a/examples/HelloWorld/HelloWorld.ino +++ b/examples/HelloWorld/HelloWorld.ino @@ -6,6 +6,7 @@ Press a button to write some text to your pc. See official and HID Project documentation for more information. + https://github.com/NicoHood/HID/wiki */ const int pinLed = LED_BUILTIN;