Почему костылей? Очень удобно для своих девайсов - для того и предназначено. Мало того, не надо "лишних" прослоек в виде драйверов CDC и пр. Мне например проще реализовать свой бинарный протокол пакетами фиксированного размера... Пакеты в bulk могуть быть сильно больше, чем стандартные 64 байт для HID (я не думаю что имеет смысл юзать hi speed usb в "своих" девайсах ;). Ну и есть программная поддержка в виде пары простейших функций в любом ведроиде - без всечеcких "рутований".