continue USB discovery refactoring...