Ну, еще возьмите (к вопросу об ardiuno) макетную плату на STM32. Например STM32 Discovery. Например такую -
https://www.chipdip.ru/product/stm32f407g-disc1-2
Кстати, в демо-прошивке эмулирует USB-мышку с акселерометром.
Тут правда, желательно на добром С писать, хотя для аскетов можно и на ассемблере. Но с ассемблером USB-протокол вам навряд-ли разрулить...
Ну и информации по программированию полно -
easystm32.ru/stm32f4-discovery/41-otsenochnaya-pla... и у Dihalt -
we.easyelectronics.ru/blog/STM32/page3