/* Keyboard Controller HID Example Shows the output of a USB Keyboard connected to the USB controller of an Arduino Due Board. created 8 Oct 2012 by Cristian Maglie */ // Require keyboard control library #include // Initialize USB Controller USBHost usb; // Attach keyboard controller to USB KeyboardController keyboard(usb); // This function intercepts key press void keyPressed() { Serial.print("Pressed: "); printKey(); } // This function intercepts key release void keyReleased() { Serial.print("Released: "); printKey(); } void printKey() { // getOemKey() returns the OEM-code associated with the key Serial.print(" key:"); Serial.print(keyboard.getOemKey()); // getModifiers() returns a bits field with the modifiers-keys int mod = keyboard.getModifiers(); Serial.print(" mod:"); Serial.print(mod); Serial.print(" => "); if (mod & LeftCtrl) Serial.print("L-Ctrl "); if (mod & LeftShift) Serial.print("L-Shift "); if (mod & Alt) Serial.print("Alt "); if (mod & LeftCmd) Serial.print("L-Cmd "); if (mod & RightCtrl) Serial.print("R-Ctrl "); if (mod & RightShift) Serial.print("R-Shift "); if (mod & AltGr) Serial.print("AltGr "); if (mod & RightCmd) Serial.print("R-Cmd "); // getKey() returns the ASCII translation of OEM key // combined with modifiers. Serial.write(keyboard.getKey()); Serial.println(); } void setup() { Serial.begin(115200); Serial.println("Program started"); delay(200); } void loop() { // Process USB tasks usb.Task(); }