HID USB stack with both bootstrap and "normal" mod

Go To Last Post
3 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I see a lot of code and hardware for USB from AVRs (and others) for talking HID to a PC.

But what I'd like to have is a very small device that does both the boostrap protocol and the normal HID protocol (keyboard emulation). So the device can talk to the BIOS.

Or do the latest BIOSes not need/use the bootstrap protocol?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Shall I move this thread to the general AVR-forum, Steve ? General Electronics is not the most obvious choice for this question. It probably takes a Dean to answer it ;)

Nard

A GIF is worth a thousend words   They are called Rosa, Sylvia, Tricia, and Ulyana. You can find them https://www.linuxmint.com/

Dragon broken ? http://aplomb.nl/TechStuff/Dragon/Dragon.html for how-to-fix tips

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Boot protocol is the name given to the subset of the HID specification to allow the simple BIOSes to understand USB mice and keyboards. In essence they are just normal HID devices, except that in response to a special USB request they switch over to a well-defined report structure rather than their usual complex structures.

You can make a HID keyboard into a BIOS-friendly keyboard by setting the appropriate Class/Subclass/Protocol values in the device descriptors, and then implementing the SetProtocol and GetProtocol HID requests.

When plugged in, the BIOS looks for the correct Class/Subclass/Protocol of the device, and if it matches the "boot protocol" compatible values it issues a SetProtocol request to switch the device over to the known report structure and then just reads in reports via GetReport/SetReport requests as needed.

- Dean :twisted:

Make Atmel Studio better with my free extensions. Open source and feedback welcome!