Mastering Hardware development is quite hard. Because, hardware is made each self. At moment, we can not find out any problem, if you are using not perfect stuffs. We should try step-by-step from complete stuff with small customizing/adding. This development style has been called frame-work. I'd like to apply this style for USB-development.
Basic sentense as board training, LED light-on and read switch to/from port of micro controller. Target board is either Optimize or IPI evaluation board.