Can't seem to be able use Keyboard.h library

Is the Keyboard.h library installed by default because I can’t seem to be able to do #include <Keyboard.h> . I have looked in the libary manager but couldn’t seem to find it. Any help on this? I just get: fatal error: Keyboard.h: No such file or directory

Keyboard.h (and Mouse.h) only works on devices that use the ATmega32u4 processor, like the Leonardo or Micro. See: https://www.arduino.cc/en/Reference/MouseKeyboard

Hello John, I have a Micro and everything set right. Strange, the “Library Manager” function shows “No Internet connection available…” allthough I´m writing online into the forum at the moment!? It took me hours searching, but just can´t find a “Keyboard.h zip”. Please help! Thanks kindly! Marc

Keyboard.h is built into the IDE. It is not a library you install.

I have an Arduino UNO R3, I can not load the keyboard.h to my project, it always sends me the following error message:

Arduino: 1.6.6 (Windows 10), Board: “Arduino/Genuino Uno”

C:\Arduino\arduino-builder -dump-prefs -logger=machine -hardware “C:\Arduino\hardware” -tools “C:\Arduino\tools-builder” -tools “C:\Arduino\hardware\tools\avr” -built-in-libraries “C:\Arduino\libraries” -libraries “C:\Users\Victor\Documents\Arduino\libraries” -fqbn=arduino:avr:uno -vid-pid=0X2341_0X0043 -ide-version=10606 -build-path “C:\Users\Victor\AppData\Local\Temp\buildc91e32a93a246a972775d9116ad73694.tmp” -warnings=none -prefs=build.warn_data_percentage=75 -verbose “C:\Users\Victor\Documents\Arduino\SplitButton\SplitButton.ino”
C:\Arduino\arduino-builder -compile -logger=machine -hardware “C:\Arduino\hardware” -tools “C:\Arduino\tools-builder” -tools “C:\Arduino\hardware\tools\avr” -built-in-libraries “C:\Arduino\libraries” -libraries “C:\Users\Victor\Documents\Arduino\libraries” -fqbn=arduino:avr:uno -vid-pid=0X2341_0X0043 -ide-version=10606 -build-path “C:\Users\Victor\AppData\Local\Temp\buildc91e32a93a246a972775d9116ad73694.tmp” -warnings=none -prefs=build.warn_data_percentage=75 -verbose “C:\Users\Victor\Documents\Arduino\SplitButton\SplitButton.ino”
“C:\Arduino\hardware\tools\avr/bin/avr-g++” -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -w -x c++ -M -MG -MP -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10606 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR “-IC:\Arduino\hardware\arduino\avr\cores\arduino” “-IC:\Arduino\hardware\arduino\avr\variants\standard” “C:\Users\Victor\AppData\Local\Temp\buildc91e32a93a246a972775d9116ad73694.tmp\sketch\SplitButton.ino.cpp”
“C:\Arduino\hardware\tools\avr/bin/avr-g++” -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -w -x c++ -M -MG -MP -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10606 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR “-IC:\Arduino\hardware\arduino\avr\cores\arduino” “-IC:\Arduino\hardware\arduino\avr\variants\standard” “-IC:\Arduino\libraries\Keyboard\src” “-IC:\Arduino\hardware\arduino\avr\libraries\HID” “C:\Users\Victor\AppData\Local\Temp\buildc91e32a93a246a972775d9116ad73694.tmp\sketch\SplitButton.ino.cpp”
“C:\Arduino\hardware\tools\avr/bin/avr-g++” -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -w -x c++ -M -MG -MP -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10606 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR “-IC:\Arduino\hardware\arduino\avr\cores\arduino” “-IC:\Arduino\hardware\arduino\avr\variants\standard” “-IC:\Arduino\libraries\Keyboard\src” “-IC:\Arduino\hardware\arduino\avr\libraries\HID” “C:\Users\Victor\AppData\Local\Temp\buildc91e32a93a246a972775d9116ad73694.tmp\sketch\SplitButton.ino.cpp”
“C:\Arduino\hardware\tools\avr/bin/avr-g++” -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -w -x c++ -M -MG -MP -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10606 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR “-IC:\Arduino\hardware\arduino\avr\cores\arduino” “-IC:\Arduino\hardware\arduino\avr\variants\standard” “-IC:\Arduino\libraries\Keyboard\src” “-IC:\Arduino\hardware\arduino\avr\libraries\HID” “C:\Users\Victor\AppData\Local\Temp\buildc91e32a93a246a972775d9116ad73694.tmp\sketch\SplitButton.ino.cpp”
“C:\Arduino\hardware\tools\avr/bin/avr-g++” -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -w -x c++ -M -MG -MP -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10606 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR “-IC:\Arduino\hardware\arduino\avr\cores\arduino” “-IC:\Arduino\hardware\arduino\avr\variants\standard” “-IC:\Arduino\hardware\arduino\avr\libraries\HID” “-IC:\Arduino\libraries\Keyboard\src” “C:\Arduino\libraries\Keyboard\src\Keyboard.cpp”
“C:\Arduino\hardware\tools\avr/bin/avr-g++” -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -w -x c++ -M -MG -MP -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10606 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR “-IC:\Arduino\hardware\arduino\avr\cores\arduino” “-IC:\Arduino\hardware\arduino\avr\variants\standard” “-IC:\Arduino\libraries\Keyboard\src” “-IC:\Arduino\hardware\arduino\avr\libraries\HID” “C:\Arduino\hardware\arduino\avr\libraries\HID\HID.cpp”
“C:\Arduino\hardware\tools\avr/bin/avr-g++” -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -w -x c++ -M -MG -MP -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10606 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR “-IC:\Arduino\hardware\arduino\avr\cores\arduino” “-IC:\Arduino\hardware\arduino\avr\variants\standard” “-IC:\Arduino\libraries\Keyboard\src” “-IC:\Arduino\hardware\arduino\avr\libraries\HID” “C:\Users\Victor\AppData\Local\Temp\buildc91e32a93a246a972775d9116ad73694.tmp\sketch\SplitButton.ino.cpp”
“C:\Arduino\hardware\tools\avr/bin/avr-g++” -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -w -x c++ -M -MG -MP -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10606 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR “-IC:\Arduino\hardware\arduino\avr\cores\arduino” “-IC:\Arduino\hardware\arduino\avr\variants\standard” “-IC:\Arduino\libraries\Keyboard\src” “-IC:\Arduino\hardware\arduino\avr\libraries\HID” “C:\Users\Victor\AppData\Local\Temp\buildc91e32a93a246a972775d9116ad73694.tmp\sketch\src_micro-api\libraries\Keyboard\src\Keyboard.cpp”
“C:\Arduino\hardware\tools\avr/bin/avr-g++” -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10606 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR “-IC:\Arduino\hardware\arduino\avr\cores\arduino” “-IC:\Arduino\hardware\arduino\avr\variants\standard” “-IC:\Arduino\libraries\Keyboard\src” “-IC:\Arduino\hardware\arduino\avr\libraries\HID” “C:\Users\Victor\AppData\Local\Temp\buildc91e32a93a246a972775d9116ad73694.tmp\sketch\SplitButton.ino.cpp”
“C:\Arduino\tools-builder\ctags\5.8-arduino2/ctags” -u --language-force=c++ -f - --c+±kinds=svpf --fields=KSTtzns “C:\Users\Victor\AppData\Local\Temp\buildc91e32a93a246a972775d9116ad73694.tmp\preproc\ctags_target.cpp”
“C:\Arduino\tools-builder\ctags\5.8-arduino2/ctags” -u --language-force=c++ -f - --c+±kinds=svpf --fields=KSTtzns “C:\Users\Victor\AppData\Local\Temp\buildc91e32a93a246a972775d9116ad73694.tmp\preproc\ctags_target.cpp”
“C:\Arduino\hardware\tools\avr/bin/avr-g++” -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10606 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR “-IC:\Arduino\hardware\arduino\avr\cores\arduino” “-IC:\Arduino\hardware\arduino\avr\variants\standard” “-IC:\Arduino\libraries\Keyboard\src” “-IC:\Arduino\hardware\arduino\avr\libraries\HID” “C:\Users\Victor\AppData\Local\Temp\buildc91e32a93a246a972775d9116ad73694.tmp\sketch\SplitButton.ino.cpp” -o “C:\Users\Victor\AppData\Local\Temp\buildc91e32a93a246a972775d9116ad73694.tmp\sketch\SplitButton.ino.cpp.o”
C:\Users\Victor\Documents\Arduino\SplitButton\SplitButton.ino: In function ‘void setup()’:

SplitButton:17: error: ‘Keyboard’ not found. Does your sketch include the line ‘#include <Keyboard.h>’?
Keyboard.begin();

^

C:\Users\Victor\Documents\Arduino\SplitButton\SplitButton.ino: In function ‘void loop()’:

SplitButton:29: error: ‘Keyboard’ not found. Does your sketch include the line ‘#include <Keyboard.h>’?
Keyboard.print("You pressed the button ");

^

Using library Keyboard at version 1.0.0 in folder: C:\Arduino\libraries\Keyboard
Using library HID at version 1.0 in folder: C:\Arduino\hardware\arduino\avr\libraries\HID
exit status 1
‘Keyboard’ not found. Does your sketch include the line ‘#include <Keyboard.h>’?

and the proyect all ready have the ‘#include <Keyboard.h>’

I’m ussing the following code:
#include <Keyboard.h>
#include <HID.h>

// constants won’t change. They’re used here to
// set pin numbers:
const int buttonPin = 2; // the number of the pushbutton pin
const int ledPin = 13; // the number of the LED pin

// variables will change:
int buttonState = 0; // variable for reading the pushbutton status

void setup() {
// initialize the LED pin as an output:
pinMode(ledPin, OUTPUT);
// initialize the pushbutton pin as an input:
pinMode(buttonPin, INPUT);
Keyboard.begin();
}

void loop() {
// read the state of the pushbutton value:
buttonState = digitalRead(buttonPin);

// check if the pushbutton is pressed.
// if it is, the buttonState is HIGH:
if (buttonState == HIGH) {
// turn LED on:
digitalWrite(ledPin, HIGH);
Keyboard.print("You pressed the button ");
}
else {
// turn LED off:
digitalWrite(ledPin, LOW);
}
}

I am currently having the same problem with an Arduino/Genuino Micro. I have used this specific board with the HID keyboard interface about a year or so ago without any problems, and now it doesn’t work.

I’m using Arduino IDE v1.6.13

USB_NeXT_Keyboard:256: error: 'Keyboard' not found. Does your sketch include the line '#include <Keyboard.h>'?
         Keyboard.press(code);

Hi,
Welcome to the forum.

Can you please post a copy of your sketch, using code tags?
They are made with the </> icon in the reply Menu.
See section 7 http://forum.arduino.cc/index.php/topic,148850.0.html

I think you will find the library only works for the Leonardo

https://www.arduino.cc/en/Main/ArduinoBoardLeonardo

Thanks… Tom… :slight_smile:

I had the same problem using Flora

This worked for me:

  1. Tools > Boards > Boards Manager
  2. Install TeeOnArdu (Then select that board from Boards Manager)
  3. Tools > USB Type > Serial, Keyboard, Mouse < Joypad
  4. Upload and run code again (might need to restart IDE)

Good luck!