Мне нужно написать usb-дескриптор и обработчик для составного hid-устройства (мышь+клавиатура+джойстик). МК - atmega32u4, для работы с usb пользуюсь библиотекой Lufa (за основу взял демо-проект KeyboardMouse).
Первая проблема, не смог добавить джойстик в демо-проект KeyboardMouse. Сначала попробовал добавить его по аналогии, но устройство вообще не определилось системой. Потом попробовал в этом же проекте заменить дескрипторы мыши на дескрипторы джойстика, устройство определилось системой как мышь+клавиатура, причем мышь с восклицательным знаком.
Подскажите, пожалуйста, что неправильно.
Вторая проблема, надо сделать вертикальный и горизонтальный скроллинг документов (текст, графика, чертежи...). Для вертикального скроллинга - Wheel, для горизонтальной - AC Pan. Правда, я хотел вместо Wheel использовать AC Scroll, потому что Wheel часто используется как зум, а не скроллинг. Нашел готовый дескриптор мыши с AC Pan, но там используется Feature. Как правильно добавить обработчик для Feature?
И третий момент, нужна связь устройства с настроечным ПО, то есть нужен еще один Feature и обработчик для него...
В прикрепленном файле: Joystick - оригинал; KeyboardMouse - попытка замены мыши на джойстик; kmj - попытка добавить джойстик к KeyboardMouse.
LowLevel.7z