(As the title indicates, this is about the Arduino Leonardo Keyboard Library. I would have put it in another section of the forum, but the link in the Keyboard Reference sent me here.)
Good afternoon forum, so, I am trying to use an Arduino Micro to send keystrokes to the BIOS so that I can automate a "boot from USB-Stick" procedure without having to connect keyboard and screen. I am testing this in a text editor window, and the Micro is "typing" the things I want. I added a pushbutton to the Micro so that I can "start" the procedure with proper timings, the L13 feedback shows me that the software on the Micro is working well and timings are okay, but the BIOS does not recognize any key presses. The system (mainboard/BIOS) generally works with USB Keyboards. I have a USB-Keyboard connected which I can use for the BIOS, and I have also tried the Micro with my USB-Keyboard disconnected.
I suppose this is related to the various emulation modes that exist in this arcane part of PCs/BIOS. I have had it in the past with other keyboards and other BIOSes, that a USB Keyboard/or a Keyboard on an adapter would work well in the booted Operating System, but would act up/not be recognized in BIOS/early boot.
The same problem is described here on StackOverflow: https://stackoverflow.com/questions/12682429/generic-keyboard-emulation-using-arduino-leonardo but there is no solution/no accepted answer. I have also tried to set the deviceSubClass to 1 as suggested, but no change (still works in text editor, still not in BIOS).
Any helps/hints would be greatly appreciated, thanks for helping.
Reasons why I try/have to do it this way: - I do not want to boot from the USB Stick on every single boot. Only sometimes. So I cannot just leave the stick inserted and have the system boot order configured to the USB flashdrive. - As soon as I remove the USB Stick, it disappears from the Boot Device List, so I cannot have the system automatically boot from USB if present or continue to boot regular if not. - I cannot change the mainboard hardware, the BIOS or the BIOS version, so (U)EFI is not an option atm.