fpi changed to usbi.
We should not expose structures with prefix "usb_" in the public
namespace as it is quite likely there will be some conflict somewhere.
Instead, using "libusb_" should be safer.
These are easiest to construct on the stack, but in the async case it is
likely that the submitting function returns (hence stack is destroyed)
before URB completion.