Bypass bootloader at runtime

Hi All

So I want to use my Sparkfun Pro Micro as just a HID keyboard. When I plug it in to a new machine (with a sketch already loaded on it that types out the characters I require via Keyboard.send()) it first presents bootloader devices such that you might upload a new sketch.

Is there a hardware modification that I can make that will either bypass the bootloader, or instruct the bootloader to not confuse the USB host with these unnecessary devices?

I guess this is about whether I can easily 'shut the door' on the USB bootloader - I'm happy to use it to upload my sketches, but after that, I only want the keyboard device to appear (and so I just want my sketch to run!?). If it's the case that the bootloader initialises the HID keyboard, and there's no way that my sketch would be able to write to the HID keyboard if the bootloader doesn't run, then maybe there's a way I can add some code to initialise the keyboard device into my sketch?

I've done lots and lots of googling on this, and I've even ordered a new device that has a DFU bootloader that I can flash LUFA on without a programmer in order to make a USB keyboard - but I'd rather do it with Arduino if I can.



Here's something that might help:

Essentially, if you can burn a bootloader with something (either a dedicated programmer, or second Arduino as a programmer), you can burn your code to the same place.

(On reflection, now I'm thinking that you're talking about the USB detection. Maybe this: will be closer to what you're looking for?)